xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
To: linux-kernel@vger.kernel.org
Cc: xen-devel@lists.xensource.com, Stefano.Stabellini@eu.citrix.com,
	konrad.wilk@oracle.com, tim@xen.org, Ian.Campbell@citrix.com,
	linux-arm-kernel@lists.infradead.org,
	linaro-dev@lists.linaro.org, catalin.marinas@arm.com,
	arnd@arndb.de,
	Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Subject: [PATCH v3 18/25] xen: allow privcmd for HVM guests
Date: Thu, 16 Aug 2012 16:36:10 +0100	[thread overview]
Message-ID: <1345131377-14713-18-git-send-email-stefano.stabellini@eu.citrix.com> (raw)
In-Reply-To: <alpine.DEB.2.02.1208161618550.4850@kaball.uk.xensource.com>

This patch removes the "return -ENOSYS" for auto_translated_physmap
guests from privcmd_mmap, thus it allows ARM guests to issue privcmd
mmap calls. However privcmd mmap calls are still going to fail for HVM
and hybrid guests on x86 because the xen_remap_domain_mfn_range
implementation is currently PV only.

Changes in v2:

- better commit message;
- return -EINVAL from xen_remap_domain_mfn_range if
  auto_translated_physmap.


Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Acked-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
---
 arch/x86/xen/mmu.c    |    3 +++
 drivers/xen/privcmd.c |    4 ----
 2 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/arch/x86/xen/mmu.c b/arch/x86/xen/mmu.c
