All of lore.kernel.org
 help / color / mirror / Atom feed
From: Simon Horman <horms@kernel.org>
To: Alexey Makhalov <alexey.makhalov@broadcom.com>
Cc: linux-kernel@vger.kernel.org, virtualization@lists.linux.dev,
	bp@alien8.de, hpa@zytor.com, dave.hansen@linux.intel.com,
	mingo@redhat.com, tglx@linutronix.de, x86@kernel.org,
	netdev@vger.kernel.org, richardcochran@gmail.com,
	linux-input@vger.kernel.org, dmitry.torokhov@gmail.com,
	zackr@vmware.com, linux-graphics-maintainer@vmware.com,
	pv-drivers@vmware.com, namit@vmware.com, timothym@vmware.com,
	akaher@vmware.com, jsipek@vmware.com,
	dri-devel@lists.freedesktop.org, daniel@ffwll.ch,
	airlied@gmail.com, tzimmermann@suse.de, mripard@kernel.org,
	maarten.lankhorst@linux.intel.com,
	kirill.shutemov@linux.intel.com
Subject: Re: [PATCH v4 2/6] x86/vmware: Introduce VMware hypercall API
Date: Wed, 3 Jan 2024 16:24:02 +0000	[thread overview]
Message-ID: <20240103162402.GA31813@kernel.org> (raw)
In-Reply-To: <20231228192421.29894-3-alexey.makhalov@broadcom.com>

On Thu, Dec 28, 2023 at 11:24:17AM -0800, Alexey Makhalov wrote:
> From: Alexey Makhalov <amakhalov@vmware.com>
> 
> Introduce vmware_hypercall family of functions. It is a common
> implementation to be used by the VMware guest code and virtual
> device drivers in architecture independent manner.
> 
> The API consists of vmware_hypercallX and vmware_hypercall_hb_{out,in}
> set of functions by analogy with KVM hypercall API. Architecture
> specific implementation is hidden inside.
> 
> It will simplify future enhancements in VMware hypercalls such
> as SEV-ES and TDX related changes without needs to modify a
> caller in device drivers code.
> 
> Current implementation extends an idea from commit bac7b4e84323
> ("x86/vmware: Update platform detection code for VMCALL/VMMCALL
> hypercalls") to have a slow, but safe path in VMWARE_HYPERCALL
> earlier during the boot when alternatives are not yet applied.
> This logic was inherited from VMWARE_CMD from the commit mentioned
> above. Default alternative code was optimized by size to reduce
> excessive nop alignment once alternatives are applied. Total
> default code size is 26 bytes, in worse case (3 bytes alternative)
> remaining 23 bytes will be aligned by only 3 long NOP instructions.
> 
> Signed-off-by: Alexey Makhalov <amakhalov@vmware.com>
> Reviewed-by: Nadav Amit <namit@vmware.com>
> Reviewed-by: Jeff Sipek <jsipek@vmware.com>

Hi Alexey,

I'd like to flag that this breaks gcc-13 x86_64 allmodconfig builds of the
following files. And although this is resolved by the subsequent 3 patches
in this series, it does still break bisection.

 drivers/gpu/drm/vmwgfx/vmwgfx_msg.c
 drivers/input/mouse/vmmouse.c
 drivers/ptp/ptp_vmw.c

...

WARNING: multiple messages have this Message-ID (diff)
From: Simon Horman <horms@kernel.org>
To: Alexey Makhalov <alexey.makhalov@broadcom.com>
Cc: pv-drivers@vmware.com, dave.hansen@linux.intel.com,
	dri-devel@lists.freedesktop.org, namit@vmware.com, hpa@zytor.com,
	timothym@vmware.com, x86@kernel.org, mingo@redhat.com,
	linux-graphics-maintainer@vmware.com,
	linux-input@vger.kernel.org, tzimmermann@suse.de,
	richardcochran@gmail.com, virtualization@lists.linux.dev,
	mripard@kernel.org, akaher@vmware.com, bp@alien8.de,
	jsipek@vmware.com, tglx@linutronix.de, netdev@vger.kernel.org,
	dmitry.torokhov@gmail.com, linux-kernel@vger.kernel.org,
	kirill.shutemov@linux.intel.com, zackr@vmware.com
Subject: Re: [PATCH v4 2/6] x86/vmware: Introduce VMware hypercall API
Date: Wed, 3 Jan 2024 16:24:02 +0000	[thread overview]
Message-ID: <20240103162402.GA31813@kernel.org> (raw)
In-Reply-To: <20231228192421.29894-3-alexey.makhalov@broadcom.com>

On Thu, Dec 28, 2023 at 11:24:17AM -0800, Alexey Makhalov wrote:
> From: Alexey Makhalov <amakhalov@vmware.com>
> 
> Introduce vmware_hypercall family of functions. It is a common
> implementation to be used by the VMware guest code and virtual
> device drivers in architecture independent manner.
> 
> The API consists of vmware_hypercallX and vmware_hypercall_hb_{out,in}
> set of functions by analogy with KVM hypercall API. Architecture
> specific implementation is hidden inside.
> 
> It will simplify future enhancements in VMware hypercalls such
> as SEV-ES and TDX related changes without needs to modify a
> caller in device drivers code.
> 
> Current implementation extends an idea from commit bac7b4e84323
> ("x86/vmware: Update platform detection code for VMCALL/VMMCALL
> hypercalls") to have a slow, but safe path in VMWARE_HYPERCALL
> earlier during the boot when alternatives are not yet applied.
> This logic was inherited from VMWARE_CMD from the commit mentioned
> above. Default alternative code was optimized by size to reduce
> excessive nop alignment once alternatives are applied. Total
> default code size is 26 bytes, in worse case (3 bytes alternative)
> remaining 23 bytes will be aligned by only 3 long NOP instructions.
> 
> Signed-off-by: Alexey Makhalov <amakhalov@vmware.com>
> Reviewed-by: Nadav Amit <namit@vmware.com>
> Reviewed-by: Jeff Sipek <jsipek@vmware.com>

Hi Alexey,

I'd like to flag that this breaks gcc-13 x86_64 allmodconfig builds of the
following files. And although this is resolved by the subsequent 3 patches
in this series, it does still break bisection.

 drivers/gpu/drm/vmwgfx/vmwgfx_msg.c
 drivers/input/mouse/vmmouse.c
 drivers/ptp/ptp_vmw.c

...

  reply	other threads:[~2024-01-03 16:24 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-12-28 19:24 [PATCH v4 0/6] VMware hypercalls enhancements Alexey Makhalov
2023-12-28 19:24 ` Alexey Makhalov
2023-12-28 19:24 ` [PATCH v4 1/6] x86/vmware: Move common macros to vmware.h Alexey Makhalov
2023-12-28 19:24   ` Alexey Makhalov
2023-12-28 19:24 ` [PATCH v4 2/6] x86/vmware: Introduce VMware hypercall API Alexey Makhalov
2023-12-28 19:24   ` Alexey Makhalov
2024-01-03 16:24   ` Simon Horman [this message]
2024-01-03 16:24     ` Simon Horman
2023-12-28 19:24 ` [PATCH v4 3/6] ptp/vmware: Use " Alexey Makhalov
2023-12-28 19:24   ` Alexey Makhalov
2023-12-28 19:24 ` [PATCH v4 4/6] input/vmmouse: " Alexey Makhalov
2023-12-28 19:24   ` Alexey Makhalov
2023-12-28 19:24 ` [PATCH v4 5/6] drm/vmwgfx: " Alexey Makhalov
2023-12-28 19:24   ` Alexey Makhalov
2023-12-28 19:24 ` [PATCH v4 6/6] x86/vmware: Add TDX hypercall support Alexey Makhalov
2023-12-28 19:24   ` Alexey Makhalov
2024-01-03 12:25   ` kirill.shutemov
2024-01-03 12:25     ` kirill.shutemov

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=20240103162402.GA31813@kernel.org \
    --to=horms@kernel.org \
    --cc=airlied@gmail.com \
    --cc=akaher@vmware.com \
    --cc=alexey.makhalov@broadcom.com \
    --cc=bp@alien8.de \
    --cc=daniel@ffwll.ch \
    --cc=dave.hansen@linux.intel.com \
    --cc=dmitry.torokhov@gmail.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=hpa@zytor.com \
    --cc=jsipek@vmware.com \
    --cc=kirill.shutemov@linux.intel.com \
    --cc=linux-graphics-maintainer@vmware.com \
    --cc=linux-input@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=maarten.lankhorst@linux.intel.com \
    --cc=mingo@redhat.com \
    --cc=mripard@kernel.org \
    --cc=namit@vmware.com \
    --cc=netdev@vger.kernel.org \
    --cc=pv-drivers@vmware.com \
    --cc=richardcochran@gmail.com \
    --cc=tglx@linutronix.de \
    --cc=timothym@vmware.com \
    --cc=tzimmermann@suse.de \
    --cc=virtualization@lists.linux.dev \
    --cc=x86@kernel.org \
    --cc=zackr@vmware.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 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.