Skip to content

block: reject block device inodes with i_rdev == 0 in lookup_bdev()#1027

Open
blktests-ci[bot] wants to merge 1 commit into
linus-master_basefrom
series/1120933=>linus-master
Open

block: reject block device inodes with i_rdev == 0 in lookup_bdev()#1027
blktests-ci[bot] wants to merge 1 commit into
linus-master_basefrom
series/1120933=>linus-master

Conversation

@blktests-ci

@blktests-ci blktests-ci Bot commented Jul 3, 2026

Copy link
Copy Markdown

Pull request for series with
subject: block: reject block device inodes with i_rdev == 0 in lookup_bdev()
version: 1
url: https://patchwork.kernel.org/project/linux-block/list/?series=1120933

lookup_bdev() blindly returns inode->i_rdev without validating it.
When a FUSE filesystem exposes a root inode with S_IFBLK mode but
i_rdev == 0 (via rootmode=060000), any subsequent mount attempt using
that path as a block device source propagates dev_t 0 into the
superblock machinery.  After commit 9ee5f161a4db ("fs: maintain a
global device-to-superblock table") this triggers a WARNING in
super_dev_register().

Reject i_rdev == 0 early with -ENODEV since no real block device
driver registers major 0.

Reported-by: syzbot+72fe3ea5814121fbc76e@syzkaller.appspotmail.com
Closes: https://syzkaller.appspot.com/bug?extid=72fe3ea5814121fbc76e
Signed-off-by: Yun Zhou <yun.zhou@windriver.com>
@blktests-ci

blktests-ci Bot commented Jul 3, 2026

Copy link
Copy Markdown
Author

Upstream branch: 87320be
series: https://patchwork.kernel.org/project/linux-block/list/?series=1120933
version: 1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant