Re: [syzbot] [btrfs?] kernel BUG in btrfs_free_fs_info

From: David Sterba
Date: Tue Jul 30 2024 - 10:50:00 EST


On Wed, May 29, 2024 at 08:24:32AM -0700, syzbot wrote:
> Hello,
>
> syzbot found the following issue on:
>
> HEAD commit: 56fb6f92854f Merge tag 'drm-next-2024-05-25' of https://gi..
> git tree: upstream
> console output: https://syzkaller.appspot.com/x/log.txt?x=15874672980000
> kernel config: https://syzkaller.appspot.com/x/.config?x=2b8d1faad9ceb620
> dashboard link: https://syzkaller.appspot.com/bug?extid=2f3cc5860d147a83eb3d
> compiler: gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40
> userspace arch: i386
>
> Unfortunately, I don't have any reproducer for this issue yet.

Most likely this was a side effect of bug fixed by commit f3a5367c679d
("btrfs: protect folio::private when attaching extent buffer folios").
There are only two syzbot report and the timeframe corresponds with
increased number of bogus errors caused by use-after-free of a page.

The fix is best guess.

#syz fix: btrfs: protect folio::private when attaching extent buffer folios

> assertion failed: percpu_counter_sum_positive(em_counter) == 0, in fs/btrfs/disk-io.c:1274

Could be a valid bug, eg. some structures leaked but the circumstances
point more towards the page reuse.