fs/bcachefs/inode.c | 1 + 1 file changed, 1 insertion(+)
When there is no inode source, all "from_inode" members in the structure
bhc_io_opts should be set false.
Fixes: 7a7c43a0c1ecf ("bcachefs: Add bch_io_opts fields for indicating whether the opts came from the inode")
Reported-by: syzbot+c17ad4b4367b72a853cb@syzkaller.appspotmail.com
Closes: https://syzkaller.appspot.com/bug?extid=c17ad4b4367b72a853cb
Signed-off-by: Roxana Nicolescu <nicolescu.roxana@protonmail.com>
---
fs/bcachefs/inode.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/fs/bcachefs/inode.c b/fs/bcachefs/inode.c
index 04ec05206f8c..339b80770f1d 100644
--- a/fs/bcachefs/inode.c
+++ b/fs/bcachefs/inode.c
@@ -1198,6 +1198,7 @@ void bch2_inode_opts_get(struct bch_io_opts *opts, struct bch_fs *c,
opts->_name##_from_inode = true; \
} else { \
opts->_name = c->opts._name; \
+ opts->_name##_from_inode = false; \
}
BCH_INODE_OPTS()
#undef x
--
2.34.1
On Tue, Mar 11, 2025 at 03:06:10PM +0000, Roxana Nicolescu wrote:
> When there is no inode source, all "from_inode" members in the structure
> bhc_io_opts should be set false.
>
> Fixes: 7a7c43a0c1ecf ("bcachefs: Add bch_io_opts fields for indicating whether the opts came from the inode")
> Reported-by: syzbot+c17ad4b4367b72a853cb@syzkaller.appspotmail.com
> Closes: https://syzkaller.appspot.com/bug?extid=c17ad4b4367b72a853cb
> Signed-off-by: Roxana Nicolescu <nicolescu.roxana@protonmail.com>
Indeed, we're not zero initializing opts prior to passing it in -
applied, thanks.
> ---
> fs/bcachefs/inode.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/fs/bcachefs/inode.c b/fs/bcachefs/inode.c
> index 04ec05206f8c..339b80770f1d 100644
> --- a/fs/bcachefs/inode.c
> +++ b/fs/bcachefs/inode.c
> @@ -1198,6 +1198,7 @@ void bch2_inode_opts_get(struct bch_io_opts *opts, struct bch_fs *c,
> opts->_name##_from_inode = true; \
> } else { \
> opts->_name = c->opts._name; \
> + opts->_name##_from_inode = false; \
> }
> BCH_INODE_OPTS()
> #undef x
> --
> 2.34.1
>
>
© 2016 - 2025 Red Hat, Inc.