Re: [PATCH 2/2] fs: Move swap_[de]activate to file_operations

From: Jan Kara
Date: Tue Nov 12 2019 - 08:31:00 EST


On Mon 11-11-19 22:55:07, Christoph Hellwig wrote:
> On Mon, Nov 11, 2019 at 04:34:52PM -0800, ira.weiny@xxxxxxxxx wrote:
> > From: Ira Weiny <ira.weiny@xxxxxxxxx>
> >
> > swap_activate() and swap_deactivate() have nothing to do with
> > address spaces. We want to eventually make the address space operations
> > dynamic to switch inode flags on the fly. So to simplify this code as
> > well as properly track these operations we move these functions to the
> > file_operations vector.
>
> What is the point? If we switch aops for DAX vs not we might as well
> switch file operations as well, as they pretty much are entirely
> different.

Ira is trying to make switching of inodes between DAX and non-DAX mode
work. Currently, we have different address_space_operations for DAX vs
non-DAX and that makes sense because operation for address_space is vastly
different for DAX compared to page cache. But switching of aops is
difficult to do reliably so I've suggested to move functions that don't
make too much sense in aops out to simplify the picture.

Currently file_operations are the same (both on XFS and ext4) for DAX and
non-DAX case so we don't need to switch them. And although I agree that for
some operations split may make sense, I think most of the operations would
be actually the same for DAX vs non-DAX case so I don't see a point in
separating file_operations for DAX vs non-DAX case.

Honza
--
Jan Kara <jack@xxxxxxxx>
SUSE Labs, CR