Re: [PATCH v7 1/7] kvmppc: Driver to manage pages of secure guest
From: Christoph Hellwig <hch@lst.de>
Date: 2019-09-06 16:32:48
Also in:
linux-mm
From: Christoph Hellwig <hch@lst.de>
Date: 2019-09-06 16:32:48
Also in:
linux-mm
On Fri, Sep 06, 2019 at 05:06:39PM +0530, Bharata B Rao wrote:
quoted
Also is bit 56+ a set of values, so is there 1 << 56 and 3 << 56 as well? Seems like even that other patch doesn't fully define these "pfn" values.I realized that the bit numbers have changed, it is no longer bits 60:56, but instead top 8bits. #define KVMPPC_RMAP_UVMEM_PFN 0x0200000000000000 static inline bool kvmppc_rmap_is_uvmem_pfn(unsigned long *rmap) { return ((*rmap & 0xff00000000000000) == KVMPPC_RMAP_UVMEM_PFN); }
In that overall scheme I'd actually much prefer something like (names
just made up, they should vaguely match the spec this written to):
static inline unsigned long kvmppc_rmap_type(unsigned long *rmap)
{
return (rmap & 0xff00000000000000);
}
And then where you check it you can use:
if (kvmppc_rmap_type(*rmap) == KVMPPC_RMAP_UVMEM_PFN)
and where you set it you do:
*rmap |= KVMPPC_RMAP_UVMEM_PFN;
as in the current patch to keep things symmetric.