| From 684151d7910ba1f9d16808e1cef4757a377a35a5 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Wed, 10 Dec 2025 21:29:07 +0800 |
| Subject: Documentation: tracing: Add PCI tracepoint documentation |
| MIME-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| From: Shuai Xue <xueshuai@linux.alibaba.com> |
| |
| [ Upstream commit 8236fc613d44e59f6736d6c3e9efffaf26ab7f00 ] |
| |
| The PCI tracing system provides tracepoints to monitor critical hardware |
| events that can impact system performance and reliability. Add |
| documentation about it. |
| |
| Signed-off-by: Shuai Xue <xueshuai@linux.alibaba.com> |
| [bhelgaas: squash fixes: |
| https://lore.kernel.org/r/20260108013956.14351-2-bagasdotme@gmail.com |
| https://lore.kernel.org/r/20260108013956.14351-3-bagasdotme@gmail.com] |
| Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> |
| Reviewed-by: Ilpo Jรคrvinen <ilpo.jarvinen@linux.intel.com> |
| Link: https://patch.msgid.link/20251210132907.58799-4-xueshuai@linux.alibaba.com |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| Documentation/trace/events-pci.rst | 74 ++++++++++++++++++++++++++++++ |
| Documentation/trace/index.rst | 1 + |
| 2 files changed, 75 insertions(+) |
| create mode 100644 Documentation/trace/events-pci.rst |
| |
| diff --git a/Documentation/trace/events-pci.rst b/Documentation/trace/events-pci.rst |
| new file mode 100644 |
| index 0000000000000..03ff4ad30ddfa |
| --- /dev/null |
| +++ b/Documentation/trace/events-pci.rst |
| @@ -0,0 +1,74 @@ |
| +.. SPDX-License-Identifier: GPL-2.0 |
| + |
| +=========================== |
| +Subsystem Trace Points: PCI |
| +=========================== |
| + |
| +Overview |
| +======== |
| +The PCI tracing system provides tracepoints to monitor critical hardware events |
| +that can impact system performance and reliability. These events normally show |
| +up here: |
| + |
| + /sys/kernel/tracing/events/pci |
| + |
| +Cf. include/trace/events/pci.h for the events definitions. |
| + |
| +Available Tracepoints |
| +===================== |
| + |
| +pci_hp_event |
| +------------ |
| + |
| +Monitors PCI hotplug events including card insertion/removal and link |
| +state changes. |
| +:: |
| + |
| + pci_hp_event "%s slot:%s, event:%s\n" |
| + |
| +**Event Types**: |
| + |
| +* ``LINK_UP`` - PCIe link established |
| +* ``LINK_DOWN`` - PCIe link lost |
| +* ``CARD_PRESENT`` - Card detected in slot |
| +* ``CARD_NOT_PRESENT`` - Card removed from slot |
| + |
| +**Example Usage**:: |
| + |
| + # Enable the tracepoint |
| + echo 1 > /sys/kernel/debug/tracing/events/pci/pci_hp_event/enable |
| + |
| + # Monitor events (the following output is generated when a device is hotplugged) |
| + cat /sys/kernel/debug/tracing/trace_pipe |
| + irq/51-pciehp-88 [001] ..... 1311.177459: pci_hp_event: 0000:00:02.0 slot:10, event:CARD_PRESENT |
| + |
| + irq/51-pciehp-88 [001] ..... 1311.177566: pci_hp_event: 0000:00:02.0 slot:10, event:LINK_UP |
| + |
| +pcie_link_event |
| +--------------- |
| + |
| +Monitors PCIe link speed changes and provides detailed link status information. |
| +:: |
| + |
| + pcie_link_event "%s type:%d, reason:%d, cur_bus_speed:%d, max_bus_speed:%d, width:%u, flit_mode:%u, status:%s\n" |
| + |
| +**Parameters**: |
| + |
| +* ``type`` - PCIe device type (4=Root Port, etc.) |
| +* ``reason`` - Reason for link change: |
| + |
| + - ``0`` - Link retrain |
| + - ``1`` - Bus enumeration |
| + - ``2`` - Bandwidth notification enable |
| + - ``3`` - Bandwidth notification IRQ |
| + - ``4`` - Hotplug event |
| + |
| + |
| +**Example Usage**:: |
| + |
| + # Enable the tracepoint |
| + echo 1 > /sys/kernel/debug/tracing/events/pci/pcie_link_event/enable |
| + |
| + # Monitor events (the following output is generated when a device is hotplugged) |
| + cat /sys/kernel/debug/tracing/trace_pipe |
| + irq/51-pciehp-88 [001] ..... 381.545386: pcie_link_event: 0000:00:02.0 type:4, reason:4, cur_bus_speed:20, max_bus_speed:23, width:1, flit_mode:0, status:DLLLA |
| diff --git a/Documentation/trace/index.rst b/Documentation/trace/index.rst |
| index 770d3bece22c3..e9bcb9d9f7f3b 100644 |
| --- a/Documentation/trace/index.rst |
| +++ b/Documentation/trace/index.rst |
| @@ -53,6 +53,7 @@ applications. |
| events-power |
| events-nmi |
| events-msr |
| + events-pci |
| boottime-trace |
| histogram |
| histogram-design |
| -- |
| 2.51.0 |
| |