diff options
author | Kent Overstreet <kent.overstreet@linux.dev> | 2024-10-19 17:50:41 -0400 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@linux.dev> | 2024-10-20 16:50:14 -0400 |
commit | 3956ff8bc2f39a7e77d7a6da8d95c7ffc4928d64 (patch) | |
tree | a3073ac4a4a818aec7f0afa9afa65431f80d432d /fs/bcachefs/fs-io.c | |
parent | eb5db64c4570948e6ee0b0f53d658e136e06cd04 (diff) | |
download | lwn-3956ff8bc2f39a7e77d7a6da8d95c7ffc4928d64.tar.gz lwn-3956ff8bc2f39a7e77d7a6da8d95c7ffc4928d64.zip |
bcachefs: Don't use wait_event_interruptible() in recovery
Fix a bug where mount was failing with -ERESTARTSYS:
https://github.com/koverstreet/bcachefs/issues/741
We only want the interruptible wait when called from fsync.
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
Diffstat (limited to 'fs/bcachefs/fs-io.c')
-rw-r--r-- | fs/bcachefs/fs-io.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/bcachefs/fs-io.c b/fs/bcachefs/fs-io.c index 71d0fa387509..15d3f073b824 100644 --- a/fs/bcachefs/fs-io.c +++ b/fs/bcachefs/fs-io.c @@ -182,7 +182,7 @@ static int bch2_flush_inode(struct bch_fs *c, struct bch_inode_unpacked u; int ret = bch2_inode_find_by_inum(c, inode_inum(inode), &u) ?: - bch2_journal_flush_seq(&c->journal, u.bi_journal_seq) ?: + bch2_journal_flush_seq(&c->journal, u.bi_journal_seq, TASK_INTERRUPTIBLE) ?: bch2_inode_flush_nocow_writes(c, inode); bch2_write_ref_put(c, BCH_WRITE_REF_fsync); return ret; |