On Mon, Apr 26, 2021 at 10:06:24PM +0100, David Howells wrote:
> @@ -968,7 +968,7 @@ int netfs_readpage(struct file *file,
>               return -ENOMEM;
>       }
>       rreq->mapping   = page_file_mapping(page);
> -     rreq->start     = page_index(page) * PAGE_SIZE;
> +     rreq->start     = page_offset(page);

This one needs to use page_file_offset() because swap-over-NFS.

> @@ -1105,8 +1105,8 @@ int netfs_write_begin(struct file *file, struct 
> address_space *mapping,
>       rreq = netfs_alloc_read_request(ops, netfs_priv, file);
>       if (!rreq)
>               goto error;
> -     rreq->mapping           = page->mapping;
> -     rreq->start             = page->index * PAGE_SIZE;
> +     rreq->mapping           = page_file_mapping(page);

There's nothing wrong with using page->mapping here.  The swap-over-NFS
path doesn't use write_begin, it uses O_DIRECT writes.

--
Linux-cachefs mailing list
Linux-cachefs@redhat.com
https://listman.redhat.com/mailman/listinfo/linux-cachefs

Reply via email to