linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 0/4] Add support for updated vmware hypercall instruction
@ 2019-08-28  8:03 Thomas Hellström (VMware)
  2019-08-28  8:03 ` [PATCH v3 1/4] x86/vmware: Update platform detection code for VMCALL/VMMCALL hypercalls Thomas Hellström (VMware)
                   ` (3 more replies)
  0 siblings, 4 replies; 27+ messages in thread
From: Thomas Hellström (VMware) @ 2019-08-28  8:03 UTC (permalink / raw)
  To: linux-kernel
  Cc: pv-drivers, linux-graphics-maintainer, Thomas Hellström,
	Thomas Gleixner, Ingo Molnar, Borislav Petkov, H. Peter Anvin,
	x86

Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: <x86@kernel.org>

VMware has started using "vmcall" / "vmmcall" instead of an inl instruction
for the "backdoor" interface. This series detects support for those
instructions.
Outside of the platform code we use the "ALTERNATIVES" self-patching
mechanism similarly to how this is done with KVM.
Unfortunately we need two new x86 CPU feature flags for this, since we need
the default instruction to be "inl". IIRC the vmmouse driver is used by
other virtualization solutions than VMware, and those might break if
they encounter any of the other instructions.

v2:
- Address various style review comments
- Use mnemonics instead of bytecode in the ALTERNATIVE_2 macros
- Use vmcall / vmmcall also for the High-Bandwidth port calls
- Change the %edx argument to what vmcall / vmmcall expect (flags instead of
  port number). The port number is added in the default ALTERNATIVE_2 path.
- Ack to merge the vmmouse patch from Dmitry.
- Drop license update for now. Will get back with a freestanding patch.

v3:
- Address more style review comments
- Improve on documentation
- Remove an unnecessarily added include
- Ack to merge the vmwgfx patch from Dave.


^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2019-09-03  1:02 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-08-28  8:03 [PATCH v3 0/4] Add support for updated vmware hypercall instruction Thomas Hellström (VMware)
2019-08-28  8:03 ` [PATCH v3 1/4] x86/vmware: Update platform detection code for VMCALL/VMMCALL hypercalls Thomas Hellström (VMware)
2019-08-28 13:30   ` [tip: x86/vmware] " tip-bot2 for Thomas Hellstrom
2019-08-28  8:03 ` [PATCH v3 2/4] x86/vmware: Add a header file for hypercall definitions Thomas Hellström (VMware)
2019-08-28 13:30   ` [tip: x86/vmware] " tip-bot2 for Thomas Hellstrom
2019-08-28  8:03 ` [PATCH v3 3/4] drm/vmwgfx: Update the backdoor call with support for new instructions Thomas Hellström (VMware)
2019-08-28 13:30   ` [tip: x86/vmware] " tip-bot2 for Thomas Hellstrom
2019-08-28  8:03 ` [PATCH v3 4/4] input/vmmouse: " Thomas Hellström (VMware)
2019-08-28 13:30   ` [tip: x86/vmware] " tip-bot2 for Thomas Hellstrom
2019-08-29 16:01     ` kbuild test robot
2019-08-29 16:33       ` Borislav Petkov
2019-08-30  1:03         ` [kbuild-all] " Philip Li
2019-08-30  6:06           ` Thomas Gleixner
2019-08-30  6:20             ` Philip Li
2019-08-30  6:33               ` Philip Li
2019-08-30  7:58                 ` Thomas Gleixner
2019-08-30  8:06               ` Borislav Petkov
2019-08-30 14:36                 ` Philip Li
2019-08-30 14:46                   ` Borislav Petkov
2019-08-30 15:00                     ` Philip Li
2019-08-30 15:06                       ` Borislav Petkov
2019-08-30 15:26                         ` Philip Li
2019-08-30 15:08                       ` Philip Li
2019-08-30 19:35                         ` Borislav Petkov
2019-09-02  1:13                           ` Philip Li
2019-09-02  9:36                             ` Borislav Petkov
2019-09-03  1:06                               ` Philip Li

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).