[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20181204065914.GB73736@tiger-server>
Date: Tue, 4 Dec 2018 14:59:15 +0800
From: Yi Zhang <yi.z.zhang@...ux.intel.com>
To: Alexander Duyck <alexander.h.duyck@...ux.intel.com>
Cc: dan.j.williams@...el.com, pbonzini@...hat.com, brho@...gle.com,
kvm@...r.kernel.org, linux-nvdimm@...ts.01.org,
linux-kernel@...r.kernel.org, linux-mm@...ck.org,
dave.jiang@...el.com, yu.c.zhang@...el.com, pagupta@...hat.com,
david@...hat.com, jack@...e.cz, hch@....de, rkrcmar@...hat.com,
jglisse@...hat.com
Subject: Re: [PATCH RFC 0/3] Fix KVM misinterpreting Reserved page as an MMIO
page
On 2018-12-03 at 11:25:20 -0800, Alexander Duyck wrote:
> I have loosely based this patch series off of the following patch series
> from Zhang Yi:
> https://lore.kernel.org/lkml/cover.1536342881.git.yi.z.zhang@linux.intel.com
>
> The original set had attempted to address the fact that DAX pages were
> treated like MMIO pages which had resulted in reduced performance. It
> attempted to address this by ignoring the PageReserved flag if the page
> was either a DEV_DAX or FS_DAX page.
>
> I am proposing this as an alternative to that set. The main reason for this
> is because I believe there are a few issues that were overlooked with that
> original set. Specifically KVM seems to have two different uses for the
> PageReserved flag. One being whether or not we can pin the memory, the other
> being if we should be marking the pages as dirty or accessed. I believe
> only the pinning really applies so I have split the uses of
> kvm_is_reserved_pfn and updated the function uses to determine support for
> page pinning to include a check of the pgmap to see if it supports pinning.
kvm is not the only one users of the dax page.
A similar user of PageReserved to look at is:
drivers/vfio/vfio_iommu_type1.c:is_invalid_reserved_pfn(
vfio is also want to know the page is capable for pinning.
I throught that you have removed the reserved flag on the dax page
in https://patchwork.kernel.org/patch/10707267/
is something I missing here?
>
> ---
>
> Alexander Duyck (3):
> kvm: Split use cases for kvm_is_reserved_pfn to kvm_is_refcounted_pfn
> mm: Add support for exposing if dev_pagemap supports refcount pinning
> kvm: Add additional check to determine if a page is refcounted
>
>
> arch/x86/kvm/mmu.c | 6 +++---
> drivers/nvdimm/pfn_devs.c | 2 ++
> include/linux/kvm_host.h | 2 +-
> include/linux/memremap.h | 5 ++++-
> include/linux/mm.h | 11 +++++++++++
> virt/kvm/kvm_main.c | 34 +++++++++++++++++++++++++---------
> 6 files changed, 46 insertions(+), 14 deletions(-)
>
> --
Powered by blists - more mailing lists