From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-qk1-f226.google.com (mail-qk1-f226.google.com [209.85.222.226]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E875F4964F for ; Sat, 24 Jan 2026 01:01:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.222.226 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769216499; cv=none; b=OvZZrzIxofeZI12Z2gvomPS/bxQ7H+PgV0dRCzam/cJrgezQblHeeLuik61W3vRCtf1nzPugp2ftMg283DopHIG8+TkSZYJfTb2Xj0a1E3XluWVL5DSeqRmP96R1PNHjbbaxa+l3j4mr8hnewDwXQdw3lsEOCPuIH5qzwU5qVx8= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769216499; c=relaxed/simple; bh=Uw3p5i44k2QerDdHC5srVRssQUggLMKwMShZthEOWnM=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=siMaiJcsqIfeNFtzGlGIjk6m589WIAv+HFfQdCHXHCllOVSTOrS5+4/nhI+3wrHT7xu55bO6M2gKNVFoUDtr8lG2EKh3YfNns0Y8HUlt3n7z80Qz/0pmBeLI+BK8yIODmuT119ieOMLoeUao/vpoTYjjyKljwkf0CkmVfXNffuE= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=broadcom.com; spf=fail smtp.mailfrom=broadcom.com; dkim=pass (1024-bit key) header.d=broadcom.com header.i=@broadcom.com header.b=D8OcJYxe; arc=none smtp.client-ip=209.85.222.226 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=broadcom.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=broadcom.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=broadcom.com header.i=@broadcom.com header.b="D8OcJYxe" Received: by mail-qk1-f226.google.com with SMTP id af79cd13be357-8c5384ee23fso321476385a.1 for ; Fri, 23 Jan 2026 17:01:37 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1769216497; x=1769821297; h=content-transfer-encoding:in-reply-to:autocrypt:from :content-language:references:cc:to:subject:user-agent:mime-version :date:message-id:dkim-signature:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=VLK2dGoIOaI5P+vEmyO0jLJyhpsACr0pjnnbpkW/HIM=; b=LRUm+nqaZNz0qKxi8X72Yu+xezx8mAWUEQhF2Ylx4oGnKKgfBlNObPfs/n8XWMX8Vt 1w4u9gTEQBgFldkaIvy5HsFmBPao4PGxcNwVcx9wOpLSIZpJ1dRQ2dCPdcrwLfMA0uWF gqRjt35/ZbYe2XLi5pXxTvUYV5o6rSSYR1CQm4L61mGJXL2fIRAgM8Dj+RZmL1lGur63 LphfbDk5s6UxB0ynmIdtYvSnpRQgh/MR+iXbK/NGBpY8AxxdzQPFpdF+7aszczETdEP2 uqEv0P6oDZ5/VKieurMN6PYTVgn1mGa11Wb0lAPmK2hvF9POPzANQPSJ7hXo341y0jdY PkEg== X-Gm-Message-State: AOJu0Yz8C4UhXWR/K+ALSJ14fJqB3X7X4qXdlX2CEWq7ETwTM635N9MV wckewVzj0pKoWAWvnxazNcc8YlNPAR+n6+urkHE7qkU1dOSg3JJs7pqd0lspX4dPY/JfLuhXEVC i9F4ZlycygkxACTSTnrOWQMdDK4qWK2GyWGQ33vBfgbQTqwg9NvFbE1hXZu9k94lLZuPSy/p7EI t+zvvaoOr0DKx4rJaD5iars0co7XQHIiYc5ZAG55y8ioZfP+Na3crowaNQKFAdoq4VCJF1X4rWE pfuNpV6QMjFEUq+SjmActk= X-Gm-Gg: AZuq6aKm5I+hu8qR/82/9CtE+8sjVrgxEZnNtL2y4A4IMfJQrb1NA30rxvotWICnmES d//HsQhJTpTbjW0TG7hL9UeL3m17k/a+nO7Foxx3+g+XSBiE6xnO8JDzmfnLqlD1tJFhIAtNHsL brE2+mnRu1IZ7a6dgVdNzQ7U27pI4+dIh9a6M2AVLRykg8tRToWsOHeerWTXVON7Sex4gM11dSH UGQ+lkq0LuNzEpAf7E/k8nvZzltne8fvp+M2vfwcKQmNJUoF3l+A9g1U9QHNakizNmTUvaBF6Lq 8adW1VHrJxCx5lmxDYsir4e3VFikhh01DwDOVaZxrnX7su/pMkORdaRVJsuJChiWCoqL+FPkYmb Yb+JRdShF0/vE1mEAx66iV64C1Ouhcp1JZ1IFQA4ZetZZbb8c9l/VdUrNtKgX4IEEF/1pkE0308 eE9Vr8r+WhsvfoGopITPB47d4Z4DmnmmonXps3IUbWtyl9rr+Z X-Received: by 2002:a05:620a:d85:b0:8c6:a4a6:b3e2 with SMTP id af79cd13be357-8c6e2d7ddf0mr606050985a.3.1769216496717; Fri, 23 Jan 2026 17:01:36 -0800 (PST) Received: from smtp-us-east1-p01-i01-si01.dlp.protect.broadcom.com (address-144-49-247-77.dlp.protect.broadcom.com. [144.49.247.77]) by smtp-relay.gmail.com with ESMTPS id 6a1803df08f44-89491821d3asm4737566d6.12.2026.01.23.17.01.35 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 23 Jan 2026 17:01:36 -0800 (PST) X-Relaying-Domain: broadcom.com X-CFilter-Loop: Reflected Received: by mail-ot1-f71.google.com with SMTP id 46e09a7af769-7cfce4218caso9133750a34.2 for ; Fri, 23 Jan 2026 17:01:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; t=1769216495; x=1769821295; darn=vger.kernel.org; h=content-transfer-encoding:in-reply-to:autocrypt:from :content-language:references:cc:to:subject:user-agent:mime-version :date:message-id:from:to:cc:subject:date:message-id:reply-to; bh=VLK2dGoIOaI5P+vEmyO0jLJyhpsACr0pjnnbpkW/HIM=; b=D8OcJYxeqicgf/nwd9HTohYCnHA0YDIoVUrsxrP8CpZC61vN9QY9GsV+w/4cqWJZja JEhAI7d8Wg1vbo8wxq30CexEqlyNRVwKrc1xwGjdo0uy945kbJvBcY4Feja5lzeyyKVV 31EDlk0kFvZfZ7VUMMoE1A2zPLglDCvW70cI8= X-Received: by 2002:a05:6830:4907:b0:7cb:1287:e3d4 with SMTP id 46e09a7af769-7d15a6658eamr2675638a34.36.1769216495205; Fri, 23 Jan 2026 17:01:35 -0800 (PST) X-Received: by 2002:a05:6830:4907:b0:7cb:1287:e3d4 with SMTP id 46e09a7af769-7d15a6658eamr2675628a34.36.1769216494844; Fri, 23 Jan 2026 17:01:34 -0800 (PST) Received: from [10.66.193.70] ([192.19.161.250]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-7d15b3d3340sm2997605a34.23.2026.01.23.17.01.33 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 23 Jan 2026 17:01:34 -0800 (PST) Message-ID: <9c491fa6-f59d-489e-97ce-b364ce76af73@broadcom.com> Date: Fri, 23 Jan 2026 17:01:31 -0800 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH] x86/vmware: Fix hypercall clobbers To: Thorsten Leemhuis , Josh Poimboeuf , x86@kernel.org Cc: linux-kernel@vger.kernel.org, Ajay Kaher , bcm-kernel-feedback-list@broadcom.com, Peter Zijlstra , Justin Forbes , Linux kernel regressions list , Zack Rusin References: <99a9c69a-fc1a-43b7-8d1e-c42d6493b41f@broadcom.com> <73641ce4-9387-48c6-8904-74997f9bb7ac@leemhuis.info> Content-Language: en-US From: Alexey Makhalov Autocrypt: addr=alexey.makhalov@broadcom.com; keydata= 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 EuY0 In-Reply-To: <73641ce4-9387-48c6-8904-74997f9bb7ac@leemhuis.info> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-DetectorID-Processed: b00c1d49-9d2e-4205-b15f-d015386d3d5e On 1/23/26 1:47 AM, Thorsten Leemhuis wrote: > 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). The Linux change 34bf25e820ae ("x86/vmware: Introduce VMware hypercall API") that revealed QEMU issue was introduced not now, but back in June 2024 in v6.11-rc1. Two LTS versions 6.12 and 6.18 have it. This issue can be triggered only for specific hypercall (usually statically inlined) and _only_ if compiler keeps rsi/rdi in use during the hypercall. The proposed kernel fix forces compiler to use memory instead of rsi/rdi registers for _every_ VMware hypercall. Every VMware hypercall caller should pay a penalty for QEMU issue, even if it runs on non qemu or fixed/newer qemu platform. IMHO, user who faced this issue should be given one choice to fix it - update QEMU as the system may not be operable with this combination QEMU+Kernel. If kernel colleagues still believe it should be also solved from the kernel side, then my proposal is to perform precise fix by using wider hypercall just for VMWARE_CMD_ABSPOINTER_DATA: --- a/drivers/input/mouse/vmmouse.c +++ b/drivers/input/mouse/vmmouse.c @@ -145,7 +145,7 @@ static psmouse_ret_t vmmouse_report_events(struct psmouse *psmouse) } /* Now get it */ - status = vmware_hypercall4(VMWARE_CMD_ABSPOINTER_DATA, 4, + status = vmware_hypercall7(VMWARE_CMD_ABSPOINTER_DATA, 4, 0, 0, 0, &x, &y, &z); /* Regards, --Alexey