From: Matthew Wood <thepacketgeek@gmail.com>
To: "Bjorn Helgaas" <bhelgaas@google.com>
Cc: "Mario Limonciello" <superm1@kernel.org>,
"Jonathan Cameron" <Jonathan.Cameron@huawei.com>,
"Thomas Weißschuh" <thomas.weissschuh@linutronix.de>,
linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: [RESEND PATCH v7 0/1] PCI/sysfs: Expose PCIe device serial number
Date: Thu, 21 Aug 2025 16:22:37 -0700 [thread overview]
Message-ID: <20250821232239.599523-1-thepacketgeek@gmail.com> (raw)
Add a single sysfs read-only, admin-only interface for reading PCIe device
serial numbers from userspace, using the same hexadecimal 1-byte dashed
formatting as lspci serial number capability output:
sudo cat /sys/devices/pci0000:c0/0000:c0:01.1/0000:c1:00.0/0000:c2:1f.0/0000:ef:00.0/serial_number
00-80-ee-00-00-00-41-80
If a device doesn't support the serial number capability, the
serial_number sysfs attribute will not be visible.
Comparing serial number format to lspci output:
sudo lspci -vvv -s ef:00.0
ef:00.0 Serial Attached SCSI controller: Broadcom / LSI PCIe Switch management endpoint (rev b0)
Subsystem: Broadcom / LSI Device 0144
...
Capabilities: [100 v1] Device Serial Number 00-80-ee-00-00-00-41-80
...
We have a specific use-case of needing to read the serial number
from an unpriviliged application; this patch exposes the serial number as a
file which means we can change the permissions from an admin context and
allow the unpriviliged userspace app to read the serial number. Otherwise
the serial number cannot be read as it requires both the admin capability
and parsing of the lspci text output which can be fragile and unreliable.
v7:
Updated docs to change kernel introduction date to December 2025 (6.18)
Matthew Wood (1):
PCI/sysfs: Expose PCIe device serial number
Documentation/ABI/testing/sysfs-bus-pci | 9 +++++++++
drivers/pci/pci-sysfs.c | 27 ++++++++++++++++++++++---
2 files changed, 33 insertions(+), 3 deletions(-)
--
2.50.1
next reply other threads:[~2025-08-21 23:22 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-08-21 23:22 Matthew Wood [this message]
2025-08-21 23:22 ` [RESEND PATCH v7 1/1] PCI/sysfs: Expose PCIe device serial number Matthew Wood
2025-08-22 0:04 ` Keith Busch
2025-08-27 1:34 ` Hans Zhang
2025-08-27 19:39 ` Keith Busch
-- strict thread matches above, loose matches on Subject: below --
2025-08-11 17:39 [RESEND PATCH v7 0/1] " Matthew Wood
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=20250821232239.599523-1-thepacketgeek@gmail.com \
--to=thepacketgeek@gmail.com \
--cc=Jonathan.Cameron@huawei.com \
--cc=bhelgaas@google.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=superm1@kernel.org \
--cc=thomas.weissschuh@linutronix.de \
/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;
as well as URLs for NNTP newsgroup(s).