mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Kameron Carr <kameroncarr@linux.microsoft.com>
To: Jiale Yao <yaojiale02@163.com>, Wei Liu <wei.liu@kernel.org>,
	Haiyang Zhang <haiyangz@microsoft.com>,
	Dexuan Cui <decui@microsoft.com>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Stephen Hemminger <stephen@networkplumber.org>,
	linux-hyperv@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2 0/2] Drivers: hv: vmbus: fix dynamic ID races
Date: Fri, 23 Oct 2026 17:42:35 -0700	[thread overview]
Message-ID: <ca9da220-cf8e-4458-8109-5182f240c078@linux.microsoft.com> (raw)
In-Reply-To: <20261021143323.338146-1-yaojiale02@163.com>

On 10/21/2026 7:33 AM, Jiale Yao wrote:
> VMBus dynamic IDs have two races with their sysfs add and remove paths.
> 
> First, new_id_store() checks for an existing ID separately from inserting
> the new entry, allowing concurrent writers to add duplicate GUIDs. Move the
> check and insertion into one critical section.
> 
> Second, matching returns a pointer into the dynamic ID list after dropping
> the lock. A concurrent remove_id write can free that entry before probe uses
> it. Copy the ID while holding the lock and reject probe when a dynamic ID is
> removed between matching and probing.
> 
> The series was found by static analysis and checked with checkpatch.pl. Each
> patch was also checked individually and in series for application to the
> base commit below.
> 
> Jiale Yao (2):
>   Drivers: hv: vmbus: prevent duplicate dynamic IDs
>   Drivers: hv: vmbus: copy dynamic IDs before dropping the lock
> 
> ---
> Changes in v2:
> - Split the dynamic ID insertion TOCTOU into a preparatory patch.
> - Reject probe when the matching ID disappears before the second lookup.
> - Preserve the ID-less hvsock probe path.
> - Use scoped locking and memcpy() for the dynamic ID copy.
> - Document that the device ID is valid only during probe.
> - Cite the corresponding PCI and USB dynamic ID lifetime fixes.
> - Add Cc: stable@vger.kernel.org and use the VMBus subject prefix.
> 
> Link: https://lore.kernel.org/r/20261019085544.1834700-1-yaojiale02@163.com
> 
>  drivers/hv/vmbus_drv.c | 56 +++++++++++++++++++++++++-----------------
>  include/linux/hyperv.h |  1 +
>  2 files changed, 34 insertions(+), 23 deletions(-)
> 
> 
> base-commit: a804c5742bff224d4cb4d25dd383554d598be32b

Performed regression testing in Azure. No issues detected.

Tested-by: Kameron Carr <kameroncarr@linux.microsoft.com>


Besides the one NIT in PATCH 2/2, for the full series,

Reviewed-by: Kameron Carr <kameroncarr@linux.microsoft.com>

-- 
Regards,
Kameron

      parent reply	other threads:[~2026-10-24  0:42 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-21 14:33 Jiale Yao
2026-10-21 14:33 ` [PATCH v2 1/2] Drivers: hv: vmbus: prevent duplicate dynamic IDs Jiale Yao
2026-10-21 14:33 ` [PATCH v2 2/2] Drivers: hv: vmbus: copy dynamic IDs before dropping the lock Jiale Yao
2026-10-24  0:41   ` Kameron Carr
2026-10-24  0:42 ` Kameron Carr [this message]

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=ca9da220-cf8e-4458-8109-5182f240c078@linux.microsoft.com \
    --to=kameroncarr@linux.microsoft.com \
    --cc=decui@microsoft.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=haiyangz@microsoft.com \
    --cc=linux-hyperv@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=stephen@networkplumber.org \
    --cc=wei.liu@kernel.org \
    --cc=yaojiale02@163.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®