The Linux Kernel Mailing List
 help / color / mirror / Atom feed
From: Michal Pecio <michal.pecio@gmail.com>
To: Akshay Gujar <Akshay.Gujar@harman.com>
Cc: <gregkh@linuxfoundation.org>, <linux-kernel@vger.kernel.org>,
	<linux-usb@vger.kernel.org>, <naveen.v@harman.com>,
	<oneukum@suse.com>, <stern@rowland.harvard.edu>
Subject: Re: [PATCH v5 0/3] driver core: add enumeration failure uevent helper
Date: Mon, 27 Jul 2026 01:14:02 +0200	[thread overview]
Message-ID: <20260727011402.4b7df490.michal.pecio@gmail.com> (raw)
In-Reply-To: <20260715114028.3627807-1-Akshay.Gujar@harman.com>

On Wed, 15 Jul 2026 11:40:25 +0000, Akshay Gujar wrote:
> Hotpluggable buses can detect that a device is physically present, but
> enumeration may still fail early due to protocol-level errors. Today,
> such failures are only reported via kernel log messages, with no
> structured userspace notification.
>  
> This series introduces a small, generic helper in the driver core that
> emits a KOBJ_CHANGE uevent when enumeration fails, and wires it into
> the USB hub enumeration failure path as an initial user.
>  
> The USB change is intentionally minimal and serves as an initial user
> of the generic helper. Other subsystems may use the helper
> independently if needed.

FWIW, the alternative OS from Redmond has a completely different
solution, at least for USB: the device is registered normally and
remains tracked for as long as it is connected, but it's flagged
as not working and cannot be used. You may connect a bare resistor
between VBUS and D+ or D-, and it will show up in Device Manager.

Whether that's better is debatable. I'm sure it would take a few
panics to find all the places that assume certain descriptors or
operations to always be available on every device.

OTOH, devices which fail "late" could store whatever information
had been gathered up to that point. Recently there were a few cases
of devices failing enumeration for various reasons and people had
to use debug patches to even find their VID/PID to apply quirks.
(A patch is now in progress to at least log these IDs earlier).

Regards,
Michal

      parent reply	other threads:[~2026-07-26 23:10 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-07-15 11:40 [PATCH v5 0/3] driver core: add enumeration failure uevent helper Akshay Gujar
2026-07-15 11:40 ` [PATCH v5 1/3] driver core: add device_enumeration_failure_notify() helper Akshay Gujar
2026-07-17 10:40   ` Greg KH
2026-07-24 22:22     ` Akshay Gujar
2026-07-15 11:40 ` [PATCH v5 2/3] Documentation: ABI: document DEVICE_ENUMERATION_FAILURE uevent Akshay Gujar
2026-07-17 10:37   ` Greg KH
2026-07-24 22:25     ` Akshay Gujar
2026-07-25  5:21       ` Greg KH
2026-07-15 11:40 ` [PATCH v5 3/3] usb: hub: send enumeration failure uevent Akshay Gujar
2026-07-17 10:35 ` [PATCH v5 0/3] driver core: add enumeration failure uevent helper Greg KH
2026-07-24 22:26   ` Akshay Gujar
2026-07-26 23:14 ` Michal Pecio [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=20260727011402.4b7df490.michal.pecio@gmail.com \
    --to=michal.pecio@gmail.com \
    --cc=Akshay.Gujar@harman.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=naveen.v@harman.com \
    --cc=oneukum@suse.com \
    --cc=stern@rowland.harvard.edu \
    /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