Re: [PATCH v3] xen/privcmd: add IOCTL_PRIVCMD_MMAP_RESOURCE

From: Boris Ostrovsky
Date: Mon Apr 09 2018 - 15:17:26 EST


On 04/09/2018 12:36 PM, Boris Ostrovsky wrote:
> On 04/09/2018 05:36 AM, Paul Durrant wrote:
>> My recent Xen patch series introduces a new HYPERVISOR_memory_op to
>> support direct priv-mapping of certain guest resources (such as ioreq
>> pages, used by emulators) by a tools domain, rather than having to access
>> such resources via the guest P2M.
>>
>> This patch adds the necessary infrastructure to the privcmd driver and
>> Xen MMU code to support direct resource mapping.
>>
>> NOTE: The adjustment in the MMU code is partially cosmetic. Xen will now
>> allow a PV tools domain to map guest pages either by GFN or MFN, thus
>> the term 'mfn' has been swapped for 'pfn' in the lower layers of the
>> remap code.
>>
>> Signed-off-by: Paul Durrant <paul.durrant@xxxxxxxxxx>
> Reviewed-by: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>
>
> I think this will have to wait until 4.18 though, it's somewhat late for
> current merge window right now.


Warns on 32-bit ARM build:

 CC drivers/xen/privcmd.o
In file included from /data/upstream/linux-xen/include/linux/kernel.h:14:0,
ÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ from /data/upstream/linux-xen/drivers/xen/privcmd.c:11:
/data/upstream/linux-xen/drivers/xen/privcmd.c: In function
âprivcmd_ioctl_mmap_resourceâ:
/data/upstream/linux-xen/drivers/xen/privcmd.c:788:33: warning: cast to
pointer from integer of different size [-Wint-to-pointer-cast]
ÂÂÂ pr_info("pfn[%u] = %p\n", i, (void *)pfns[i]);
ÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ ^
/data/upstream/linux-xen/include/linux/printk.h:308:34: note: in
definition of macro âpr_infoâ
 printk(KERN_INFO pr_fmt(fmt), ##__VA_ARGS__)
ÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ ^~~~~~~~~~~
 AR drivers/xen/xen-privcmd.o


-boris