Re: [PATCH 1/1] net/rds: Track user mapped pages through special API

From: santosh . shilimkar
Date: Wed Feb 12 2020 - 12:55:19 EST


On 2/12/20 9:51 AM, Leon Romanovsky wrote:
On Wed, Feb 12, 2020 at 09:31:51AM -0800, santosh.shilimkar@xxxxxxxxxx wrote:
On 2/11/20 7:03 PM, John Hubbard wrote:
From: Leon Romanovsky <leonro@xxxxxxxxxxxx>

Convert net/rds to use the newly introduces pin_user_pages() API,
which properly sets FOLL_PIN. Setting FOLL_PIN is now required for
code that requires tracking of pinned pages.

Note that this effectively changes the code's behavior: it now
ultimately calls set_page_dirty_lock(), instead of set_page_dirty().
This is probably more accurate.

As Christoph Hellwig put it, "set_page_dirty() is only safe if we are
dealing with a file backed page where we have reference on the inode it
hangs off." [1]

[1] https://urldefense.com/v3/__https://lore.kernel.org/r/20190723153640.GB720@xxxxxxxx;!!GqivPVa7Brio!OJHuecs9Iup5ig3kQBi_423uMMuskWhBQAdOICrY3UQ_ZfEaxt9ySY7E8y32Q7pk5tByyA$

Cc: Hans Westgaard Ry <hans.westgaard.ry@xxxxxxxxxx>
Cc: Santosh Shilimkar <santosh.shilimkar@xxxxxxxxxx>
Signed-off-by: Leon Romanovsky <leonro@xxxxxxxxxxxx>
Signed-off-by: John Hubbard <jhubbard@xxxxxxxxxx>
---
Change looks fine to me. Just on safer side, we will try
to test this change with regression suite to make sure it
works as expected.

Thanks Santosh,
I wrote this patch before John's series was merged into the tree,
but back then, Hans tested it and it worked, hope that it still works. :)

I see. Wasn't aware of it. In that case, its should be fine.

Regards,
Santosh