diff options
author | Kent Overstreet <kent.overstreet@gmail.com> | 2022-06-18 19:55:32 -0400 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@linux.dev> | 2023-10-22 17:09:34 -0400 |
commit | a3d7afa5c1b62140168982747fd15c1999d991f4 (patch) | |
tree | d1bd1ea4f390c17225ff423a5ef99450f8e177a3 /fs/bcachefs/fs-io.c | |
parent | 23189da9eb6b34fc1ceb077edb32e308d0ad6760 (diff) | |
download | lwn-a3d7afa5c1b62140168982747fd15c1999d991f4.tar.gz lwn-a3d7afa5c1b62140168982747fd15c1999d991f4.zip |
bcachefs: Always use percpu_ref_tryget_live() on c->writes
If we're trying to get a ref and the refcount has been killed, it means
we're doing an emergency shutdown - we always want tryget_live().
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
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 ad51483ad764..c0dda29dabb4 100644 --- a/fs/bcachefs/fs-io.c +++ b/fs/bcachefs/fs-io.c @@ -3105,7 +3105,7 @@ long bch2_fallocate_dispatch(struct file *file, int mode, struct bch_fs *c = inode->v.i_sb->s_fs_info; long ret; - if (!percpu_ref_tryget(&c->writes)) + if (!percpu_ref_tryget_live(&c->writes)) return -EROFS; inode_lock(&inode->v); |