Uploaded image for project: 'Lustre'
  1. Lustre
  2. LU-15588

osd_trans_stop() misses th_sync flag set in top thandle

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • Minor
    • None
    • None
    • None
    • 3
    • 9223372036854775807

    Description

      exp_need_sync flag of obd_export is supposed to provide blocking of
      modifying rpc processing until mount's update to last_rcvd is
      committed.

      It does not do so for mdt:

      osd_trans_stop() {
          ...
          dt_txn_hook_stop(, struct thandle *th) {
              if (th->th_top != NULL)
                  dtc_th = th->th_top;
              cb->dtc_txn_stop(dtc_th); /* th_sync of top thandle gets set in tgt_last_rcvd_update called below */
          }
      
          hdl->h_sync = th->th_sync; /* th_sync is taken from sub thandle */
      }
      

      As result, ldiskfs_journal_stop() does not do commit.

      Attachments

        Issue Links

          Activity

            People

              vsaveliev Vladimir Saveliev
              vsaveliev Vladimir Saveliev
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated: