From: "Sinclair Yeh" <syeh@vmware.com> To: x86@kernel.org Cc: Sinclair Yeh <syeh@vmware.com>, Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>, pv-drivers@vmware.com, virtualization@lists.linux-foundation.org, linux-kernel@vger.kernel.org Subject: [PATCH 2/6] x86: Update vmware.c to use the common VMW_PORT macros Date: Tue, 1 Dec 2015 14:18:48 -0800 [thread overview] Message-ID: <1449008332-9394-2-git-send-email-syeh@vmware.com> (raw) In-Reply-To: <1449008332-9394-1-git-send-email-syeh@vmware.com> v2: Instead of replacing all existing instances of VMWARE_PORT with VMW_PORT, update VMWARE_PORT to use the new VMW_PORT. v3: Using updated VMWARE_PORT() macro, which needs hypervisor magic in the parameter Signed-off-by: Sinclair Yeh <syeh@vmware.com> Reviewed-by: Thomas Hellstrom <thellstrom@vmware.com> Reviewed-by: Alok N Kataria <akataria@vmware.com> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Ingo Molnar <mingo@redhat.com> Cc: "H. Peter Anvin" <hpa@zytor.com> Cc: pv-drivers@vmware.com Cc: virtualization@lists.linux-foundation.org Cc: linux-kernel@vger.kernel.org --- arch/x86/kernel/cpu/vmware.c | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/arch/x86/kernel/cpu/vmware.c b/arch/x86/kernel/cpu/vmware.c index 628a059..1837f66 100644 --- a/arch/x86/kernel/cpu/vmware.c +++ b/arch/x86/kernel/cpu/vmware.c @@ -26,6 +26,7 @@ #include <asm/div64.h> #include <asm/x86_init.h> #include <asm/hypervisor.h> +#include <asm/vmware.h> #define CPUID_VMWARE_INFO_LEAF 0x40000000 #define VMWARE_HYPERVISOR_MAGIC 0x564D5868 @@ -37,13 +38,14 @@ #define VMWARE_PORT_CMD_LEGACY_X2APIC 3 #define VMWARE_PORT_CMD_VCPU_RESERVED 31 -#define VMWARE_PORT(cmd, eax, ebx, ecx, edx) \ - __asm__("inl (%%dx)" : \ - "=a"(eax), "=c"(ecx), "=d"(edx), "=b"(ebx) : \ - "0"(VMWARE_HYPERVISOR_MAGIC), \ - "1"(VMWARE_PORT_CMD_##cmd), \ - "2"(VMWARE_HYPERVISOR_PORT), "3"(UINT_MAX) : \ - "memory"); +#define VMWARE_PORT(cmd, eax, ebx, ecx, edx) \ +({ \ + unsigned long __si = 0, __di = 0; \ + VMW_PORT(UINT_MAX, VMWARE_PORT_CMD_##cmd, VMWARE_HYPERVISOR_PORT, \ + VMWARE_HYPERVISOR_MAGIC, \ + eax, ebx, ecx, edx, __si, __di); \ +}) + static inline int __vmware_platform(void) { -- 1.9.1
WARNING: multiple messages have this Message-ID (diff)
From: "Sinclair Yeh" <syeh@vmware.com> To: x86@kernel.org Cc: Sinclair Yeh <syeh@vmware.com>, pv-drivers@vmware.com, linux-kernel@vger.kernel.org, virtualization@lists.linux-foundation.org, Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>, Thomas Gleixner <tglx@linutronix.de> Subject: [PATCH 2/6] x86: Update vmware.c to use the common VMW_PORT macros Date: Tue, 1 Dec 2015 14:18:48 -0800 [thread overview] Message-ID: <1449008332-9394-2-git-send-email-syeh@vmware.com> (raw) In-Reply-To: <1449008332-9394-1-git-send-email-syeh@vmware.com> v2: Instead of replacing all existing instances of VMWARE_PORT with VMW_PORT, update VMWARE_PORT to use the new VMW_PORT. v3: Using updated VMWARE_PORT() macro, which needs hypervisor magic in the parameter Signed-off-by: Sinclair Yeh <syeh@vmware.com> Reviewed-by: Thomas Hellstrom <thellstrom@vmware.com> Reviewed-by: Alok N Kataria <akataria@vmware.com> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Ingo Molnar <mingo@redhat.com> Cc: "H. Peter Anvin" <hpa@zytor.com> Cc: pv-drivers@vmware.com Cc: virtualization@lists.linux-foundation.org Cc: linux-kernel@vger.kernel.org --- arch/x86/kernel/cpu/vmware.c | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/arch/x86/kernel/cpu/vmware.c b/arch/x86/kernel/cpu/vmware.c index 628a059..1837f66 100644 --- a/arch/x86/kernel/cpu/vmware.c +++ b/arch/x86/kernel/cpu/vmware.c @@ -26,6 +26,7 @@ #include <asm/div64.h> #include <asm/x86_init.h> #include <asm/hypervisor.h> +#include <asm/vmware.h> #define CPUID_VMWARE_INFO_LEAF 0x40000000 #define VMWARE_HYPERVISOR_MAGIC 0x564D5868 @@ -37,13 +38,14 @@ #define VMWARE_PORT_CMD_LEGACY_X2APIC 3 #define VMWARE_PORT_CMD_VCPU_RESERVED 31 -#define VMWARE_PORT(cmd, eax, ebx, ecx, edx) \ - __asm__("inl (%%dx)" : \ - "=a"(eax), "=c"(ecx), "=d"(edx), "=b"(ebx) : \ - "0"(VMWARE_HYPERVISOR_MAGIC), \ - "1"(VMWARE_PORT_CMD_##cmd), \ - "2"(VMWARE_HYPERVISOR_PORT), "3"(UINT_MAX) : \ - "memory"); +#define VMWARE_PORT(cmd, eax, ebx, ecx, edx) \ +({ \ + unsigned long __si = 0, __di = 0; \ + VMW_PORT(UINT_MAX, VMWARE_PORT_CMD_##cmd, VMWARE_HYPERVISOR_PORT, \ + VMWARE_HYPERVISOR_MAGIC, \ + eax, ebx, ecx, edx, __si, __di); \ +}) + static inline int __vmware_platform(void) { -- 1.9.1
next prev parent reply other threads:[~2015-12-01 22:18 UTC|newest] Thread overview: 96+ messages / expand[flat|nested] mbox.gz Atom feed top [not found] <1449008047-8252-1-git-send-email-syeh@vmware.com> 2015-12-01 22:18 ` [PATCH 1/6] x86: Add VMWare Host Communication Macros Sinclair Yeh 2015-12-01 22:18 ` Sinclair Yeh 2015-12-01 22:18 ` Sinclair Yeh [this message] 2015-12-01 22:18 ` [PATCH 2/6] x86: Update vmware.c to use the common VMW_PORT macros Sinclair Yeh 2015-12-01 22:18 ` [PATCH 3/6] Input: Update vmmouse.c " Sinclair Yeh 2015-12-01 22:18 ` Sinclair Yeh 2015-12-01 22:24 ` Dmitry Torokhov 2015-12-01 22:32 ` Sinclair Yeh 2015-12-01 22:45 ` Dmitry Torokhov 2015-12-01 22:45 ` Dmitry Torokhov 2015-12-01 22:45 ` Dmitry Torokhov 2015-12-01 22:54 ` Sinclair Yeh 2015-12-01 22:54 ` Sinclair Yeh 2015-12-01 23:56 ` Dmitry Torokhov 2015-12-01 23:56 ` Dmitry Torokhov 2015-12-01 23:56 ` Dmitry Torokhov 2015-12-02 0:04 ` Greg Kroah-Hartman 2015-12-02 0:04 ` Greg Kroah-Hartman 2015-12-02 2:21 ` Sinclair Yeh 2015-12-02 2:21 ` Sinclair Yeh 2015-12-02 15:31 ` Greg Kroah-Hartman 2015-12-02 15:31 ` Greg Kroah-Hartman 2015-12-02 15:57 ` Sinclair Yeh 2015-12-02 15:57 ` Sinclair Yeh 2015-12-02 15:57 ` Sinclair Yeh 2015-12-02 17:26 ` Dmitry Torokhov 2015-12-02 17:26 ` Dmitry Torokhov 2015-12-02 17:29 ` [Linux-graphics-maintainer] " Thomas Hellstrom 2015-12-02 17:29 ` Thomas Hellstrom 2015-12-02 18:45 ` Greg Kroah-Hartman 2015-12-02 18:45 ` Greg Kroah-Hartman 2015-12-02 18:58 ` Dmitry Torokhov 2015-12-02 18:58 ` Dmitry Torokhov 2015-12-02 18:58 ` Dmitry Torokhov 2015-12-02 19:02 ` Sinclair Yeh 2015-12-02 19:02 ` Sinclair Yeh 2015-12-02 2:21 ` Sinclair Yeh 2015-12-02 7:07 ` [Linux-graphics-maintainer] " Thomas Hellstrom 2015-12-02 7:07 ` Thomas Hellstrom 2015-12-02 7:07 ` Thomas Hellstrom 2015-12-01 22:32 ` Sinclair Yeh 2015-12-01 22:24 ` Dmitry Torokhov 2015-12-02 0:01 ` Greg Kroah-Hartman 2015-12-02 0:01 ` Greg Kroah-Hartman 2015-12-01 22:18 ` [PATCH 4/6] Input: Remove vmmouse port reservation Sinclair Yeh 2015-12-01 22:30 ` Dmitry Torokhov 2015-12-01 22:30 ` Dmitry Torokhov 2015-12-01 23:04 ` Sinclair Yeh 2015-12-01 23:04 ` Sinclair Yeh 2015-12-01 23:52 ` Dmitry Torokhov 2015-12-01 23:52 ` Dmitry Torokhov 2015-12-01 22:18 ` Sinclair Yeh 2015-12-01 22:18 ` [PATCH 5/6] x86: Remove address from the vmware.c header Sinclair Yeh 2015-12-01 22:18 ` [PATCH 6/6] VMware balloon: Update vmw_balloon.c to use the VMW_PORT macro Sinclair Yeh 2015-12-01 22:38 ` Xavier Deguillard 2015-12-01 23:17 ` Sinclair Yeh 2015-12-01 23:17 ` Sinclair Yeh 2015-12-01 22:38 ` Xavier Deguillard 2015-12-01 22:18 ` Sinclair Yeh 2015-12-01 22:32 ` [PATCH 1/6] x86: Add VMWare Host Communication Macros Xavier Deguillard 2015-12-01 22:32 ` Xavier Deguillard 2015-12-01 22:49 ` H. Peter Anvin 2015-12-04 22:33 ` Sinclair Yeh 2015-12-04 22:33 ` Sinclair Yeh 2015-12-01 22:49 ` H. Peter Anvin [not found] ` <1449271183-1746-1-git-send-email-syeh@vmware.com> 2015-12-04 23:19 ` Sinclair Yeh 2015-12-04 23:19 ` Sinclair Yeh 2015-12-04 23:19 ` [PATCH 2/6] x86: Update vmware.c to use the common VMW_PORT macros Sinclair Yeh 2015-12-04 23:19 ` Sinclair Yeh 2015-12-04 23:19 ` [PATCH 3/6] Input: Update vmmouse.c " Sinclair Yeh 2015-12-04 23:19 ` Sinclair Yeh 2015-12-04 23:19 ` [PATCH 4/6] Input: Remove vmmouse port reservation Sinclair Yeh 2015-12-04 23:19 ` Sinclair Yeh 2015-12-04 23:19 ` [PATCH 5/6] x86: Remove address from the vmware.c header Sinclair Yeh 2015-12-04 23:19 ` [PATCH 6/6] VMware balloon: Update vmw_balloon.c to use the VMW_PORT macro Sinclair Yeh 2015-12-04 23:19 ` Sinclair Yeh 2016-01-19 21:45 ` [PATCH 0/6] Create common VMWare host port communication macros v3 Sinclair Yeh 2016-01-19 21:46 ` [PATCH 1/6] x86: Add VMWare Host Communication Macros Sinclair Yeh 2016-01-19 21:46 ` Sinclair Yeh 2016-01-19 21:46 ` [PATCH 2/6] x86: Update vmware.c to use the common VMW_PORT macros Sinclair Yeh 2016-01-19 21:46 ` Sinclair Yeh 2016-01-19 21:46 ` [PATCH 3/6] Input: Update vmmouse.c " Sinclair Yeh 2016-01-19 21:46 ` Sinclair Yeh 2016-01-19 21:46 ` [PATCH 4/6] Input: Remove vmmouse port reservation Sinclair Yeh 2016-01-19 21:46 ` Sinclair Yeh 2016-01-19 21:46 ` [PATCH 5/6] x86: Remove address from the vmware.c header Sinclair Yeh 2016-01-19 21:46 ` [PATCH 6/6] VMware balloon: Update vmw_balloon.c to use the VMW_PORT macro Sinclair Yeh 2016-01-19 21:46 ` Sinclair Yeh 2016-02-08 19:41 ` Greg KH 2016-02-08 19:41 ` Greg KH 2016-03-31 14:39 ` Sinclair Yeh 2016-03-31 14:39 ` Sinclair Yeh 2016-03-31 16:30 ` Greg KH 2016-03-31 16:30 ` Greg KH 2016-03-31 17:32 ` Sinclair Yeh 2016-03-31 17:32 ` Sinclair Yeh
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=1449008332-9394-2-git-send-email-syeh@vmware.com \ --to=syeh@vmware.com \ --cc=hpa@zytor.com \ --cc=linux-kernel@vger.kernel.org \ --cc=mingo@redhat.com \ --cc=pv-drivers@vmware.com \ --cc=tglx@linutronix.de \ --cc=virtualization@lists.linux-foundation.org \ --cc=x86@kernel.org \ /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: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.