[Bug 278234] linsysfs assumes pci domain 0000

From: <bugzilla-noreply_at_freebsd.org>
Date: Mon, 08 Apr 2024 14:26:01 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=278234

--- Comment #3 from Zeev Zilberman <zeev@amazon.com> ---
This seems like a good reference for sysfs:
https://cromwell-intl.com/open-source/sysfs.html

For reference, on a Linux system with 2 domains, a switch connected to each
domain and 2 devices behind one switch and 1 device behind the second switch it
looks like following:

# tree -L 2 -F /sys/bus/pci*
/sys/bus/pci/
├── devices/
│   ├── 0003:00:00.0 -> ../../../devices/pci0003:00/0003:00:00.0/
│   ├── 0003:01:00.0 -> ../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/
│   ├── 0003:02:00.0 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:00.0/
│   ├── 0003:02:00.1 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:00.1/
│   ├── 0003:02:00.2 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:00.2/
│   ├── 0003:02:00.3 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:00.3/
│   ├── 0003:02:00.4 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:00.4/
│   ├── 0003:02:00.5 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:00.5/
│   ├── 0003:02:00.6 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:00.6/
│   ├── 0003:02:00.7 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:00.7/
│   ├── 0003:02:01.0 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:01.0/
│   ├── 0003:02:01.1 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:01.1/
│   ├── 0003:02:01.2 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:01.2/
│   ├── 0003:02:01.3 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:01.3/
│   ├── 0003:02:01.4 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:01.4/
│   ├── 0003:02:01.5 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:01.5/
│   ├── 0003:02:01.6 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:01.6/
│   ├── 0003:02:01.7 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:01.7/
│   ├── 0003:02:02.0 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:02.0/
│   ├── 0003:02:02.1 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:02.1/
│   ├── 0003:02:02.2 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:02.2/
│   ├── 0003:02:02.3 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:02.3/
│   ├── 0003:02:02.4 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:02.4/
│   ├── 0003:02:02.5 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:02.5/
│   ├── 0003:02:02.6 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:02.6/
│   ├── 0003:02:02.7 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:02.7/
│   ├── 0003:02:03.0 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:03.0/
│   ├── 0003:02:03.1 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:03.1/
│   ├── 0003:02:03.2 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:03.2/
│   ├── 0003:02:03.3 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:03.3/
│   ├── 0003:02:03.4 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:03.4/
│   ├── 0003:02:03.5 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:03.5/
│   ├── 0003:02:03.6 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:03.6/
│   ├── 0003:02:03.7 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:03.7/
│   ├── 0003:02:04.0 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:04.0/
│   ├── 0003:02:04.1 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:04.1/
│   ├── 0003:02:04.2 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:04.2/
│   ├── 0003:02:04.3 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:04.3/
│   ├── 0003:02:04.4 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:04.4/
│   ├── 0003:02:04.5 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:04.5/
│   ├── 0003:02:04.6 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:04.6/
│   ├── 0003:02:04.7 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:04.7/
│   ├── 0003:02:05.0 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:05.0/
│   ├── 0003:02:05.1 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:05.1/
│   ├── 0003:02:05.2 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:05.2/
│   ├── 0003:02:05.3 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:05.3/
│   ├── 0003:02:05.4 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:05.4/
│   ├── 0003:02:05.5 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:05.5/
│   ├── 0003:02:05.6 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:05.6/
│   ├── 0003:02:05.7 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:05.7/
│   ├── 0003:02:06.0 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:06.0/
│   ├── 0003:02:06.1 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:06.1/
│   ├── 0003:02:06.2 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:06.2/
│   ├── 0003:02:06.3 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:06.3/
│   ├── 0003:02:06.4 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:06.4/
│   ├── 0003:02:06.5 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:06.5/
│   ├── 0003:02:06.6 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:06.6/
│   ├── 0003:02:06.7 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:06.7/
│   ├── 0003:02:07.0 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:07.0/
│   ├── 0003:02:07.1 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:07.1/
│   ├── 0003:02:07.2 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:07.2/
│   ├── 0003:02:07.3 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:07.3/
│   ├── 0003:02:07.4 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:07.4/
│   ├── 0003:02:07.5 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:07.5/
│   ├── 0003:02:07.6 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:07.6/
│   ├── 0003:02:07.7 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:07.7/
│   ├── 0003:02:08.0 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:08.0/
│   ├── 0003:02:08.1 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:08.1/
│   ├── 0003:02:08.2 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:08.2/
│   ├── 0003:02:08.3 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:08.3/
│   ├── 0003:02:08.4 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:08.4/
│   ├── 0003:02:08.5 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:08.5/
│   ├── 0003:02:08.6 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:08.6/
│   ├── 0003:02:08.7 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:08.7/
│   ├── 0003:02:09.0 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:09.0/
│   ├── 0003:02:09.1 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:09.1/
│   ├── 0003:02:09.2 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:09.2/
│   ├── 0003:02:09.3 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:09.3/
│   ├── 0003:02:09.4 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:09.4/
│   ├── 0003:02:09.5 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:09.5/
│   ├── 0003:02:09.6 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:09.6/
│   ├── 0003:02:09.7 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:09.7/
│   ├── 0003:03:00.0 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:00.0/0003:03:00.0/
│   ├── 0003:04:00.0 ->
../../../devices/pci0003:00/0003:00:00.0/0003:01:00.0/0003:02:00.1/0003:04:00.0/
│   ├── 000b:00:00.0 -> ../../../devices/pci000b:00/000b:00:00.0/
│   ├── 000b:01:00.0 -> ../../../devices/pci000b:00/000b:00:00.0/000b:01:00.0/
│   ├── 000b:02:00.0 ->
../../../devices/pci000b:00/000b:00:00.0/000b:01:00.0/000b:02:00.0/
│   ├── 000b:02:01.0 ->
../../../devices/pci000b:00/000b:00:00.0/000b:01:00.0/000b:02:01.0/
│   ├── 000b:02:02.0 ->
../../../devices/pci000b:00/000b:00:00.0/000b:01:00.0/000b:02:02.0/
│   ├── 000b:02:03.0 ->
../../../devices/pci000b:00/000b:00:00.0/000b:01:00.0/000b:02:03.0/
│   ├── 000b:02:04.0 ->
../../../devices/pci000b:00/000b:00:00.0/000b:01:00.0/000b:02:04.0/
│   ├── 000b:02:05.0 ->
../../../devices/pci000b:00/000b:00:00.0/000b:01:00.0/000b:02:05.0/
│   ├── 000b:02:06.0 ->
../../../devices/pci000b:00/000b:00:00.0/000b:01:00.0/000b:02:06.0/
│   ├── 000b:02:07.0 ->
../../../devices/pci000b:00/000b:00:00.0/000b:01:00.0/000b:02:07.0/
│   ├── 000b:02:08.0 ->
../../../devices/pci000b:00/000b:00:00.0/000b:01:00.0/000b:02:08.0/
│   ├── 000b:02:09.0 ->
../../../devices/pci000b:00/000b:00:00.0/000b:01:00.0/000b:02:09.0/
│   ├── 000b:02:0a.0 ->
../../../devices/pci000b:00/000b:00:00.0/000b:01:00.0/000b:02:0a.0/
│   ├── 000b:02:0b.0 ->
../../../devices/pci000b:00/000b:00:00.0/000b:01:00.0/000b:02:0b.0/
│   ├── 000b:02:0c.0 ->
../../../devices/pci000b:00/000b:00:00.0/000b:01:00.0/000b:02:0c.0/
│   ├── 000b:02:0d.0 ->
../../../devices/pci000b:00/000b:00:00.0/000b:01:00.0/000b:02:0d.0/
│   ├── 000b:02:0e.0 ->
../../../devices/pci000b:00/000b:00:00.0/000b:01:00.0/000b:02:0e.0/
│   ├── 000b:02:0f.0 ->
../../../devices/pci000b:00/000b:00:00.0/000b:01:00.0/000b:02:0f.0/
│   └── 000b:04:00.0 ->
../../../devices/pci000b:00/000b:00:00.0/000b:01:00.0/000b:02:01.0/000b:04:00.0/

-- 
You are receiving this mail because:
You are the assignee for the bug.