Re: [PATCH v3] mm: use swp_offset as key in shmem_replace_page()

From: Andrew Morton
Date: Thu Nov 22 2018 - 00:02:04 EST


On Wed, 21 Nov 2018 14:54:42 -0700 Yu Zhao <yuzhao@xxxxxxxxxx> wrote:

> We changed key of swap cache tree from swp_entry_t.val to
> swp_offset. Need to do so in shmem_replace_page() as well.

What are the user-visible effects of this change?

> Fixes: f6ab1f7f6b2d ("mm, swap: use offset of swap entry as key of swap cache")
> Cc: stable@xxxxxxxxxxxxxxx # v4.9+

Please always provide the user-impact information when fixing bugs. This
becomes especially important when proposing -stable backporting.

Hugh said

: shmem_replace_page() has been wrong since the day I wrote it: good
: enough to work on swap "type" 0, which is all most people ever use
: (especially those few who need shmem_replace_page() at all), but broken
: once there are any non-0 swp_type bits set in the higher order bits.

but we still don't have a description of "broken".

Thanks.