On Sun, Feb 20, 2022 at 04:23:50AM +0000, Matthew Wilcox wrote: > On Fri, Feb 18, 2022 at 11:35:10PM -0800, Christoph Hellwig wrote: > > Err, hell no. Please do not add any new functionality to the legacy > > buffer head code. If you want new features do that on the > > non-bufferhead iomap code path only please. > > I think "first convert the block device code from buffer_heads to iomap" > might be a bit much of a prerequisite. I think running ext4 on top of a > block device still requires buffer_heads, for example (I tried to convert > the block device to use mpage in order to avoid creating buffer_heads > when possible, and ext4 stopped working. I didn't try too hard to debug > it as it was a bit of a distraction at the time). Oh, I did not spot the users here is the block device. Which is really weird, why would anyone do buffered writes to a block devices? Doing so is a bit of a data integrity nightmare. Can we please develop this feature for iomap based file systems first, and if by then a use case for block devices arises I'll see what we can do there. I've been planning to get the block device code to stop using buffer_heads by default, but taking them into account if used by a legacy buffer_head user anyway.