From: Thomas Gleixner <tglx@glx-um.de>
To: Josh Poimboeuf <jpoimboe@kernel.org>,
Thorsten Leemhuis <regressions@leemhuis.info>
Cc: Alexey Makhalov <alexey.makhalov@broadcom.com>,
x86@kernel.org, linux-kernel@vger.kernel.org,
Ajay Kaher <ajay.kaher@broadcom.com>,
bcm-kernel-feedback-list@broadcom.com,
Peter Zijlstra <peterz@infradead.org>,
Justin Forbes <jforbes@fedoraproject.org>,
Linux kernel regressions list <regressions@lists.linux.dev>,
Linus Torvalds <torvalds@linux-foundation.org>
Subject: Re: [PATCH] x86/vmware: Fix hypercall clobbers
Date: Fri, 06 Feb 2026 11:07:22 +0100 [thread overview]
Message-ID: <87jywq18yt.ffs@tglx> (raw)
In-Reply-To: <kv4bv3jng2iap3qwvk36pciggiho4yhavnfvsisri67jkdt6kr@szokbl6qdibl>
On Fri, Jan 30 2026 at 08:46, Josh Poimboeuf wrote:
> On Fri, Jan 30, 2026 at 05:24:02PM +0100, Thorsten Leemhuis wrote:
>> >>> Workarounding QEMU misbehavior from the kernel side by introducing less
>> >>> efficient asm inlines does not sound correct.
>> >>
>> >> Well, fixing bugs right where they are obviously is a good thing.
>> >>
>> >> But well, the problem according to the description quoted below was
>> >> exposed by a change that went into 6.19-rc1 -- which makes it a kernel
>> >> regression that must be fixed in the kernel (ideally before 6.19 is out).
>> >>
>> >> At least from my understanding of Linus point of view on situations like
>> >> that. Or am I mistaken for some reason?
>> >>
>> >> Or is this a case of "we for now assume this is such a corner case that
>> >> nobody else will hit; if we are wrong we'll reconsider".
>> >
>> > Hm, yes, from that perspective I agree this is a kernel regression that
>> > needs fixed. We still want Linux to work with older "broken" versions
>> > of qemu that clobber registers.
>>
>> Josh, what's the status here? From here it looks like nothing happened
>> during the last week. Should we move on with the patch at the start of
>> this thread? Or is "widening the hypercall just for
>> VMWARE_CMD_ABSPOINTER_DATA" as suggested by Alexey elsewhere in this
>> thread a better fix? Or would temporarily reverting aca282ab7e75
>> ("x86/asm: Annotate special section entries") be the best move for now?
>
> I think we still need to go with the original patch at the start of this
> thread. There's nothing preventing the compiler from doing similar
> optimizations for the other hypercalls.
That's correct, but not a problem as long as the hypercall does not
clobber registers beyond those which are in use for a particular
hypercall, no?
Unfortunately there is no formal specification of the hypercall
(backdoor) ABI available, which VMWare really should provide.
All what's available is the lazy 'fits all sizes' implementation in
open-vm-tools and the optimized kernel variant.
The latter makes it pretty obvious that at least the VMWare hypervisor
is handling it correctly. Otherwise we'd have seen reports by now.
As the issue seems to be restricted to an already identified Qemu bug,
it is overkill to penalize perfectly working systems by making all
hypercalls more expensive than necessary.
So unless there is a compelling argument why the existing hypercall
implementation is broken by design, the trivial one-line fix from Alexey
is addressing the actual root cause (it just needs a big fat comment)
and good enough to cure the regression, no?
Alternatively if you don't trust the QEMU/KVM emulation of the VMWare
backdoor at all then force switch it to the slow path and let VMWare
use the optimized inlines.
Thanks,
tglx
next prev parent reply other threads:[~2026-02-06 10:17 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-01-22 3:18 [PATCH] x86/vmware: Fix hypercall clobbers Josh Poimboeuf
2026-01-22 10:00 ` Alexey Makhalov
2026-01-22 17:40 ` Josh Poimboeuf
2026-01-23 9:47 ` Thorsten Leemhuis
2026-01-23 17:35 ` Josh Poimboeuf
2026-01-30 16:24 ` Thorsten Leemhuis
2026-01-30 16:46 ` Josh Poimboeuf
2026-02-06 10:07 ` Thomas Gleixner [this message]
2026-02-06 16:32 ` Josh Poimboeuf
2026-02-06 17:19 ` Linus Torvalds
2026-02-06 19:08 ` Josh Poimboeuf
2026-02-06 19:57 ` Linus Torvalds
2026-02-06 22:24 ` Josh Poimboeuf
2026-02-06 22:38 ` Linus Torvalds
2026-02-06 23:08 ` Linus Torvalds
2026-02-07 0:46 ` Josh Poimboeuf
2026-02-07 1:05 ` Linus Torvalds
2026-02-12 14:54 ` Paolo Bonzini
2026-02-06 22:41 ` Alexey Makhalov
2026-01-24 1:01 ` Alexey Makhalov
2026-01-24 6:27 ` Thorsten Leemhuis
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=87jywq18yt.ffs@tglx \
--to=tglx@glx-um.de \
--cc=ajay.kaher@broadcom.com \
--cc=alexey.makhalov@broadcom.com \
--cc=bcm-kernel-feedback-list@broadcom.com \
--cc=jforbes@fedoraproject.org \
--cc=jpoimboe@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=peterz@infradead.org \
--cc=regressions@leemhuis.info \
--cc=regressions@lists.linux.dev \
--cc=torvalds@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: 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