[PATCH 0/8] Use correctly the Xen memory terminologies in Linux
Hi all, This patch series aims to use the memory terminologies described in include/linux/mm.h [1] for Linux xen code. Linux is using mistakenly MFN when GFN is meant, I suspect this is because the first support of Xen was for PV. This has brought some misimplementation of memory helpers on ARM and make the developper confused about the expected behavior. For instance, with pfn_to_mfn, we expect to get a MFN based on the name. Although, if we look at the implementation on x86, it's returning a GFN. Most of the callers are also using it this way. The first 2 patches of this series is ARM related in order to remove PV specific helpers which should not be used and fixing the implementation of pfn_to_mfn. The rest of the series is here rename most of the usage in the common code of MFN to GFN. I also took the opportunity to replace most of the call to pfn_to_gfn in the common code by page_to_gfn avoid construction such as pfn_to_gfn(page_to_pfn(...). Note the one xen-blkfront will be dropped by 64K series [2], I can include it if necessary. This series is based on Linux 4.2-rc4. A branch with all the patches can be found here: git://xenbits.xen.org/people/julieng/linux-arm.git branch page-renaming-v1 Sincerely yours, [1] Xen tree: e758ed14f390342513405dd766e874934573e6cb [2] https://lkml.org/lkml/2015/7/9/628 Cc: Boris Ostrovsky Cc: David Vrabel Cc: Dmitry Torokhov Cc: Greg Kroah-Hartman Cc: "H. Peter Anvin" Cc: Ian Campbell Cc: Ingo Molnar Cc: "James E.J. Bottomley" Cc: Jean-Christophe Plagniol-Villard Cc: Jiri Slaby Cc: Juergen Gross Cc: Konrad Rzeszutek Wilk Cc: linux-...@vger.kernel.org Cc: linux-arm-ker...@lists.infradead.org Cc: linux-fb...@vger.kernel.org Cc: linux-in...@vger.kernel.org Cc: linuxppc-...@lists.ozlabs.org Cc: linux-s...@vger.kernel.org Cc: netdev@vger.kernel.org Cc: "Roger Pau Monné" Cc: Russell King Cc: Stefano Stabellini Cc: Thomas Gleixner Cc: Tomi Valkeinen Cc: Wei Liu Cc: x...@kernel.org Julien Grall (8): arm/xen: Remove helpers which are PV specific xen: Make clear that swiotlb and biomerge are dealing with DMA address arm/xen: implement correctly pfn_to_mfn xen: Use the correctly the Xen memory terminologies xen/tmem: Use page_to_gfn rather than pfn_to_gfn video/xen-fbfront: Further s/MFN/GFN clean-up hvc/xen: Further s/MFN/GFN clean-up xen/privcmd: Further s/MFN/GFN/ clean-up arch/arm/include/asm/xen/page.h | 44 +++--- arch/arm/xen/enlighten.c| 18 ++--- arch/arm/xen/mm.c | 4 +-- arch/x86/include/asm/xen/page.h | 34 +-- arch/x86/xen/enlighten.c| 4 +-- arch/x86/xen/mmu.c | 48 - arch/x86/xen/p2m.c | 32 +++--- arch/x86/xen/setup.c| 12 - arch/x86/xen/smp.c | 4 +-- arch/x86/xen/suspend.c | 8 +++--- drivers/block/xen-blkfront.c| 6 ++--- drivers/input/misc/xen-kbdfront.c | 4 +-- drivers/net/xen-netback/netback.c | 4 +-- drivers/net/xen-netfront.c | 8 +++--- drivers/scsi/xen-scsifront.c| 8 +++--- drivers/tty/hvc/hvc_xen.c | 18 + drivers/video/fbdev/xen-fbfront.c | 20 +++--- drivers/xen/balloon.c | 2 +- drivers/xen/biomerge.c | 6 ++--- drivers/xen/events/events_base.c| 2 +- drivers/xen/events/events_fifo.c| 4 +-- drivers/xen/gntalloc.c | 3 ++- drivers/xen/manage.c| 2 +- drivers/xen/privcmd.c | 44 +++--- drivers/xen/swiotlb-xen.c | 16 +-- drivers/xen/tmem.c | 21 +-- drivers/xen/xenbus/xenbus_client.c | 2 +- drivers/xen/xenbus/xenbus_dev_backend.c | 2 +- drivers/xen/xenbus/xenbus_probe.c | 8 +++--- drivers/xen/xlate_mmu.c | 18 ++--- include/uapi/xen/privcmd.h | 4 +++ include/xen/page.h | 4 +-- include/xen/xen-ops.h | 10 +++ 33 files changed, 210 insertions(+), 214 deletions(-) -- 2.1.4 -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 0/8] Use correctly the Xen memory terminologies in Linux
On 07/28/2015 08:02 AM, Julien Grall wrote: > Hi all, > > This patch series aims to use the memory terminologies described in > include/linux/mm.h [1] for Linux xen code. > > Linux is using mistakenly MFN when GFN is meant, I suspect this is because the > first support of Xen was for PV. This has brought some misimplementation > of memory helpers on ARM and make the developper confused about the expected > behavior. > > For instance, with pfn_to_mfn, we expect to get a MFN based on the name. > Although, if we look at the implementation on x86, it's returning a GFN. > Most of the callers are also using it this way. > > The first 2 patches of this series is ARM related in order to remove > PV specific helpers which should not be used and fixing the implementation of > pfn_to_mfn. > > The rest of the series is here rename most of the usage in the common code > of MFN to GFN. I also took the opportunity to replace most of the call to > pfn_to_gfn in the common code by page_to_gfn avoid construction such > as pfn_to_gfn(page_to_pfn(...). > > Note the one xen-blkfront will be dropped by 64K series [2], I can include it > if necessary. > Can we actually get some documentation for Xen before starting to change names around? -hpa -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 0/8] Use correctly the Xen memory terminologies in Linux
On 28/07/15 16:02, Julien Grall wrote: > Hi all, > > This patch series aims to use the memory terminologies described in > include/linux/mm.h [1] for Linux xen code. I mistakenly wrote the wrong include here. It should be include/xen/mm.h from the Xen tree: http://xenbits.xen.org/gitweb/?p=xen.git;a=commitdiff;h=e758ed14f390342513405dd766e874934573e6cb Regards, -- Julien Grall -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [Xen-devel] [PATCH 0/8] Use correctly the Xen memory terminologies in Linux
On 28/07/15 22:06, H. Peter Anvin wrote: > On 07/28/2015 08:02 AM, Julien Grall wrote: >> Hi all, >> >> This patch series aims to use the memory terminologies described in >> include/linux/mm.h [1] for Linux xen code. >> >> Linux is using mistakenly MFN when GFN is meant, I suspect this is because >> the >> first support of Xen was for PV. This has brought some misimplementation >> of memory helpers on ARM and make the developper confused about the expected >> behavior. >> >> For instance, with pfn_to_mfn, we expect to get a MFN based on the name. >> Although, if we look at the implementation on x86, it's returning a GFN. >> Most of the callers are also using it this way. >> >> The first 2 patches of this series is ARM related in order to remove >> PV specific helpers which should not be used and fixing the implementation of >> pfn_to_mfn. >> >> The rest of the series is here rename most of the usage in the common code >> of MFN to GFN. I also took the opportunity to replace most of the call to >> pfn_to_gfn in the common code by page_to_gfn avoid construction such >> as pfn_to_gfn(page_to_pfn(...). >> >> Note the one xen-blkfront will be dropped by 64K series [2], I can include it >> if necessary. >> > Can we actually get some documentation for Xen before starting to change > names around? http://xenbits.xen.org/gitweb/?p=xen.git;a=commitdiff;h=e758ed14f390342513405dd766e874934573e6cb ~Andrew -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html