Re: [Patch v2 07/42] btrfs: pass btrfs_inode into btrfs_writepage_endio_finish_ordered()
From: Josef Bacik <josef@toxicpanda.com>
Date: 2021-05-21 14:27:14
On 4/27/21 7:03 PM, Qu Wenruo wrote:
There is a pretty bad abuse of btrfs_writepage_endio_finish_ordered() in end_compressed_bio_write(). It passes compressed pages to btrfs_writepage_endio_finish_ordered(), which is only supposed to accept inode pages. Thankfully the important info here is the inode, so let's pass btrfs_inode directly into btrfs_writepage_endio_finish_ordered(), and make @page parameter optional. By this, end_compressed_bio_write() can happily pass page=NULL while still get everything done properly. Also, to cooperate with such modification, replace @page parameter for trace_btrfs_writepage_end_io_hook() with btrfs_inode. Although this removes page_index info, the existing start/len should be enough for most usage. Signed-off-by: Qu Wenruo <redacted>
This was merged into misc-next yesterday it looks like, and it's caused both of my VM's that do compression variations to panic on different tests, one on btrfs/011 and one on btrfs/027. I bisected it to this patch, I'm not sure what's wrong with it but it needs to be dropped from misc-next until it gets fixed otherwise it'll keep killing the overnight xfstests runs. Thanks, Josef