Re: [Patch v2 07/42] btrfs: pass btrfs_inode into btrfs_writepage_endio_finish_ordered()
From: David Sterba <hidden>
Date: 2021-05-21 20:24:46
On Fri, May 21, 2021 at 10:27:08AM -0400, Josef Bacik wrote:
On 4/27/21 7:03 PM, Qu Wenruo wrote:quoted
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,
The single patch can't be removed due to dependencies, so I'll put the whole series to a topic branch again so misc-next works.