index 3a73785..885a223 100644
--- a/arch/x86/xen/mmu.c
+++ b/arch/x86/xen/mmu.c
@@ -2310,6 +2310,9 @@ int xen_remap_domain_mfn_range(struct vm_area_struct *vma,
 	unsigned long range;
 	int err = 0;
 
+	if (xen_feature(XENFEAT_auto_translated_physmap))
+		return -EINVAL;
+
 	prot = __pgprot(pgprot_val(prot) | _PAGE_IOMAP);
 
 	BUG_ON(!((vma->vm_flags & (VM_PFNMAP | VM_RESERVED | VM_IO)) ==
diff --git a/drivers/xen/privcmd.c b/drivers/xen/privcmd.c
index ccee0f1..85226cb 100644
--- a/drivers/xen/privcmd.c
+++ b/drivers/xen/privcmd.c
@@ -380,10 +380,6 @@ static struct vm_operations_struct privcmd_vm_ops = {
 
 static int privcmd_mmap(struct file *file, struct vm_area_struct *vma)
 {
-	/* Unsupported for auto-translate guests. */
-	if (xen_feature(XENFEAT_auto_translated_physmap))
-		return -ENOSYS;
-
 	/* DONTCOPY is essential for Xen because copy_page_range doesn't know
 	 * how to recreate these mappings */
 	vma->vm_flags |= VM_RESERVED | VM_IO | VM_DONTCOPY | VM_PFNMAP;
-- 
1.7.2.5

  parent reply	other threads:[~2012-08-16 15:36 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-08-16 15:33 [PATCH v3 00/23] Introduce Xen support on ARM Stefano Stabellini
2012-08-16 15:35 ` [PATCH v3 01/25] arm: initial Xen support Stefano Stabellini
2012-08-16 15:35 ` [PATCH v3 03/25] xen/arm: page.h definitions Stefano Stabellini
2012-08-16 15:36 ` [PATCH v3 11/25] xen: do not compile manage, balloon, pci, acpi and cpu_hotplug on ARM Stefano Stabellini
     [not found] ` <alpine.DEB.2.02.1208161618550.4850-7Z66fg9igcxYtxbxJUhB2Dgeux46jI+i@public.gmane.org>
2012-08-16 15:35   ` [PATCH v3 02/25] xen/arm: hypercalls Stefano Stabellini
2012-08-16 15:35   ` [PATCH v3 04/25] xen/arm: sync_bitops Stefano Stabellini
2012-08-16 15:35   ` [PATCH v3 05/25] xen/arm: empty implementation of grant_table arch specific functions Stefano Stabellini
2012-08-16 15:35   ` [PATCH v3 06/25] docs: Xen ARM DT bindings Stefano Stabellini
2012-08-27 23:03     ` Rob Herring
     [not found]       ` <503BFCD8.5090804-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2012-09-12 17:07         ` Stefano Stabellini
     [not found]           ` <alpine.DEB.2.02.1208281823270.15568-7Z66fg9igcxYtxbxJUhB2Dgeux46jI+i@public.gmane.org>
2012-09-12 18:14             ` Stefano Stabellini
2012-09-13  2:34               ` Rob Herring
     [not found]                 ` <50514634.3080303-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2012-09-13 10:29                   ` Dave Martin
     [not found]                     ` <20120913102938.GB2470-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2012-09-13 11:19                       ` Stefano Stabellini
2012-09-13 11:33                 ` Stefano Stabellini
2012-09-13 10:26               ` Dave Martin
2012-09-13 11:12                 ` Stefano Stabellini
2012-08-16 15:35   ` [PATCH v3 07/25] xen/arm: Xen detection and shared_info page mapping Stefano Stabellini
2012-08-16 15:36   ` [PATCH v3 08/25] xen/arm: Introduce xen_pfn_t for pfn and mfn types Stefano Stabellini
2012-08-16 15:36   ` [PATCH v3 09/25] xen/arm: Introduce xen_ulong_t for unsigned long Stefano Stabellini
2012-08-16 15:36   ` [PATCH v3 10/25] xen/arm: compile and run xenbus Stefano Stabellini
2012-08-16 15:36   ` [PATCH v3 12/25] xen/arm: introduce CONFIG_XEN on ARM Stefano Stabellini
2012-08-16 15:36   ` [PATCH v3 13/25] xen/arm: get privilege status Stefano Stabellini
2012-08-16 15:36   ` [PATCH v3 14/25] xen/arm: initialize grant_table on ARM Stefano Stabellini
2012-08-16 15:36   ` [PATCH v3 15/25] xen/arm: receive Xen events " Stefano Stabellini
2012-08-16 15:36   ` [PATCH v3 16/25] xen: clear IRQ_NOAUTOEN and IRQ_NOREQUEST Stefano Stabellini
2012-08-16 15:36   ` [PATCH v3 17/25] xen/arm: implement alloc/free_xenballooned_pages with alloc_pages/kfree Stefano Stabellini
2012-08-16 15:36   ` [PATCH v3 19/25] xen/arm: compile blkfront and blkback Stefano Stabellini
2012-08-16 15:36   ` [PATCH v3 20/25] xen/arm: compile netback Stefano Stabellini
2012-08-16 15:36   ` [PATCH v3 21/25] arm/v2m: initialize arch_timers even if v2m_timer is not present Stefano Stabellini
2012-08-16 15:36   ` [PATCH v3 22/25] xen/arm: use the __HVC macro Stefano Stabellini
2012-08-16 15:36   ` [PATCH v3 23/25] xen: missing includes Stefano Stabellini
2012-08-16 15:36   ` [PATCH v3 24/25] xen: update xen_add_to_physmap interface Stefano Stabellini
2012-08-16 15:36   ` [PATCH v3 25/25] [HACK] xen/arm: implement xen_remap_domain_mfn_range Stefano Stabellini
2012-08-16 15:36 ` Stefano Stabellini [this message]
2012-09-13 17:15 ` [PATCH v3 00/23] Introduce Xen support on ARM Stefano Stabellini
2012-10-24 15:26 ` [PATCH RESEND] xen/arm: use the __HVC macro Stefano Stabellini
2012-11-05 10:58   ` Dave Martin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1345131377-14713-18-git-send-email-stefano.stabellini@eu.citrix.com \
    --to=stefano.stabellini@eu.citrix.com \
    --cc=Ian.Campbell@citrix.com \
    --cc=arnd@arndb.de \
    --cc=catalin.marinas@arm.com \
    --cc=konrad.wilk@oracle.com \
    --cc=linaro-dev@lists.linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=tim@xen.org \
    --cc=xen-devel@lists.xensource.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).