forked from Minki/linux
btrfs: submit superblock io with REQ_META and REQ_PRIO
The superblock is also metadata of the filesystem so the relevant IO should be tagged as such. We also tag it as high priority, as it's the last block committed for metadata from a given transaction. Any delays would effectively block the whole transaction, also blocking any other operation holding the device_list_mutex. Reviewed-by: Josef Bacik <jbacik@fb.com> Reviewed-by: Liu Bo <bo.li.liu@oracle.com> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
dc59215d4f
commit
db95c876c5
@ -3433,9 +3433,10 @@ static int write_dev_supers(struct btrfs_device *device,
|
||||
*/
|
||||
if (i == 0) {
|
||||
ret = btrfsic_submit_bh(REQ_OP_WRITE,
|
||||
REQ_SYNC | REQ_FUA, bh);
|
||||
REQ_SYNC | REQ_FUA | REQ_META | REQ_PRIO, bh);
|
||||
} else {
|
||||
ret = btrfsic_submit_bh(REQ_OP_WRITE, REQ_SYNC, bh);
|
||||
ret = btrfsic_submit_bh(REQ_OP_WRITE,
|
||||
REQ_SYNC | REQ_META | REQ_PRIO, bh);
|
||||
}
|
||||
if (ret)
|
||||
errors++;
|
||||
|
Loading…
Reference in New Issue
Block a user