On 10/17/25 22:11, Ackerley Tng wrote:
> guest_memfd folios don't care about accessed flags since the memory is
> unevictable and there is no storage to write back to, hence, cleanup the
> allocation path by not setting FGP_ACCESSED.
>
> Signed-off-by: Ackerley Tng <ackerleytng@google.com>
> [sean: split to separate patch, write changelog]
> Signed-off-by: Sean Christopherson <seanjc@google.com>
Acked-by: Vlastimil Babka <vbabka@suse.cz>
> ---
> virt/kvm/guest_memfd.c | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/virt/kvm/guest_memfd.c b/virt/kvm/guest_memfd.c
> index 855e682041311..2a9e9220a48aa 100644
> --- a/virt/kvm/guest_memfd.c
> +++ b/virt/kvm/guest_memfd.c
> @@ -167,14 +167,13 @@ static struct folio *kvm_gmem_get_folio(struct inode *inode, pgoff_t index)
> * Fast-path: See if folio is already present in mapping to avoid
> * policy_lookup.
> */
> - folio = __filemap_get_folio(inode->i_mapping, index,
> - FGP_LOCK | FGP_ACCESSED, 0);
> + folio = filemap_lock_folio(inode->i_mapping, index);
> if (!IS_ERR(folio))
> return folio;
>
> policy = kvm_gmem_get_folio_policy(GMEM_I(inode), index);
> folio = __filemap_get_folio_mpol(inode->i_mapping, index,
> - FGP_LOCK | FGP_ACCESSED | FGP_CREAT,
> + FGP_LOCK | FGP_CREAT,
> mapping_gfp_mask(inode->i_mapping), policy);
> mpol_cond_put(policy);
>