bcachefs: Fix excess transaction restarts in __bchfs_fallocate()
drop_locks_do() should not be used in a fastpath without first trying
the do in nonblocking mode - the unlock and relock will cause excessive
transaction restarts and potentially livelocking with other threads that
are contending for the same locks.
Signed-off-by:
Kent Overstreet <kent.overstreet@linux.dev>
Showing
- fs/bcachefs/btree_iter.h 5 additions, 0 deletionsfs/bcachefs/btree_iter.h
- fs/bcachefs/fs-io-pagecache.c 24 additions, 13 deletionsfs/bcachefs/fs-io-pagecache.c
- fs/bcachefs/fs-io-pagecache.h 1 addition, 1 deletionfs/bcachefs/fs-io-pagecache.h
- fs/bcachefs/fs-io.c 5 additions, 2 deletionsfs/bcachefs/fs-io.c
Loading
Please register or sign in to comment