[LU-15588] osd_trans_stop() misses th_sync flag set in top thandle Created: 23/Feb/22 Updated: 22/Mar/22 |
|
| Status: | Open |
| Project: | Lustre |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Bug | Priority: | Minor |
| Reporter: | Vladimir Saveliev | Assignee: | Vladimir Saveliev |
| Resolution: | Unresolved | Votes: | 0 |
| Labels: | None | ||
| Issue Links: |
|
||||||||
| Severity: | 3 | ||||||||
| Rank (Obsolete): | 9223372036854775807 | ||||||||
| Description |
|
exp_need_sync flag of obd_export is supposed to provide blocking of 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. |
| Comments |
| Comment by Gerrit Updater [ 23/Feb/22 ] |
|
"Vladimir Saveliev <vlaidimir.saveliev@hpe.com>" uploaded a new patch: https://review.whamcloud.com/46596 |