mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* Re: #syz test: bcache: Fix device removal failure when filesystem is read-only
       [not found] <20250412180235.244744-1-gshahrouzi@gmail.com>
@ 2025-04-12 18:02 ` syzbot
  0 siblings, 0 replies; only message in thread
From: syzbot @ 2025-04-12 18:02 UTC (permalink / raw)
  To: gshahrouzi; +Cc: gshahrouzi, linux-kernel, syzkaller-bugs

> Try to remove device but fails
> Reinitialize reference counting for write operations for device
> Shut down the filesystem
> Make the filesystem read only
> 	Read-write bit is not set so it skips trying to make the filesystem read-only, implying that the filesystem is already in read-only mode.
> Encounter error because write operations are still assigned to a device
> When the filesystem is starting up, it tries setting it to set the filesystem to read-only but it’s already set.
> When failing to remove a device, it tries giving back write permissions to a device when the filesystem is read-only (not sure if this is nonsensical or not).
> Since a device has write permissions, it tries to remove them but fails because the filesystem is in read-only mode.
> So the fix here is to prevent it from giving the device write permissions if the filesystem is in read-only mode.
>
> Signed-off-by: Gabriel Shahrouzi <gshahrouzi@gmail.com>
> ---
>  fs/bcachefs/super.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/fs/bcachefs/super.c b/fs/bcachefs/super.c
> index b79e80a435e09..788e870bfef6a 100644
> --- a/fs/bcachefs/super.c
> +++ b/fs/bcachefs/super.c
> @@ -1757,7 +1757,8 @@ int bch2_dev_remove(struct bch_fs *c, struct bch_dev *ca, int flags)
>  	up_write(&c->state_lock);
>  	return 0;
>  err:
> -	if (ca->mi.state == BCH_MEMBER_STATE_rw &&
> +	if (test_bit(BCH_FS_rw, &c->flags) &&
> +	    ca->mi.state == BCH_MEMBER_STATE_rw &&
>  	    !percpu_ref_is_zero(&ca->io_ref[READ]))
>  		__bch2_dev_read_write(c, ca);
>  	up_write(&c->state_lock);
> -- 
> 2.43.0
>

want either no args or 2 args (repo, branch), got 9


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2025-04-12 18:02 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <20250412180235.244744-1-gshahrouzi@gmail.com>
2025-04-12 18:02 ` #syz test: bcache: Fix device removal failure when filesystem is read-only syzbot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

Powered by JetHome