Initialize for pciutils
This commit is contained in:
commit
40c64adcf0
17 changed files with 1867 additions and 0 deletions
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
|
@ -0,0 +1,2 @@
|
|||
pciutils-3.5.6.tar.sign
|
||||
pciutils-3.5.6.tar.xz
|
2
.pciutils.metadata
Normal file
2
.pciutils.metadata
Normal file
|
@ -0,0 +1,2 @@
|
|||
24e4114efa4df3bb36ef54f4865ac5cfc4a3189533d2d24c7837568a2891ed59 pciutils-3.5.6.tar.sign
|
||||
f2705b2623b5614906a250067ab69339fdcd9d8183a910a3cbf0b11299b53a79 pciutils-3.5.6.tar.xz
|
7
baselibs.conf
Normal file
7
baselibs.conf
Normal file
|
@ -0,0 +1,7 @@
|
|||
libpci3
|
||||
obsoletes "pciutils-<targettype> < <version>"
|
||||
provides "pciutils-<targettype> = <version>"
|
||||
pciutils-devel
|
||||
requires -pciutils-<targettype>
|
||||
requires "libpci3-<targettype> = <version>"
|
||||
|
167
lspci-Fixed-buffer-overflows-in-ls-tree.c.patch
Normal file
167
lspci-Fixed-buffer-overflows-in-ls-tree.c.patch
Normal file
|
@ -0,0 +1,167 @@
|
|||
From 76d47191f9274991059a41e19e1999a12c0d3416 Mon Sep 17 00:00:00 2001
|
||||
From: Martin Mares <mj@ucw.cz>
|
||||
Date: Wed, 22 Jan 2020 09:49:18 +0100
|
||||
Subject: [PATCH] Fixed buffer overflows in ls-tree.c
|
||||
|
||||
As reported in GitHub issue #24, tree dumping mode can smash the stack
|
||||
if the hierarchy of buses is too deep.
|
||||
|
||||
Increased line buffer size to 1024 and switched to use of snprintf
|
||||
everywhere, so that in the worst case, the line is truncated.
|
||||
|
||||
As snprintf can be problematic on obscure platforms, I wrapped it
|
||||
in tree_printf(), so that we can add #ifdefs should problems arise.
|
||||
---
|
||||
lib/sysdep.h | 2 ++
|
||||
ls-tree.c | 65 +++++++++++++++++++++++++++++++++++-----------------
|
||||
2 files changed, 47 insertions(+), 22 deletions(-)
|
||||
|
||||
diff --git a/lib/sysdep.h b/lib/sysdep.h
|
||||
index e525dc4..1a5cb16 100644
|
||||
--- a/lib/sysdep.h
|
||||
+++ b/lib/sysdep.h
|
||||
@@ -9,9 +9,11 @@
|
||||
#ifdef __GNUC__
|
||||
#define UNUSED __attribute__((unused))
|
||||
#define NONRET __attribute__((noreturn))
|
||||
+#define FORMAT_CHECK(x,y,z) __attribute__((format(x,y,z)))
|
||||
#else
|
||||
#define UNUSED
|
||||
#define NONRET
|
||||
+#define FORMAT_CHECK(x,y,z)
|
||||
#define inline
|
||||
#endif
|
||||
|
||||
diff --git a/ls-tree.c b/ls-tree.c
|
||||
index 6995dd2..aeb4087 100644
|
||||
--- a/ls-tree.c
|
||||
+++ b/ls-tree.c
|
||||
@@ -6,6 +6,7 @@
|
||||
* Can be freely distributed and used under the terms of the GNU GPL.
|
||||
*/
|
||||
|
||||
+#include <stdarg.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
@@ -167,6 +168,31 @@
|
||||
|
||||
static void show_tree_bridge(struct bridge *, char *, char *);
|
||||
|
||||
+#define LINE_BUF_SIZE 1024
|
||||
+
|
||||
+static char * FORMAT_CHECK(printf, 3, 4)
|
||||
+tree_printf(char *line, char *p, char *fmt, ...)
|
||||
+{
|
||||
+ va_list args;
|
||||
+ char *end = line + LINE_BUF_SIZE - 2;
|
||||
+
|
||||
+ if (p >= end)
|
||||
+ return p;
|
||||
+
|
||||
+ va_start(args, fmt);
|
||||
+ int res = vsnprintf(p, end - p, fmt, args);
|
||||
+ if (res < 0)
|
||||
+ {
|
||||
+ /* Ancient C libraries return -1 on overflow */
|
||||
+ p += strlen(p);
|
||||
+ }
|
||||
+ else
|
||||
+ p += res;
|
||||
+
|
||||
+ va_end(args);
|
||||
+ return p;
|
||||
+}
|
||||
+
|
||||
static void
|
||||
show_tree_dev(struct device *d, char *line, char *p)
|
||||
{
|
||||
@@ -174,19 +200,19 @@
|
||||
struct bridge *b;
|
||||
char namebuf[256];
|
||||
|
||||
- p += sprintf(p, "%02x.%x", q->dev, q->func);
|
||||
+ p = tree_printf(line, p, "%02x.%x", q->dev, q->func);
|
||||
for (b=&host_bridge; b; b=b->chain)
|
||||
if (b->br_dev == d)
|
||||
{
|
||||
if (b->secondary == b->subordinate)
|
||||
- p += sprintf(p, "-[%02x]-", b->secondary);
|
||||
+ p = tree_printf(line, p, "-[%02x]-", b->secondary);
|
||||
else
|
||||
- p += sprintf(p, "-[%02x-%02x]-", b->secondary, b->subordinate);
|
||||
+ p = tree_printf(line, p, "-[%02x-%02x]-", b->secondary, b->subordinate);
|
||||
show_tree_bridge(b, line, p);
|
||||
return;
|
||||
}
|
||||
if (verbose)
|
||||
- p += sprintf(p, " %s",
|
||||
+ p = tree_printf(line, p, " %s",
|
||||
pci_lookup_name(pacc, namebuf, sizeof(namebuf),
|
||||
PCI_LOOKUP_VENDOR | PCI_LOOKUP_DEVICE,
|
||||
q->vendor_id, q->device_id));
|
||||
@@ -200,8 +226,7 @@
|
||||
print_it(line, p);
|
||||
else if (!b->first_dev->next)
|
||||
{
|
||||
- *p++ = '-';
|
||||
- *p++ = '-';
|
||||
+ p = tree_printf(line, p, "--");
|
||||
show_tree_dev(b->first_dev, line, p);
|
||||
}
|
||||
else
|
||||
@@ -209,25 +234,23 @@
|
||||
struct device *d = b->first_dev;
|
||||
while (d->next)
|
||||
{
|
||||
- p[0] = '+';
|
||||
- p[1] = '-';
|
||||
- show_tree_dev(d, line, p+2);
|
||||
+ char *p2 = tree_printf(line, p, "+-");
|
||||
+ show_tree_dev(d, line, p2);
|
||||
d = d->next;
|
||||
}
|
||||
- p[0] = '\\';
|
||||
- p[1] = '-';
|
||||
- show_tree_dev(d, line, p+2);
|
||||
+ p = tree_printf(line, p, "\\-");
|
||||
+ show_tree_dev(d, line, p);
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
show_tree_bridge(struct bridge *b, char *line, char *p)
|
||||
{
|
||||
- *p++ = '-';
|
||||
+ p = tree_printf(line, p, "-");
|
||||
if (!b->first_bus->sibling)
|
||||
{
|
||||
if (b == &host_bridge)
|
||||
- p += sprintf(p, "[%04x:%02x]-", b->domain, b->first_bus->number);
|
||||
+ p = tree_printf(line, p, "[%04x:%02x]-", b->domain, b->first_bus->number);
|
||||
show_tree_bus(b->first_bus, line, p);
|
||||
}
|
||||
else
|
||||
@@ -237,11 +260,11 @@
|
||||
|
||||
while (u->sibling)
|
||||
{
|
||||
- k = p + sprintf(p, "+-[%04x:%02x]-", u->domain, u->number);
|
||||
+ k = tree_printf(line, p, "+-[%04x:%02x]-", u->domain, u->number);
|
||||
show_tree_bus(u, line, k);
|
||||
u = u->sibling;
|
||||
}
|
||||
- k = p + sprintf(p, "\\-[%04x:%02x]-", u->domain, u->number);
|
||||
+ k = tree_printf(line, p, "\\-[%04x:%02x]-", u->domain, u->number);
|
||||
show_tree_bus(u, line, k);
|
||||
}
|
||||
}
|
||||
@@ -249,7 +272,7 @@
|
||||
void
|
||||
show_forest(void)
|
||||
{
|
||||
- char line[256];
|
||||
+ char line[LINE_BUF_SIZE];
|
||||
|
||||
grow_tree();
|
||||
show_tree_bridge(&host_bridge, line, line);
|
12
pciutils-3.1.9_pkgconfig.patch
Normal file
12
pciutils-3.1.9_pkgconfig.patch
Normal file
|
@ -0,0 +1,12 @@
|
|||
Index: pciutils-3.3.1/lib/libpci.pc.in
|
||||
===================================================================
|
||||
--- pciutils-3.3.1.orig/lib/libpci.pc.in
|
||||
+++ pciutils-3.3.1/lib/libpci.pc.in
|
||||
@@ -6,6 +6,5 @@ idsdir=@IDSDIR@
|
||||
Name: libpci
|
||||
Description: libpci
|
||||
Version: @VERSION@
|
||||
-Libs: -L${libdir} -lpci
|
||||
+Libs: -lpci @LDLIBS@
|
||||
Libs.private: @LDLIBS@
|
||||
-Cflags: -I${includedir}
|
40
pciutils-3.2.0_update-dist.patch
Normal file
40
pciutils-3.2.0_update-dist.patch
Normal file
|
@ -0,0 +1,40 @@
|
|||
Index: pciutils-3.3.1/Makefile
|
||||
===================================================================
|
||||
--- pciutils-3.3.1.orig/Makefile
|
||||
+++ pciutils-3.3.1/Makefile
|
||||
@@ -88,7 +88,7 @@ lspci: LDLIBS+=$(LIBKMOD_LIBS)
|
||||
ls-kernel.o: CFLAGS+=$(LIBKMOD_CFLAGS)
|
||||
|
||||
update-pciids: update-pciids.sh
|
||||
- sed <$< >$@ "s@^DEST=.*@DEST=$(IDSDIR)/$(PCI_IDS)@;s@^PCI_COMPRESSED_IDS=.*@PCI_COMPRESSED_IDS=$(PCI_COMPRESSED_IDS)@"
|
||||
+ sed <$< >$@ "s@^DEST=.*@DEST=$(IDSDIR)/pci.ids.d/pci.ids.dist@;s@^PCI_COMPRESSED_IDS=.*@PCI_COMPRESSED_IDS=@"
|
||||
chmod +x $@
|
||||
|
||||
# The example of use of libpci
|
||||
Index: pciutils-3.3.1/update-pciids.sh
|
||||
===================================================================
|
||||
--- pciutils-3.3.1.orig/update-pciids.sh
|
||||
+++ pciutils-3.3.1/update-pciids.sh
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
set -e
|
||||
SRC="http://pci-ids.ucw.cz/v2.2/pci.ids"
|
||||
-DEST=pci.ids
|
||||
+DEST=pci.ids.d/pci.ids.dist
|
||||
PCI_COMPRESSED_IDS=
|
||||
GREP=grep
|
||||
|
||||
@@ -66,6 +66,13 @@ fi
|
||||
mv $DEST.neww $DEST
|
||||
rm $DEST.new
|
||||
|
||||
+if [ -x /usr/bin/merge-pciids -a -x /usr/bin/perl ]; then
|
||||
+ merge-pciids
|
||||
+else
|
||||
+ echo "WARNING: merge-pciids or perl missing"
|
||||
+ cp -p $DEST /usr/share/pci.ids
|
||||
+fi
|
||||
+
|
||||
# Older versions did not compress the ids file, so let's make sure we
|
||||
# clean that up.
|
||||
if [ ${DEST%.gz} != ${DEST} ] ; then
|
33
pciutils-Add-PCIe-5.0-data-rate-32-GT-s-support.patch
Normal file
33
pciutils-Add-PCIe-5.0-data-rate-32-GT-s-support.patch
Normal file
|
@ -0,0 +1,33 @@
|
|||
From caca31a0eea41c7b051705704c1158fddc02fbd2 Mon Sep 17 00:00:00 2001
|
||||
From: Gustavo Pimentel <Gustavo.Pimentel@synopsys.com>
|
||||
Date: Tue, 4 Jun 2019 18:24:46 +0200
|
||||
Subject: [PATCH] lspci: Add PCIe 5.0 data rate (32 GT/s) support
|
||||
|
||||
This enables "lspci" to show PCIe 5.0 data rate (32 GT/s) properly
|
||||
according to the contents in register PCI_EXP_LNKCAP, PCI_EXP_LNKSTA
|
||||
and PCI_EXP_LNKCTL2.
|
||||
|
||||
Signed-off-by: Gustavo Pimentel <gustavo.pimentel@synopsys.com>
|
||||
|
||||
Index: pciutils-3.5.6/ls-caps.c
|
||||
===================================================================
|
||||
--- pciutils-3.5.6.orig/ls-caps.c
|
||||
+++ pciutils-3.5.6/ls-caps.c
|
||||
@@ -728,6 +728,8 @@ static char *link_speed(int speed)
|
||||
return "8GT/s";
|
||||
case 4:
|
||||
return "16GT/s";
|
||||
+ case 5:
|
||||
+ return "32GT/s";
|
||||
default:
|
||||
return "unknown";
|
||||
}
|
||||
@@ -1059,6 +1061,8 @@ static const char *cap_express_link2_spe
|
||||
return "8GT/s";
|
||||
case 4:
|
||||
return "16GT/s";
|
||||
+ case 5:
|
||||
+ return "32GT/s";
|
||||
default:
|
||||
return "Unknown";
|
||||
}
|
32
pciutils-Add-PCIe-6.0-data-rate-64-GT-s-support.patch
Normal file
32
pciutils-Add-PCIe-6.0-data-rate-64-GT-s-support.patch
Normal file
|
@ -0,0 +1,32 @@
|
|||
From 5bdf63b6b1bc35b59c4b3f47f7ca83ca1868155b Mon Sep 17 00:00:00 2001
|
||||
From: Gustavo Pimentel <Gustavo.Pimentel@synopsys.com>
|
||||
Date: Wed, 18 Nov 2020 23:56:52 +0100
|
||||
Subject: [PATCH] lspci: Add PCIe 6.0 data rate (64 GT/s) support
|
||||
|
||||
This enables "lspci" to show PCIe 6.0 data rate (64 GT/s) properly
|
||||
according to the contents in register PCI_EXP_LNKCAP, PCI_EXP_LNKSTA
|
||||
and PCI_EXP_LNKCTL2.
|
||||
|
||||
Signed-off-by: Gustavo Pimentel <gustavo.pimentel@synopsys.com>
|
||||
Index: pciutils-3.5.6/ls-caps.c
|
||||
===================================================================
|
||||
--- pciutils-3.5.6.orig/ls-caps.c
|
||||
+++ pciutils-3.5.6/ls-caps.c
|
||||
@@ -730,6 +730,8 @@ static char *link_speed(int speed)
|
||||
return "16GT/s";
|
||||
case 5:
|
||||
return "32GT/s";
|
||||
+ case 6:
|
||||
+ return "64GT/s";
|
||||
default:
|
||||
return "unknown";
|
||||
}
|
||||
@@ -1063,6 +1065,8 @@ static const char *cap_express_link2_spe
|
||||
return "16GT/s";
|
||||
case 5:
|
||||
return "32GT/s";
|
||||
+ case 6:
|
||||
+ return "64GT/s";
|
||||
default:
|
||||
return "Unknown";
|
||||
}
|
52
pciutils-Add-decoding-of-vendor-specific-VPD-fields.patch
Normal file
52
pciutils-Add-decoding-of-vendor-specific-VPD-fields.patch
Normal file
|
@ -0,0 +1,52 @@
|
|||
From eff7cc9ee7f8b6efeb7d5854abbcfb8cdc486a95 Mon Sep 17 00:00:00 2001
|
||||
From: "return.0" <return.0@me.com>
|
||||
Date: Mon, 18 Jun 2018 17:00:31 -0500
|
||||
Subject: [PATCH] pciutils: Add decoding of vendor specific VPD fields
|
||||
|
||||
References: bsc#1170554 ltc#185587
|
||||
Upstream: v3.6.0
|
||||
Git-commit: eff7cc9ee7f8b6efeb7d5854abbcfb8cdc486a95
|
||||
|
||||
IBM has defined several VPD fields that are not part of the PCI
|
||||
spec, but are frequently used on embedded and pluggable pcie
|
||||
adapters.
|
||||
|
||||
Since these fields are "Unknown", they are listed in hex
|
||||
and less readable.
|
||||
|
||||
This patch adds commonly used vendor specific VPD keywords
|
||||
described in "Table 160. LoPAPR VPD Fields" of the Linux on Power
|
||||
Architecture Platform Reference (LoPAPR).
|
||||
|
||||
Signed-off-by: John Walthour <return.0@me.com>
|
||||
---
|
||||
ls-vpd.c | 13 +++++++++++++
|
||||
1 file changed, 13 insertions(+)
|
||||
|
||||
diff --git a/ls-vpd.c b/ls-vpd.c
|
||||
index b79abfc..cc279c3 100644
|
||||
--- a/ls-vpd.c
|
||||
+++ b/ls-vpd.c
|
||||
@@ -41,6 +41,19 @@ static const struct vpd_item {
|
||||
{ 'Y','A', F_TEXT, "Asset tag" },
|
||||
{ 'V', 0 , F_TEXT, "Vendor specific" },
|
||||
{ 'Y', 0 , F_TEXT, "System specific" },
|
||||
+/*
|
||||
+ * The following VPD keywords are vendor specific or not part of any
|
||||
+ * current PCI-SIG specification
|
||||
+ */
|
||||
+ { 'C','C', F_TEXT, "CCIN" },
|
||||
+ { 'F','C', F_TEXT, "Feature code" },
|
||||
+ { 'F','N', F_TEXT, "FRU" },
|
||||
+ { 'N','A', F_TEXT, "Network address" },
|
||||
+ { 'R','M', F_TEXT, "Firmware version" },
|
||||
+ { 'Z', 0 , F_TEXT, "Product specific" },
|
||||
+/*
|
||||
+ * End vendor specific VPD keywords
|
||||
+ */
|
||||
{ 0, 0 , F_BINARY, "Unknown" }
|
||||
};
|
||||
|
||||
--
|
||||
2.26.2
|
||||
|
47
pciutils-VPD-Cleanup.patch
Normal file
47
pciutils-VPD-Cleanup.patch
Normal file
|
@ -0,0 +1,47 @@
|
|||
From d9b702cde8550b245defa130f3d93a5b34ae68d7 Mon Sep 17 00:00:00 2001
|
||||
From: Martin Mares <mj@ucw.cz>
|
||||
Date: Tue, 19 Jun 2018 11:44:42 +0200
|
||||
Subject: [PATCH] VPD: Cleanup
|
||||
|
||||
References: bsc#1170554 ltc#185587
|
||||
Upstream: v3.6.0
|
||||
Git-commit: d9b702cde8550b245defa130f3d93a5b34ae68d7
|
||||
|
||||
---
|
||||
ls-vpd.c | 20 +++++++-------------
|
||||
1 file changed, 7 insertions(+), 13 deletions(-)
|
||||
|
||||
diff --git a/ls-vpd.c b/ls-vpd.c
|
||||
index cc279c3..37217f0 100644
|
||||
--- a/ls-vpd.c
|
||||
+++ b/ls-vpd.c
|
||||
@@ -41,19 +41,13 @@ static const struct vpd_item {
|
||||
{ 'Y','A', F_TEXT, "Asset tag" },
|
||||
{ 'V', 0 , F_TEXT, "Vendor specific" },
|
||||
{ 'Y', 0 , F_TEXT, "System specific" },
|
||||
-/*
|
||||
- * The following VPD keywords are vendor specific or not part of any
|
||||
- * current PCI-SIG specification
|
||||
- */
|
||||
- { 'C','C', F_TEXT, "CCIN" },
|
||||
- { 'F','C', F_TEXT, "Feature code" },
|
||||
- { 'F','N', F_TEXT, "FRU" },
|
||||
- { 'N','A', F_TEXT, "Network address" },
|
||||
- { 'R','M', F_TEXT, "Firmware version" },
|
||||
- { 'Z', 0 , F_TEXT, "Product specific" },
|
||||
-/*
|
||||
- * End vendor specific VPD keywords
|
||||
- */
|
||||
+ /* Non-standard extensions */
|
||||
+ { 'C','C', F_TEXT, "CCIN" },
|
||||
+ { 'F','C', F_TEXT, "Feature code" },
|
||||
+ { 'F','N', F_TEXT, "FRU" },
|
||||
+ { 'N','A', F_TEXT, "Network address" },
|
||||
+ { 'R','M', F_TEXT, "Firmware version" },
|
||||
+ { 'Z', 0 , F_TEXT, "Product specific" },
|
||||
{ 0, 0 , F_BINARY, "Unknown" }
|
||||
};
|
||||
|
||||
--
|
||||
2.26.2
|
||||
|
|
@ -0,0 +1,57 @@
|
|||
From 726b641b0dd842b920f7e1c985cb4a22494fe466 Mon Sep 17 00:00:00 2001
|
||||
From: Martin Mares <mj@ucw.cz>
|
||||
Date: Sat, 25 Jan 2020 20:42:03 +0100
|
||||
Subject: [PATCH] VPD: When printing item IDs, escape non-ASCII characters
|
||||
|
||||
References: bsc#1170554 ltc#185587
|
||||
Upstream: v3.6.4
|
||||
Git-commit: 726b641b0dd842b920f7e1c985cb4a22494fe466
|
||||
|
||||
---
|
||||
ls-vpd.c | 12 ++++++++----
|
||||
1 file changed, 8 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/ls-vpd.c b/ls-vpd.c
|
||||
index 37217f0..92627e4 100644
|
||||
--- a/ls-vpd.c
|
||||
+++ b/ls-vpd.c
|
||||
@@ -10,6 +10,7 @@
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
+#include <string.h>
|
||||
|
||||
#include "lspci.h"
|
||||
|
||||
@@ -156,13 +157,14 @@ cap_vpd(struct device *d)
|
||||
{
|
||||
word read_len;
|
||||
const struct vpd_item *item;
|
||||
- byte id1, id2;
|
||||
+ byte id[2], id1, id2;
|
||||
|
||||
if (!read_vpd(d, res_addr + part_pos, buf, 3, &csum))
|
||||
break;
|
||||
part_pos += 3;
|
||||
- id1 = buf[0];
|
||||
- id2 = buf[1];
|
||||
+ memcpy(id, buf, 2);
|
||||
+ id1 = id[0];
|
||||
+ id2 = id[1];
|
||||
part_len = buf[2];
|
||||
if (part_len > res_len - part_pos)
|
||||
break;
|
||||
@@ -178,7 +180,9 @@ cap_vpd(struct device *d)
|
||||
if (!read_vpd(d, res_addr + part_pos, buf, read_len, &csum))
|
||||
break;
|
||||
|
||||
- printf("\t\t\t[%c%c] %s: ", id1, id2, item->name);
|
||||
+ printf("\t\t\t[");
|
||||
+ print_vpd_string(id, 2);
|
||||
+ printf("] %s: ", item->name);
|
||||
|
||||
switch (item->format)
|
||||
{
|
||||
--
|
||||
2.26.2
|
||||
|
420
pciutils-add-decode-support-for-RCECs.patch
Normal file
420
pciutils-add-decode-support-for-RCECs.patch
Normal file
|
@ -0,0 +1,420 @@
|
|||
Index: pciutils-3.5.6/lib/header.h
|
||||
===================================================================
|
||||
--- pciutils-3.5.6.orig/lib/header.h 2017-04-29 20:05:07.000000000 +0200
|
||||
+++ pciutils-3.5.6/lib/header.h 2020-10-29 09:31:24.947599754 +0100
|
||||
@@ -216,7 +216,7 @@
|
||||
#define PCI_EXT_CAP_ID_PB 0x04 /* Power Budgeting */
|
||||
#define PCI_EXT_CAP_ID_RCLINK 0x05 /* Root Complex Link Declaration */
|
||||
#define PCI_EXT_CAP_ID_RCILINK 0x06 /* Root Complex Internal Link Declaration */
|
||||
-#define PCI_EXT_CAP_ID_RCECOLL 0x07 /* Root Complex Event Collector */
|
||||
+#define PCI_EXT_CAP_ID_RCEC 0x07 /* Root Complex Event Collector */
|
||||
#define PCI_EXT_CAP_ID_MFVC 0x08 /* Multi-Function Virtual Channel */
|
||||
#define PCI_EXT_CAP_ID_VC2 0x09 /* Virtual Channel (2nd ID) */
|
||||
#define PCI_EXT_CAP_ID_RBCB 0x0a /* Root Bridge Control Block */
|
||||
@@ -1007,6 +1007,12 @@
|
||||
#define PCI_RCLINK_LINK_ADDR 8 /* Link Entry: Address (64-bit) */
|
||||
#define PCI_RCLINK_LINK_SIZE 16 /* Link Entry: sizeof */
|
||||
|
||||
+/* Root Complex Event Collector Endpoint Association */
|
||||
+#define PCI_RCEC_EP_CAP_VER(reg) (((reg) >> 16) & 0xf)
|
||||
+#define PCI_RCEC_BUSN_REG_VER 0x02 /* as per PCIe sec 7.9.10.1 */
|
||||
+#define PCI_RCEC_RCIEP_BMAP 0x0004 /* as per PCIe sec 7.9.10.2 */
|
||||
+#define PCI_RCEC_BUSN_REG 0x0008 /* as per PCIe sec 7.9.10.3 */
|
||||
+
|
||||
/* PCIe Vendor-Specific Capability */
|
||||
#define PCI_EVNDR_HEADER 4 /* Vendor-Specific Header */
|
||||
#define PCI_EVNDR_REGISTERS 8 /* Vendor-Specific Registers */
|
||||
Index: pciutils-3.5.6/ls-ecaps.c
|
||||
===================================================================
|
||||
--- pciutils-3.5.6.orig/ls-ecaps.c 2017-04-29 20:05:07.000000000 +0200
|
||||
+++ pciutils-3.5.6/ls-ecaps.c 2020-10-29 09:31:24.947599754 +0100
|
||||
@@ -650,6 +650,61 @@ cap_l1pm(struct device *d, int where)
|
||||
}
|
||||
|
||||
static void
|
||||
+cap_rcec(struct device *d, int where)
|
||||
+{
|
||||
+ printf("Root Complex Event Collector Endpoint Association\n");
|
||||
+ if (verbose < 2)
|
||||
+ return;
|
||||
+
|
||||
+ if (!config_fetch(d, where, 12))
|
||||
+ return;
|
||||
+
|
||||
+ u32 hdr = get_conf_long(d, where);
|
||||
+ byte cap_ver = PCI_RCEC_EP_CAP_VER(hdr);
|
||||
+ u32 bmap = get_conf_long(d, where + PCI_RCEC_RCIEP_BMAP);
|
||||
+ printf("\t\tRCiEPBitmap: ");
|
||||
+ if (bmap)
|
||||
+ {
|
||||
+ int prevmatched=0;
|
||||
+ int adjcount=0;
|
||||
+ int prevdev=0;
|
||||
+ printf("RCiEP at Device(s):");
|
||||
+ for (int dev=0; dev < 32; dev++)
|
||||
+ {
|
||||
+ if (BITS(bmap, dev, 1))
|
||||
+ {
|
||||
+ if (!adjcount)
|
||||
+ printf("%s %u", (prevmatched) ? "," : "", dev);
|
||||
+ adjcount++;
|
||||
+ prevdev=dev;
|
||||
+ prevmatched=1;
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ if (adjcount > 1)
|
||||
+ printf("-%u", prevdev);
|
||||
+ adjcount=0;
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
+ else
|
||||
+ printf("%s", (verbose > 2) ? "00000000 [none]" : "[none]");
|
||||
+ printf("\n");
|
||||
+
|
||||
+ if (cap_ver < PCI_RCEC_BUSN_REG_VER)
|
||||
+ return;
|
||||
+
|
||||
+ u32 busn = get_conf_long(d, where + PCI_RCEC_BUSN_REG);
|
||||
+ u8 lastbusn = BITS(busn, 16, 8);
|
||||
+ u8 nextbusn = BITS(busn, 8, 8);
|
||||
+
|
||||
+ if ((lastbusn == 0x00) && (nextbusn == 0xff))
|
||||
+ printf("\t\tAssociatedBusNumbers: %s\n", (verbose > 2) ? "ff-00 [none]" : "[none]");
|
||||
+ else
|
||||
+ printf("\t\tAssociatedBusNumbers: %02x-%02x\n", nextbusn, lastbusn );
|
||||
+}
|
||||
+
|
||||
+static void
|
||||
cap_ptm(struct device *d, int where)
|
||||
{
|
||||
u32 buff;
|
||||
@@ -759,8 +814,8 @@ show_ext_caps(struct device *d, int type
|
||||
case PCI_EXT_CAP_ID_RCILINK:
|
||||
printf("Root Complex Internal Link <?>\n");
|
||||
break;
|
||||
- case PCI_EXT_CAP_ID_RCECOLL:
|
||||
- printf("Root Complex Event Collector <?>\n");
|
||||
+ case PCI_EXT_CAP_ID_RCEC:
|
||||
+ cap_rcec(d, where);
|
||||
break;
|
||||
case PCI_EXT_CAP_ID_MFVC:
|
||||
printf("Multi-Function Virtual Channel <?>\n");
|
||||
Index: pciutils-3.5.6/setpci.c
|
||||
===================================================================
|
||||
--- pciutils-3.5.6.orig/setpci.c 2016-10-03 21:49:09.000000000 +0200
|
||||
+++ pciutils-3.5.6/setpci.c 2020-10-29 09:34:12.540466140 +0100
|
||||
@@ -293,7 +293,7 @@ static const struct reg_name pci_reg_nam
|
||||
{ 0x20004, 0, 0, "ECAP_PB" },
|
||||
{ 0x20005, 0, 0, "ECAP_RCLINK" },
|
||||
{ 0x20006, 0, 0, "ECAP_RCILINK" },
|
||||
- { 0x20007, 0, 0, "ECAP_RCECOLL" },
|
||||
+ { 0x20007, 0, 0, "ECAP_RCEC" },
|
||||
{ 0x20008, 0, 0, "ECAP_MFVC" },
|
||||
{ 0x2000a, 0, 0, "ECAP_RBCB" },
|
||||
{ 0x2000b, 0, 0, "ECAP_VNDR" },
|
||||
Index: pciutils-3.5.6/tests/cap-rcec
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ pciutils-3.5.6/tests/cap-rcec 2020-10-29 09:31:24.947599754 +0100
|
||||
@@ -0,0 +1,299 @@
|
||||
+6a:00.4 Generic system peripheral [0807]: Intel Corporation Device 0b23
|
||||
+ Subsystem: Intel Corporation Device 0000
|
||||
+ Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx-
|
||||
+ Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
|
||||
+ Interrupt: pin A routed to IRQ 255
|
||||
+ NUMA node: 0
|
||||
+ Capabilities: [40] Express (v2) Root Complex Event Collector, MSI 00
|
||||
+ DevCap: MaxPayload 512 bytes, PhantFunc 0
|
||||
+ ExtTag- RBE-
|
||||
+ DevCtl: CorrErr+ NonFatalErr+ FatalErr+ UnsupReq-
|
||||
+ RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop-
|
||||
+ MaxPayload 128 bytes, MaxReadReq 128 bytes
|
||||
+ DevSta: CorrErr- NonFatalErr- FatalErr- UnsupReq- AuxPwr- TransPend-
|
||||
+ RootCap: CRSVisible-
|
||||
+ RootCtl: ErrCorrectable+ ErrNon-Fatal+ ErrFatal+ PMEIntEna- CRSVisible-
|
||||
+ RootSta: PME ReqID 0000, PMEStatus- PMEPending-
|
||||
+ DevCap2: Completion Timeout: Not Supported, TimeoutDis- NROPrPrP- LTR-
|
||||
+ 10BitTagComp- 10BitTagReq- OBFF Not Supported, ExtFmt- EETLPPrefix-
|
||||
+ EmergencyPowerReduction Not Supported, EmergencyPowerReductionInit-
|
||||
+ FRS-
|
||||
+ DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- LTR- OBFF Disabled,
|
||||
+ Capabilities: [80] Power Management version 3
|
||||
+ Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
|
||||
+ Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
|
||||
+ Capabilities: [90] MSI: Enable- Count=1/1 Maskable+ 64bit-
|
||||
+ Address: 00000000 Data: 0000
|
||||
+ Masking: 00000000 Pending: 00000000
|
||||
+ Capabilities: [100 v1] Advanced Error Reporting
|
||||
+ UESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
|
||||
+ UEMsk: DLP- SDES+ TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq+ ACSViol-
|
||||
+ UESvrt: DLP+ SDES- TLP+ FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-
|
||||
+ CESta: RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr-
|
||||
+ CEMsk: RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr+
|
||||
+ AERCap: First Error Pointer: 00, ECRCGenCap- ECRCGenEn- ECRCChkCap- ECRCChkEn-
|
||||
+ MultHdrRecCap- MultHdrRecEn- TLPPfxPres- HdrLogCap-
|
||||
+ HeaderLog: 00000000 00000000 00000000 00000000
|
||||
+ RootCmd: CERptEn- NFERptEn- FERptEn-
|
||||
+ RootSta: CERcvd- MultCERcvd- UERcvd- MultUERcvd-
|
||||
+ FirstFatal- NonFatalMsg- FatalMsg- IntMsg 0
|
||||
+ ErrorSrc: ERR_COR: 0000 ERR_FATAL/NONFATAL: 0000
|
||||
+ Capabilities: [160 v2] Root Complex Event Collector Endpoint Association
|
||||
+ RCiEPBitmap: RCiEP at Device(s): 1, 6, 8-10, 12, 15
|
||||
+ AssociatedBusNumbers: 02-08
|
||||
+00: 86 80 23 0b 00 01 10 00 00 00 07 08 00 00 00 00
|
||||
+10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+20: 00 00 00 00 00 00 00 00 00 00 00 00 86 80 00 00
|
||||
+30: 00 00 00 00 40 00 00 00 00 00 00 00 ff 01 00 00
|
||||
+40: 10 80 a2 00 02 00 00 00 07 00 00 00 00 00 00 00
|
||||
+50: 00 00 00 00 00 00 00 00 00 00 00 00 07 00 00 00
|
||||
+60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+80: 01 90 03 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+90: 05 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+d0: 31 6a 08 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+100: 01 00 01 16 00 00 00 00 20 00 10 00 10 30 46 00
|
||||
+110: 00 00 00 00 00 20 00 00 00 00 00 00 00 00 00 00
|
||||
+120: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+130: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+140: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+150: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+160: 07 00 02 00 00 00 00 00 00 ff 00 00 00 00 00 00
|
||||
+170: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+180: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+190: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+1a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+1b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+1c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+1d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+1e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+1f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+200: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+210: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+220: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+230: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+240: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+250: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+260: 00 00 00 00 07 00 00 00 00 00 00 00 00 00 00 00
|
||||
+270: 00 00 00 00 00 00 00 00 07 00 00 00 00 00 00 00
|
||||
+280: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+290: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+2a0: 00 00 00 00 00 00 00 00 20 00 18 00 20 00 18 00
|
||||
+2b0: 20 00 18 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+2c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+2d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+2e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+2f0: 00 20 00 00 00 20 00 00 00 20 00 00 00 e0 00 00
|
||||
+300: 00 e0 00 00 00 e0 00 00 00 e0 00 00 00 e0 00 00
|
||||
+310: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+320: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+330: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+340: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+350: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+360: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+370: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+380: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+390: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+3a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+3b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+3c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+3d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+3e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+3f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+400: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+410: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+420: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+430: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+440: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+450: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+460: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+470: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+480: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+490: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+4a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+4b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+4c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+4d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+4e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+4f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+500: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+510: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+520: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+530: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+540: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+550: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+560: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+570: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+580: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+590: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+5a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+5b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+5c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+5d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+5e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+5f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+600: 44 00 00 00 91 00 00 00 00 00 00 00 00 00 00 00
|
||||
+610: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+620: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+630: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+640: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+650: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+660: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+670: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+680: 90 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+690: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+6a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+6b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+6c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+6d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+6e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+6f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+700: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+710: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+720: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+730: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+740: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+750: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+760: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+770: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+780: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+790: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+7a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+7b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+7c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+7d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+7e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+7f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+800: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+810: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+820: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+830: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+840: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+850: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+860: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+870: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+880: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+890: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+8a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+8b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+8c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+8d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+8e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+8f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+900: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+910: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+920: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+930: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+940: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+950: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+960: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+970: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+980: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+990: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+9a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+9b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+9c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+9d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+9e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+9f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+a00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+a10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+a20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+a30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+a40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+a50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+a60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+a70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+a80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+a90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+aa0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+ab0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+ac0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+ad0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+ae0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+af0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+b00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+b10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+b20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+b30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+b40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+b50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+b60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+b70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+b80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+b90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+ba0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+bb0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+bc0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+bd0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+be0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+bf0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+c00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+c10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+c20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+c30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+c40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+c50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+c60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+c70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+c80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+c90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+ca0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+cb0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+cc0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+cd0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+ce0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+cf0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+d00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+d10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+d20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+d30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+d40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+d50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+d60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+d70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+d80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+d90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+da0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+db0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+dc0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+dd0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+de0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+df0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+e00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+e10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+e20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+e30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+e40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+e50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+e60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+e70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+e80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+e90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+ea0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+eb0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+ec0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+ed0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+ee0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+ef0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+f00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+f10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+f20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+f30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+f40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+f50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+f60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+f70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+f80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+f90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+fa0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+fb0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+fc0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+fd0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+fe0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
||||
+ff0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
87
pciutils-endianh.patch
Normal file
87
pciutils-endianh.patch
Normal file
|
@ -0,0 +1,87 @@
|
|||
diff -urN pciutils-3.3.0.old/lib/sysdep.h pciutils-3.3.0/lib/sysdep.h
|
||||
--- pciutils-3.3.0.old/lib/sysdep.h 2014-11-18 14:27:01.054393822 +0100
|
||||
+++ pciutils-3.3.0/lib/sysdep.h 2014-11-18 14:28:43.420561080 +0100
|
||||
@@ -18,79 +18,9 @@
|
||||
typedef u8 byte;
|
||||
typedef u16 word;
|
||||
|
||||
-#ifdef PCI_OS_WINDOWS
|
||||
-#define strcasecmp strcmpi
|
||||
-#endif
|
||||
-
|
||||
-#ifdef PCI_HAVE_LINUX_BYTEORDER_H
|
||||
-
|
||||
-#include <asm/byteorder.h>
|
||||
-#define cpu_to_le16 __cpu_to_le16
|
||||
-#define cpu_to_le32 __cpu_to_le32
|
||||
-#define le16_to_cpu __le16_to_cpu
|
||||
-#define le32_to_cpu __le32_to_cpu
|
||||
-
|
||||
-#else
|
||||
-
|
||||
-#ifdef PCI_OS_LINUX
|
||||
#include <endian.h>
|
||||
-#define BYTE_ORDER __BYTE_ORDER
|
||||
-#define BIG_ENDIAN __BIG_ENDIAN
|
||||
-#endif
|
||||
-
|
||||
-#ifdef PCI_OS_SUNOS
|
||||
-#include <sys/byteorder.h>
|
||||
-#if defined(__i386) && defined(LITTLE_ENDIAN)
|
||||
-# define BYTE_ORDER LITTLE_ENDIAN
|
||||
-#elif defined(__sparc) && defined(BIG_ENDIAN)
|
||||
-# define BYTE_ORDER BIG_ENDIAN
|
||||
-#else
|
||||
-#define BIG_ENDIAN 4321
|
||||
-#endif
|
||||
-#ifndef BYTE_ORDER
|
||||
-#ifdef _LITTLE_ENDIAN
|
||||
-#define BYTE_ORDER 1234
|
||||
-#else
|
||||
-#define BYTE_ORDER 4321
|
||||
-#endif
|
||||
-#endif /* BYTE_ORDER */
|
||||
-#endif /* PCI_OS_SUNOS */
|
||||
-
|
||||
-#ifdef PCI_OS_WINDOWS
|
||||
-#ifdef __MINGW32__
|
||||
- #include <sys/param.h>
|
||||
-#else
|
||||
- #include <io.h>
|
||||
- #define BIG_ENDIAN 4321
|
||||
- #define LITTLE_ENDIAN 1234
|
||||
- #define BYTE_ORDER LITTLE_ENDIAN
|
||||
- #define snprintf _snprintf
|
||||
-#endif
|
||||
-#endif
|
||||
-
|
||||
-#if BYTE_ORDER == BIG_ENDIAN
|
||||
-#define cpu_to_le16 swab16
|
||||
-#define cpu_to_le32 swab32
|
||||
-#define le16_to_cpu swab16
|
||||
-#define le32_to_cpu swab32
|
||||
-
|
||||
-static inline word swab16(word w)
|
||||
-{
|
||||
- return (w << 8) | ((w >> 8) & 0xff);
|
||||
-}
|
||||
-
|
||||
-static inline u32 swab32(u32 w)
|
||||
-{
|
||||
- return ((w & 0xff000000) >> 24) |
|
||||
- ((w & 0x00ff0000) >> 8) |
|
||||
- ((w & 0x0000ff00) << 8) |
|
||||
- ((w & 0x000000ff) << 24);
|
||||
-}
|
||||
-#else
|
||||
-#define cpu_to_le16(x) (x)
|
||||
-#define cpu_to_le32(x) (x)
|
||||
-#define le16_to_cpu(x) (x)
|
||||
-#define le32_to_cpu(x) (x)
|
||||
-#endif
|
||||
|
||||
-#endif
|
||||
+#define cpu_to_le16 htole16
|
||||
+#define cpu_to_le32 htole32
|
||||
+#define le16_to_cpu le16toh
|
||||
+#define le32_to_cpu le32toh
|
128
pciutils-ocloexec.patch
Normal file
128
pciutils-ocloexec.patch
Normal file
|
@ -0,0 +1,128 @@
|
|||
Index: pciutils-3.4.0/lib/dump.c
|
||||
===================================================================
|
||||
--- pciutils-3.4.0.orig/lib/dump.c
|
||||
+++ pciutils-3.4.0/lib/dump.c
|
||||
@@ -64,7 +64,7 @@ dump_init(struct pci_access *a)
|
||||
|
||||
if (!name)
|
||||
a->error("dump: File name not given.");
|
||||
- if (!(f = fopen(name, "r")))
|
||||
+ if (!(f = fopen(name, "re")))
|
||||
a->error("dump: Cannot open %s: %s", name, strerror(errno));
|
||||
while (fgets(buf, sizeof(buf)-1, f))
|
||||
{
|
||||
Index: pciutils-3.4.0/lib/names-cache.c
|
||||
===================================================================
|
||||
--- pciutils-3.4.0.orig/lib/names-cache.c
|
||||
+++ pciutils-3.4.0/lib/names-cache.c
|
||||
@@ -63,7 +63,7 @@ pci_id_cache_load(struct pci_access *a,
|
||||
return 0;
|
||||
}
|
||||
|
||||
- f = fopen(name, "rb");
|
||||
+ f = fopen(name, "rbe");
|
||||
if (!f)
|
||||
{
|
||||
a->debug("Cache file does not exist\n");
|
||||
@@ -136,7 +136,7 @@ pci_id_cache_flush(struct pci_access *a)
|
||||
tmpname = pci_malloc(a, strlen(name) + strlen(hostname) + 64);
|
||||
sprintf(tmpname, "%s.tmp-%s-%d", name, hostname, this_pid);
|
||||
|
||||
- f = fopen(tmpname, "wb");
|
||||
+ f = fopen(tmpname, "wbe");
|
||||
if (!f)
|
||||
{
|
||||
a->warning("Cannot write to %s: %s", name, strerror(errno));
|
||||
Index: pciutils-3.4.0/lib/names-parse.c
|
||||
===================================================================
|
||||
--- pciutils-3.4.0.orig/lib/names-parse.c
|
||||
+++ pciutils-3.4.0/lib/names-parse.c
|
||||
@@ -52,7 +52,7 @@ static pci_file pci_open(struct pci_acce
|
||||
typedef FILE * pci_file;
|
||||
#define pci_gets(f, l, s) fgets(l, s, f)
|
||||
#define pci_eof(f) feof(f)
|
||||
-#define pci_open(a) fopen(a->id_file_name, "r")
|
||||
+#define pci_open(a) fopen(a->id_file_name, "re")
|
||||
#define pci_close(f) fclose(f)
|
||||
#define PCI_ERROR(f, err) if (!err && ferror(f)) err = "I/O error";
|
||||
#endif
|
||||
Index: pciutils-3.4.0/lib/proc.c
|
||||
===================================================================
|
||||
--- pciutils-3.4.0.orig/lib/proc.c
|
||||
+++ pciutils-3.4.0/lib/proc.c
|
||||
@@ -62,7 +62,7 @@ proc_scan(struct pci_access *a)
|
||||
|
||||
if (snprintf(buf, sizeof(buf), "%s/devices", pci_get_param(a, "proc.path")) == sizeof(buf))
|
||||
a->error("File name too long");
|
||||
- f = fopen(buf, "r");
|
||||
+ f = fopen(buf, "re");
|
||||
if (!f)
|
||||
a->error("Cannot open %s", buf);
|
||||
while (fgets(buf, sizeof(buf)-1, f))
|
||||
@@ -129,7 +129,7 @@ proc_setup(struct pci_dev *d, int rw)
|
||||
if (e < 0 || e >= (int) sizeof(buf))
|
||||
a->error("File name too long");
|
||||
a->fd_rw = a->writeable || rw;
|
||||
- a->fd = open(buf, a->fd_rw ? O_RDWR : O_RDONLY);
|
||||
+ a->fd = open(buf, (a->fd_rw ? O_RDWR : O_RDONLY) | O_CLOEXEC);
|
||||
if (a->fd < 0)
|
||||
{
|
||||
e = snprintf(buf, sizeof(buf), "%s/%04x:%02x/%02x.%d",
|
||||
@@ -137,7 +137,7 @@ proc_setup(struct pci_dev *d, int rw)
|
||||
d->domain, d->bus, d->dev, d->func);
|
||||
if (e < 0 || e >= (int) sizeof(buf))
|
||||
a->error("File name too long");
|
||||
- a->fd = open(buf, a->fd_rw ? O_RDWR : O_RDONLY);
|
||||
+ a->fd = open(buf, (a->fd_rw ? O_RDWR : O_RDONLY) | O_CLOEXEC);
|
||||
}
|
||||
if (a->fd < 0)
|
||||
a->warning("Cannot open %s", buf);
|
||||
Index: pciutils-3.4.0/lib/sysfs.c
|
||||
===================================================================
|
||||
--- pciutils-3.4.0.orig/lib/sysfs.c
|
||||
+++ pciutils-3.4.0/lib/sysfs.c
|
||||
@@ -96,7 +96,7 @@ sysfs_get_string(struct pci_dev *d, char
|
||||
void (*warn)(char *msg, ...) = (mandatory ? a->error : a->warning);
|
||||
|
||||
sysfs_obj_name(d, object, namebuf);
|
||||
- fd = open(namebuf, O_RDONLY);
|
||||
+ fd = open(namebuf, O_RDONLY|O_CLOEXEC);
|
||||
if (fd < 0)
|
||||
{
|
||||
if (mandatory || errno != ENOENT)
|
||||
@@ -139,7 +139,7 @@ sysfs_get_resources(struct pci_dev *d)
|
||||
int i;
|
||||
|
||||
sysfs_obj_name(d, "resource", namebuf);
|
||||
- file = fopen(namebuf, "r");
|
||||
+ file = fopen(namebuf, "re");
|
||||
if (!file)
|
||||
a->error("Cannot open %s: %s", namebuf, strerror(errno));
|
||||
for (i = 0; i < 7; i++)
|
||||
@@ -245,7 +245,7 @@ sysfs_fill_slots(struct pci_access *a)
|
||||
n = snprintf(namebuf, OBJNAMELEN, "%s/%s/%s", dirname, entry->d_name, "address");
|
||||
if (n < 0 || n >= OBJNAMELEN)
|
||||
a->error("File name too long");
|
||||
- file = fopen(namebuf, "r");
|
||||
+ file = fopen(namebuf, "re");
|
||||
/*
|
||||
* Old versions of Linux had a fakephp which didn't have an 'address'
|
||||
* file. There's no useful information to be gleaned from these
|
||||
@@ -331,7 +331,7 @@ sysfs_setup(struct pci_dev *d, int inten
|
||||
if (a->fd_vpd < 0)
|
||||
{
|
||||
sysfs_obj_name(d, "vpd", namebuf);
|
||||
- a->fd_vpd = open(namebuf, O_RDONLY);
|
||||
+ a->fd_vpd = open(namebuf, O_RDONLY|O_CLOEXEC);
|
||||
/* No warning on error; vpd may be absent or accessible only to root */
|
||||
}
|
||||
return a->fd_vpd;
|
||||
@@ -341,7 +341,7 @@ sysfs_setup(struct pci_dev *d, int inten
|
||||
{
|
||||
sysfs_obj_name(d, "config", namebuf);
|
||||
a->fd_rw = a->writeable || intent == SETUP_WRITE_CONFIG;
|
||||
- a->fd = open(namebuf, a->fd_rw ? O_RDWR : O_RDONLY);
|
||||
+ a->fd = open(namebuf, (a->fd_rw ? O_RDWR : O_RDONLY) | O_CLOEXEC);
|
||||
if (a->fd < 0)
|
||||
a->warning("Cannot open %s", namebuf);
|
||||
a->fd_pos = 0;
|
594
pciutils.changes
Normal file
594
pciutils.changes
Normal file
|
@ -0,0 +1,594 @@
|
|||
* Wed Oct 4 2023 psimons@suse.com
|
||||
- Apply "lspci-Fixed-buffer-overflows-in-ls-tree.c.patch" to fix a
|
||||
buffer overflow error that would cause lspci to crash on systems
|
||||
with complex topologies. [bsc#1215265]
|
||||
- Add "pciutils.keyring" so that the tarball's signature can be
|
||||
verified at build time.
|
||||
- Use "%%license" tag instead of "%%doc" to install the package's
|
||||
license file.
|
||||
* Mon Jan 24 2022 vliaskovitis@suse.com
|
||||
- Add pciutils-Add-PCIe-5.0-data-rate-32-GT-s-support.patch
|
||||
Add pciutils-Add-PCIe-6.0-data-rate-64-GT-s-support.patch
|
||||
(bsc#1192862)
|
||||
* Thu Oct 29 2020 pgajdos@suse.com
|
||||
- Add decode support for RCECs [jsc#SLE-13735]
|
||||
- added patches
|
||||
https://github.com/pciutils/pciutils/commit/e12bd01eea67ca8cf539263124843ba281eb6ecc
|
||||
+ pciutils-add-decode-support-for-RCECs.patch
|
||||
* Thu May 21 2020 msuchanek@suse.com
|
||||
- Fix lspci outputs few of the VPD data fields are displayed as unknown (bsc#1170554, ltc#185587).
|
||||
Added:
|
||||
* pciutils-VPD-When-printing-item-IDs-escape-non-ASCII-characte.patch
|
||||
* pciutils-VPD-Cleanup.patch
|
||||
* pciutils-Add-decoding-of-vendor-specific-VPD-fields.patch
|
||||
* Sun Nov 19 2017 aavindraa@gmail.com
|
||||
- Update to version 3.5.6
|
||||
* MN VPD keyword is decoded correctly.
|
||||
* As usual, updated pci.ids to the current snapshot of the
|
||||
database.
|
||||
* FreeBSD back-end: read-only access for non-root, support
|
||||
DragonFly BSD, support extended config space.
|
||||
* Sat Nov 11 2017 aavindraa@gmail.com
|
||||
- Update to version 3.5.5
|
||||
* Better decoding of AER capability.
|
||||
* "Slot Implemented" flag is decoded for PCI/PCI-X to PCIe bridges.
|
||||
* Minor fixes of decoding other capabilities.
|
||||
* As usual, updated pci.ids to the current snapshot of the
|
||||
database.
|
||||
- cleanup with spec-cleaner
|
||||
- switch from ftp to https
|
||||
- track signature
|
||||
* Mon Feb 27 2017 mpluskal@suse.com
|
||||
- Update to version 3.5.4:
|
||||
* Previous version broke compilation on systems, for which
|
||||
lib/types.h did not provide a 64-bit integer type. It is
|
||||
provided everywhere now.
|
||||
- Changes for version 3.5.3:
|
||||
* When lspci looks for Linux kernel modules, it uses the default
|
||||
path to module directory provided by libkmod. Previously,
|
||||
it tried to construct the path explicitly, which need not
|
||||
work on all systems.
|
||||
* Improved formatting of memory and I/O ranges behind a bridge.
|
||||
* PCIe link capabilities now display GEN4 speed (16GT/s).
|
||||
* PCIe device capabilities now show bits related to atomic
|
||||
operations.
|
||||
- Changes for version 3.5.2:
|
||||
* The L1 power management capability is now decoded more
|
||||
thoroughly. Thanks to Rajat Jain for the patch.
|
||||
* The table of configuration registers used by setpci
|
||||
had a bug in the definition of SUBSYSTEM_VENDOR_ID.
|
||||
* Wed May 25 2016 mpluskal@suse.com
|
||||
- Update to version 3.5.1:
|
||||
* Fixed symbol versioning of pci_init().
|
||||
* Fri May 20 2016 mpluskal@suse.com
|
||||
- Update to version 3.5.0:
|
||||
* New capabilities decoded: Downstream Port Containment,
|
||||
Precision Time Measurement. Thanks to Keith Busch and
|
||||
Jonathan Yong.
|
||||
* Domain numbers extended to 31 bits. This will be used by the
|
||||
Linux kernel on some machines in near future.
|
||||
* Enhanced allocation regions are now decoded on Linux.
|
||||
* The NetBSD back-end supports PCIe extended configuration space.
|
||||
* Updated pci.ids to the current snapshot of the database.
|
||||
* Fri Jan 8 2016 tchvatal@suse.com
|
||||
- Version update to 3.4.1:
|
||||
* New capabilities decoded: Process Address Space, Page Request
|
||||
Interface, Enhanced Allocation. Thanks to David Daney and
|
||||
David Woodhouse.
|
||||
* DevCap SlotPowerLimit is now decoded for all components with
|
||||
upstream ports.
|
||||
* Sat Nov 21 2015 jengelh@inai.de
|
||||
- Summary update
|
||||
* Fri Nov 13 2015 mpluskal@suse.com
|
||||
- Update to 3.4.0
|
||||
* On Linux, we report NUMA nodes of devices.
|
||||
* The sysfs back-end does not die on read errors
|
||||
of optional attributes. Instead, a warning is produced.
|
||||
* Fixed several minor bugs.
|
||||
* Updated pci.ids to the current snapshot of the database.
|
||||
* Sun Sep 6 2015 mpluskal@suse.com
|
||||
- Update to 3.3.1
|
||||
* Removed hacks for backward compatibility with Linux libc5,
|
||||
which were breaking newer non-glibc Linux systems. Thanks
|
||||
to Felix Janda.
|
||||
* Display VirtIO vendor-specific capability. Patch by Gerd
|
||||
Hoffmann.
|
||||
* Fixed memory leak in name cache.
|
||||
* Updated pci.ids to the current snapshot of the database.
|
||||
* Tue Nov 18 2014 tchvatal@suse.com
|
||||
- Version bump to 3.3.0:
|
||||
* Device names exported by BIOS are displayed on Linux.
|
||||
* On Linux systems, HWDB is used to look up device names
|
||||
when our ID database gives no match. (More precisely,
|
||||
HWDB is consulted after local pci.ids, but before using
|
||||
network to query online pci.ids.) Thanks to Tom Gundersen
|
||||
for the initial patch.
|
||||
* Added experimental back-end for OS X / Darwin. Thanks to
|
||||
Richard Yao for providing it.
|
||||
* Filters now support matching by device class. Original
|
||||
patch by Matthew Wilcox, wrappers for ABI compatibility
|
||||
by me.
|
||||
* Interrupt Pin and Interrupt Line registers are displayed
|
||||
for bridge devices, too.
|
||||
* Several portability bugs have been fixed.
|
||||
* Several typos have been fixed. Also, use of questionable
|
||||
constructs in man pages has been reduced.
|
||||
* PCIe link capabilities now include the ASPMOptComp bit.
|
||||
* The "CRS Software Visibility" bit is now decoded properly.
|
||||
* Updated pci.ids to the current snapshot of the database.
|
||||
- Refresh patch:
|
||||
* pciutils-endianh.patch
|
||||
* Mon Aug 18 2014 fcrozat@suse.com
|
||||
- Add obsoletes/provides to baselibs.conf.
|
||||
* Tue May 13 2014 tchvatal@suse.com
|
||||
- Remove COPYING from obs it is in tarball directly
|
||||
- Version bump to 3.2.1:
|
||||
* CardBus bridge capabilities are displayed.
|
||||
* PCIe L1 PM substates are decoded.
|
||||
* Various bugs were fixed in decoding of PCIe capabilities.
|
||||
* The sysfs back-end does not spit out unnecessary warnings when
|
||||
empty slots report only a partial device address. This actually
|
||||
happens on IBM pSeries.
|
||||
* Updated pci.ids to the today's snapshot of the database.
|
||||
- Cleanup with spec-cleaner
|
||||
* Tue Jul 30 2013 sweet_f_a@gmx.de
|
||||
- Update to 3.2.0
|
||||
* On newer Linux systems, we use libkmod to look up kernel
|
||||
modules (modules.pcimap no longer exists.) To facilitate this,
|
||||
libpci is able to look up module aliases in sysfs.
|
||||
* Various minor bug fixes.
|
||||
* Updated pci.ids to the today's snapshot of the database.
|
||||
- Update to 3.1.10
|
||||
* Decoding of LTR/OBFF in PCIe capabilities.
|
||||
* Various minor bug fixes.
|
||||
* Updated pci.ids to the today's snapshot of the database.
|
||||
- rebase patches
|
||||
- require libkmod
|
||||
* Mon Apr 15 2013 idonmez@suse.com
|
||||
- Add Source URL, see https://en.opensuse.org/SourceUrls
|
||||
* Mon Dec 31 2012 crrodriguez@opensuse.org
|
||||
- pciutils-endianh.patch Use the documented/optimized byteswapping
|
||||
routines from endian.h
|
||||
* Sun Mar 18 2012 jengelh@medozas.de
|
||||
- Shared library policy: new subpackage libpci3
|
||||
* Sun Jan 29 2012 tabraham@novell.com
|
||||
- Update to 3.1.9
|
||||
* Whereever we mention the PCI ID database, we now refer to
|
||||
http://pci-ids.ucw.cz/ and the sf.net site is mentioned only
|
||||
as a mirror. This includes update-pciids.
|
||||
* Decode PCIe Gen 3 speeds and link status fields
|
||||
* various minor bug fixes
|
||||
* Updated pci.ids to the 2012-01-14 snapshot of the database
|
||||
- Update to 3.1.8
|
||||
* More capabilities: Transaction Processing Hints, Latency
|
||||
Tolerance Reporting. Thanks to Jesse Barnes.
|
||||
* Added BeOS and Haiku ports. Contributed by Francois Revol.
|
||||
* pciutils.pc now uses Libs.private properly.
|
||||
* When we format a name and it does not fit in the buffer, we
|
||||
truncate it instead of returning "buffer too small" instead.
|
||||
This works on all platforms with sane (i.e., C99-compatible)
|
||||
snprintf().
|
||||
* various minor bug fixes
|
||||
* Mon Nov 14 2011 crrodriguez@opensuse.org
|
||||
- open all file descriptors with O_CLOEXEC,specially important
|
||||
on libpci and calling apps may fork() and we end up leaking
|
||||
information to child processes.
|
||||
* Mon Mar 21 2011 coolo@novell.com
|
||||
- licenses package is about to die
|
||||
* Mon Jun 28 2010 jengelh@medozas.de
|
||||
- use %%_smp_mflags
|
||||
* Sat Apr 24 2010 coolo@novell.com
|
||||
- buildrequire pkg-config to fix provides
|
||||
* Thu Feb 25 2010 anicka@suse.cz
|
||||
- update to 3.1.7
|
||||
* Minor improvements and bug fixes in decoding of the Virtual Channel
|
||||
capability.
|
||||
* Released as 3.1.6.
|
||||
* More capabilities decoded: Virtual Channel (except arbitration
|
||||
tables), Root Complex Link, Vendor-Specific (header only), SATA HBA.
|
||||
* All extended capabilities have their version displayed (-vv or more).
|
||||
* Mon Feb 1 2010 jengelh@medozas.de
|
||||
- package baselibs.conf
|
||||
* Fri Jan 22 2010 anicka@suse.cz
|
||||
- update to 1.3.5
|
||||
* Updated pci.ids to the today's snapshot of the database.
|
||||
* When scanning extended capabilities, properly mask the lowest 2 bits,
|
||||
which are currently reserved. This avoids unaligned access errors on
|
||||
broken hardware (see tests/broken-ecaps).
|
||||
* Large bar sizes are displayed in human-readable format (with units).
|
||||
* Physical slot information is displayed correctly for multi-function cards.
|
||||
* Fixed a couple of typos everywhere.
|
||||
* Library: Fixed bugs in freeing of capabilities.
|
||||
* Windows back-end compiles again.
|
||||
* Tue Dec 15 2009 jengelh@medozas.de
|
||||
- enable parallel building
|
||||
* Thu Dec 10 2009 anicka@suse.cz
|
||||
- update to 3.1.4
|
||||
* Updated pci.ids to the today's snapshot of the database.
|
||||
* Fixed memory and file descriptor leak in the dump back-end.
|
||||
* The SR-IOV capability decoder now prints the VF BAR's.
|
||||
* On request of certain company's lawyers, we now include a copy
|
||||
of the GPL with our package. It seems that the pciutils are getting
|
||||
mature if the most important bug of the month was this one ;-)
|
||||
* Tue Nov 3 2009 coolo@novell.com
|
||||
- updated patches to apply with fuzz=0
|
||||
* Fri Aug 14 2009 anicka@suse.cz
|
||||
- add COPYING file to fix (bnc#518238)
|
||||
- fix last patch
|
||||
* Mon Aug 10 2009 anicka@suse.cz
|
||||
- add fclose to dump_init (bnc#529469)
|
||||
* Mon Aug 3 2009 anicka@suse.cz
|
||||
- update to 3.1.3
|
||||
* The VPD parser now reports unknown and vendor-defined items
|
||||
properly. It also stops on any item in unknown format,
|
||||
avoiding long output on bogus VPD data.
|
||||
* The MSI-X table size now matches the spec.
|
||||
* The Power Management capability now includes the soft reset bit.
|
||||
* Decoding of the Advanced Features capability has been added.
|
||||
* The whole package compiles on GNU/kFreeBSD again.
|
||||
* The procfs back-end is able to cope with /proc/bus/pci
|
||||
containing names with domains, which occur on sparc64 and
|
||||
possibly other architectures due to a kernel bug.
|
||||
* The sysfs back-end no longer complains when a slot address
|
||||
is missing, which happens with old versions of Linux fakephp.
|
||||
* The Device Serial Number capability is printed in the right
|
||||
byte order.
|
||||
* The MSI and MSI-X capabilities are printed in a prettier way.
|
||||
* The tree output mode (`lspci -t') shows domain numbers only
|
||||
at the root, which makes the output more compact.
|
||||
* Updated documentation on the bus mapping mode (`lspci -M').
|
||||
* Thu Feb 5 2009 anicka@suse.cz
|
||||
- update to 3.1.2
|
||||
* Fixed another silly bug in the command-line parser of setpci.
|
||||
* The configure script now sets LC_ALL to avoid being fooled by
|
||||
locale-dependent behavior of `tr'.
|
||||
* The command-line parser of setpci did sometimes segfault on invalid
|
||||
input.
|
||||
* The Cygwin backend now works on Windows Vista.
|
||||
* Fixed a bug in decoding of the SR-IOV capability.
|
||||
* Details of some PCIe capabilities are displayed only with -vv.
|
||||
* When a BAR is reported by the OS, but not by the device (i.e.,
|
||||
it is marked as [virtual] in lspci), the [disabled] flag is
|
||||
suppressed, because it does not make sense in such cases.
|
||||
* The source code of lspci has been split to multiple files, hopefully
|
||||
making it easier to maintain.
|
||||
* The library and lspci now know about physical slot names. So far,
|
||||
they are provided by the sysfs back-end only.
|
||||
* When a device has the VPD (Vital Product Data) capability and the
|
||||
VPD data are supplied by the OS, they are decoded and printed in the
|
||||
verbose mode. This currently works only on Linux with the sysfs
|
||||
back-end.
|
||||
* `setpci --version' now works properly.
|
||||
* `setpci --dumpregs' prints a table of all known names of
|
||||
registers and capabilities. This replaces the table of registers
|
||||
in the setpci man page.
|
||||
* The dry-run mode of setpci gives better feedback.
|
||||
* The setpci utility is now able to address registers stored in PCI
|
||||
capabilities (actually it allows a more general form of relative
|
||||
addressing).
|
||||
* The library has gained functions for working with PCI capabilities.
|
||||
* Address Translation Services capability is now decoded.
|
||||
* `lspci -k' now displays the subsystem ID, too. This makes `-k'
|
||||
show everything needed to identify the device and the available
|
||||
drivers, which was called for by many users.
|
||||
* Fixed spelling of MSI.
|
||||
* Better support for cross-compilation.
|
||||
* Fixed printing of the AER capability.
|
||||
* HT 1.02 capabilities are decoded as HT 1.03.
|
||||
* Fixed Cygwin build.
|
||||
* Fixed a minor bug in the configure script, which caused warnings
|
||||
about redefinition of symbols during compilation.
|
||||
* Wed Jan 7 2009 olh@suse.de
|
||||
- obsolete old -XXbit packages (bnc#437293)
|
||||
* Thu Sep 11 2008 anicka@suse.cz
|
||||
- update to 3.0.1
|
||||
* Added a Cygwin port.
|
||||
* Worked around compatibility problems with various default
|
||||
settings of wget
|
||||
* Fixed printing of MSI capabilities.
|
||||
* Added decoding of several PCI-X capabilities: device/link/slot 2,
|
||||
Advanced Error Reporting, Access Control Services, Alternative
|
||||
Routing-ID, Single Root I/O Virtualization.
|
||||
* Fixed bug in filters which caused them to refuse
|
||||
vendor/device ID 0xffff.
|
||||
* Fixed several build problems: builds without PCI_USE_DNS
|
||||
on Linux and with PCI_USE_DNS on Solaris and *BSD. Static
|
||||
library mode also compiles again on old versions of GCC.
|
||||
* Fri Apr 11 2008 mrueckert@suse.de
|
||||
- move shared libs to /%%{_lib}
|
||||
- added pciutils-3.0.0_pkgconfig.patch:
|
||||
clean up the pkgconfig file so we can include it
|
||||
- package the pkgconfig file
|
||||
* Thu Apr 10 2008 mrueckert@suse.de
|
||||
- if we no longer provide the static lib we should at least provide
|
||||
the symlink to link against libpci
|
||||
* Thu Apr 10 2008 anicka@suse.cz
|
||||
- update to 3.0.0
|
||||
* The makefile system has been reworked. All configuration
|
||||
settings are now passed to the configure script in environment
|
||||
variables, allowing for easy tweaking in the top-level Makefile.
|
||||
All control knobs are now described in the README.
|
||||
* The libpci can be built as a shared library with properly
|
||||
restricted symbol exports. Use `make SHARED=yes' to enable that
|
||||
or `make SHARED=local' for a local testing build (with hardwired
|
||||
paths to the library, so that it does not need installation).
|
||||
* Support for resolving of PCI ID's using DNS together with a local
|
||||
cache of resolved entries has been added. See the `-q' and `-Q'
|
||||
options of lspci.
|
||||
* The library now has a generic system of settable parameters, which
|
||||
also include settings of the DNS resolver and cache. An `-O'
|
||||
option has been added to lspci and setpci to allow setting
|
||||
of these options.
|
||||
* Configuration of the access methods are now specified by the new
|
||||
parameter system, replacing the pci_access->method_params array.
|
||||
* Access methods now also have sensible names and help texts and it
|
||||
is possible to look up method ID by a name.
|
||||
* An `-A' switch has been added to both lspci and setpci, allowing
|
||||
to select an arbitrary access method. The `-P' switch (configure
|
||||
proc backend) has been removed as it is no longer needed
|
||||
and I do not know any its user.
|
||||
* Several source files have been split for better maintainability
|
||||
(most notably the resolving of ID's).
|
||||
* Man pages and help texts have been updated. A new man page
|
||||
`pcilib(7)' has been added and description of library options
|
||||
has been moved there.
|
||||
* When an unknown device ID is encountered, we print `Device <id>'
|
||||
instead of `Unknown device <id>'. It uses less space and it also
|
||||
should reduce the number of inexperienced users complaining that
|
||||
the device is not supported by the OS. To lookup up OS drivers,
|
||||
use the `-k' option.
|
||||
* Makefile: stripping of the binaries during installation can be
|
||||
overridden by the STRIP variable.
|
||||
* lib/types.h: We use the integer types from <stdint.h> if the
|
||||
compiler claims C99 support.
|
||||
- remove strip patch
|
||||
* Thu Apr 10 2008 ro@suse.de
|
||||
- added baselibs.conf file to build xxbit packages
|
||||
for multilib support
|
||||
* Wed Apr 9 2008 anicka@suse.cz
|
||||
- update to 2.2.10
|
||||
* lspci.c, setpci.c: Cleaned up the list of options.
|
||||
* lib/names.c: Fix displaying of errors reported by zlib.
|
||||
Previously, the buffer containing the error message had
|
||||
been deallocated by gzclose() before the message was printed.
|
||||
* update-pciids.sh: Added quiet mode (-q). Clean up uncompressed
|
||||
files left by previous versions of the pciutils.
|
||||
* update-pciids.man: Mention the -q switch.
|
||||
* lib/dump.c: Squashed compiler warnings about code with
|
||||
no effect (there really were surplus *'s).
|
||||
* Tue Nov 6 2007 anicka@suse.cz
|
||||
- update to 2.2.9
|
||||
* lspci.c: Added a new switch `-k' which requests printing
|
||||
of information on kernel drivers attached to each device
|
||||
and on kernel modules reporting the ability to handle the
|
||||
device.
|
||||
* Makefile, lib/Makefile: Moved -lz from LDFLAGS to LDLIBS.
|
||||
Also added an explicit pattern rule for linking to make sure
|
||||
that LDLIBS is used on all platforms.
|
||||
* pci.ids: Revised class codes to match Conventional PCI 3.0
|
||||
specs.
|
||||
* lspci.c: Decode the Debug port capability (per EHCI 0.96 spec).
|
||||
* lspci.c: Big code cleanup: re-arranged functions in the code,
|
||||
renamed everything related to capabilities to cap_* and
|
||||
all options except verbose to opt_*.
|
||||
* Capability loop detection introduced 2.2.7 did not work
|
||||
properly with extended capabilities. Fixed.
|
||||
* Wed Oct 24 2007 anicka@suse.cz
|
||||
- drop the patch backporting upstream bug in
|
||||
a machine readable output [#330533]
|
||||
- fix typo in show_ext_caps in lspci
|
||||
* Fri Oct 5 2007 anicka@suse.cz
|
||||
- update to 2.2.7
|
||||
* lspci.c (show_caps, show_ext_caps): Detect and report loops in
|
||||
capability lists.
|
||||
* lspci.c, lib/header.h: Finished decoding of the PCI Express
|
||||
capability. The extended capabilities remain undecoded for now,
|
||||
but at least the list of them has been updated to reflect the
|
||||
current PCI Express 2.0 spec.
|
||||
* lspci.c, lib/header.h: Decode new bits of traditional registers
|
||||
as defined by PCIE / PCI-X. This includes discard timers in
|
||||
the bridge control register and INTx enable/status in device
|
||||
control/status registers.
|
||||
* Makefile, lib/Makefile: `ar' and `ranlib' can be overriden to
|
||||
allow cross-compilation.
|
||||
* lspci.c (show_ht): Added decoding of Hypertransport MSI
|
||||
mapping capability
|
||||
* tests/cap-MSI-mapping: Added a test case.
|
||||
* Tue Jul 3 2007 anicka@suse.cz
|
||||
- update to 2.2.6
|
||||
* Makefile: Added an "install-lib" target.
|
||||
* Makefile, lib/Makefile: Generate and install pkg-config file
|
||||
for libpci.
|
||||
* lib/i386-io-hurd.h: Rewritten for new Hurd kernels.
|
||||
* Fri May 4 2007 anicka@suse.cz
|
||||
- update to 2.2.5
|
||||
* pci.ids: Updated to the current snapshot of the database.
|
||||
* lspci.c (show_express): Added PCI/PCI-X to PCI-Express
|
||||
Bridge type.
|
||||
* pci.ids: Updated to the current snapshot of the database.
|
||||
* Replaced bzero() by memset() everywhere, it's better to lose
|
||||
a tiny bit of readability than maintain hacks to make it work
|
||||
on various systems.
|
||||
* lib/configure: tr on Solaris is a bit weird and it requires
|
||||
`[A-Z]' instead of `A-Z'. Fortunately, the extra brackets
|
||||
don't hurt otherwise.
|
||||
* lib/types.h, lib/configure: Solaris should use <stdint.h>
|
||||
to get precise integer types.
|
||||
* lspci.c: alloca() needs <alloca.h>.
|
||||
* lib/dump.c: Fixed a couple of bugs in the dump backend which
|
||||
caused devices with domains or with extended config space
|
||||
to be read incorrectly. Also, dumps with partial lines are
|
||||
allowed now.
|
||||
* lspci.c (scan_device): If an error occurs when reading the
|
||||
standard config header of a device, report it and ignore the
|
||||
device and return with exit code 2 at the end.
|
||||
- remove noabort.diff (implemented by upstream)
|
||||
* Thu Mar 29 2007 rguenther@suse.de
|
||||
- add zlib-devel BuildRequires
|
||||
- require zlib-devel from pciutils-devel package
|
||||
* Mon Jan 29 2007 anicka@suse.cz
|
||||
- change dependency from python to perl in update-pciids [#221276]
|
||||
* Sat Jan 20 2007 garloff@suse.de
|
||||
- Change update-pciids to download to pci.ids.d/pci.ids.dist
|
||||
and call merge-pciids if possible. [FATE 301145, bug 221276]
|
||||
* Fri Oct 13 2006 aj@suse.de
|
||||
- Fix to build (remove pci.ids.gz as well).
|
||||
* Fri Oct 13 2006 mjancar@suse.cz
|
||||
- update to 2.2.4
|
||||
* many bugfixes and cleanups
|
||||
- branch separate package for pci.ids
|
||||
* Mon May 22 2006 schwab@suse.de
|
||||
- Don't strip binaries.
|
||||
* Wed Mar 22 2006 kukuk@suse.de
|
||||
- Remove pciids-suse patch (has to be fixed upstream)
|
||||
* Wed Mar 22 2006 kukuk@suse.de
|
||||
- Auto-Update pci.ids
|
||||
* Wed Jan 25 2006 mls@suse.de
|
||||
- converted neededforbuild to BuildRequires
|
||||
* Fri Jan 20 2006 mjancar@suse.cz
|
||||
- update pci.ids (#144200)
|
||||
* Fri Jan 13 2006 mjancar@suse.cz
|
||||
- reintroduce "Class" printed in numeric output (#143042)
|
||||
* Mon Dec 19 2005 mjancar@suse.cz
|
||||
- update to 2.2.1
|
||||
* Fri Aug 26 2005 mjancar@suse.cz
|
||||
- add types.h to pciutils-devel (#113294)
|
||||
* Wed Aug 24 2005 mjancar@suse.cz
|
||||
- update to 2.1.99-test9 (#98896)
|
||||
- update pci.ids (#104381)
|
||||
* Mon Mar 14 2005 mjancar@suse.cz
|
||||
- fix non-ascii characters in pci.ids (#72345)
|
||||
* Sat Mar 5 2005 schwab@suse.de
|
||||
- Fix syntax error in pci.ids.
|
||||
* Tue Feb 22 2005 mjancar@suse.cz
|
||||
- fix sysfs parsing (#63326)
|
||||
- update pci.ids
|
||||
* Fri Sep 17 2004 tcrhak@suse.cz
|
||||
- updated pci.ids to the latest snapshot (fixes bug #45370)
|
||||
* Thu May 27 2004 tcrhak@suse.cz
|
||||
- changed "SGI IO9/IO10 Gigabit Ethernet (Copper)"
|
||||
to "SGI IO9/IO10 Gigabit Ethernet (Copper)" (bug #40175)
|
||||
* Wed Apr 28 2004 tcrhak@suse.cz
|
||||
- updated pci.ids
|
||||
* Thu Mar 4 2004 tcrhak@suse.cz
|
||||
- some pci.ids fixes:
|
||||
* changed SubDevice of Dell Inspiron 2100 internal modem (bug #32842)
|
||||
* added 1291 - Auxiliary Diva Serial Port (bug #31984)
|
||||
* added PCI IDs for InfiniBand HCAs (bug #34928)
|
||||
* Tue Feb 24 2004 tcrhak@suse.cz
|
||||
- added support for domains to device filter (lspci -s, setpci -s)
|
||||
(fixes bug #33382, patch sysfs-filter)
|
||||
- updated pci.ids
|
||||
* Sat Nov 29 2003 olh@suse.de
|
||||
- use default owner for pciutils-devel files
|
||||
* Wed Nov 5 2003 olh@suse.de
|
||||
- remove pcimodules again, it doesnt do anything right
|
||||
* Tue Oct 28 2003 olh@suse.de
|
||||
- add patch for 2.6 /proc/bus/pci layout
|
||||
http://ftp.linux.org.uk/pub/linux/willy/patches/pciutils-sysfs.diff
|
||||
* Wed Oct 8 2003 tcrhak@suse.cz
|
||||
- added pcimodules [bug #31953]
|
||||
* Mon Aug 25 2003 tcrhak@suse.cz
|
||||
- updated pci.ids to the latest version from http://pciids.sourceforge.net
|
||||
* Tue Feb 18 2003 tcrhak@suse.cz
|
||||
- fixed NIC PCI IDs for Compaq [bug #22795],
|
||||
patch pciids.diff
|
||||
- also included the diff for the latest pci.ids
|
||||
into the patch
|
||||
* Wed Jan 15 2003 tcrhak@suse.cz
|
||||
- fixed install paths
|
||||
* Mon Jan 6 2003 tcrhak@suse.cz
|
||||
- update to version 2.1.11
|
||||
- updated pci.ids to the latest version from http://pciids.sourceforge.net
|
||||
* Tue Sep 17 2002 ro@suse.de
|
||||
- removed bogus self-provides
|
||||
* Fri Sep 6 2002 olh@suse.de
|
||||
- update description of pcnet32 cards (#18892)
|
||||
* Thu Aug 29 2002 tcrhak@suse.cz
|
||||
- updated pci.ids to latest version from http://pciids.sourceforge.net
|
||||
this version contains entries needed by Hammer systems (bug #17549)
|
||||
* Thu Aug 8 2002 olh@suse.de
|
||||
- the acenic gigabit card can be either fibre or utp
|
||||
update pci.ids entry (#17502)
|
||||
* Tue Jul 30 2002 tcrhak@suse.cz
|
||||
- updated to version 2.1.10
|
||||
- updated pci.ids to latest version from http://pciids.sourceforge.net
|
||||
* Tue Mar 26 2002 tcrhak@suse.cz
|
||||
- updated pci.ids to latest version from http://pciids.sourceforge.net
|
||||
* Fri Jan 18 2002 tcrhak@suse.cz
|
||||
- used macros %%{_lib} and %%{_libdir}
|
||||
* Tue Jan 8 2002 schwab@suse.de
|
||||
- Fix warnings.
|
||||
* Mon Dec 17 2001 tcrhak@suse.cz
|
||||
- updated pciutils to 2.1.9
|
||||
- updated pci.ids to latest version from
|
||||
http://pciids.sourceforge.net/
|
||||
* Wed Dec 12 2001 grimmer@suse.de
|
||||
- updated pci.ids to latest version from
|
||||
http://pciids.sourceforge.net/
|
||||
- added pci.ids.bz2 as a separate source file and removed
|
||||
pci.ids.add.dif (now included upstream)
|
||||
* Mon Sep 24 2001 grimmer@suse.de
|
||||
- added some missing PCI IDs for LSI Logic Fibre Channel
|
||||
controllers to pci.ids.add.diff
|
||||
- corrected typos in pci.ids (Fiber Channel -> Fibre Channel)
|
||||
- added LSI Logic Inc. to vendor ID 0x1000
|
||||
* Wed Sep 19 2001 grimmer@suse.de
|
||||
- added some missing PCI IDs for Compaq NICs to pci.ids.add.diff
|
||||
see [#8918] for the list
|
||||
* Mon Sep 10 2001 grimmer@suse.de
|
||||
- corrected some Intel NIC entries upon request from Intel
|
||||
- merged pci.ids.riva.diff and the Intel changes in pci.ids.add.diff
|
||||
* Mon Sep 3 2001 garloff@suse.de
|
||||
- Riva TnT corrections from snbarth:
|
||||
* The name of Riva TnT 128 is Riva TnT.
|
||||
* NVidia/SGS Joint Venture (12d2) never built TNT or later.
|
||||
* Wed Aug 29 2001 grimmer@suse.de
|
||||
- merged pci.ids.244ac6.diff and pci.ids.add.diff into a single
|
||||
patch (again named pci.ids.add.diff) and added some more PCI IDs
|
||||
collected by Dave Jones <davej@suse.de> from various sources,
|
||||
including the current pciutils CVS tree.
|
||||
- beautyfied the spec file a bit (added clean section and defattr
|
||||
in file list)
|
||||
* Mon May 21 2001 poeml@suse.de
|
||||
- add -devel subpackage
|
||||
* Thu May 10 2001 garloff@suse.de
|
||||
- Merge pci.ids from 2.4.4ac6
|
||||
- bzip2 tarball
|
||||
* Thu May 3 2001 garloff@suse.de
|
||||
- Also don't die on failing to read data of a normal device,
|
||||
just complain loudly (and return 2 in the end)
|
||||
- Updated pci.ids from linux-2.4.4 and added DFE-660.
|
||||
* Wed Jan 17 2001 garloff@suse.de
|
||||
- Don't die on failure to read ext. cardbus data. [#5817]
|
||||
* Sun Dec 17 2000 garloff@suse.de
|
||||
- Added pci.ids from linux-2.4.0-test12
|
||||
- Added pci.ids floating around (lkml, RH)
|
||||
- Added pci.ids for i820, ICH2/-M
|
||||
* Mon Sep 18 2000 schwab@suse.de
|
||||
- Add `-Wno-format' to avoid spurious compile errors.
|
||||
* Thu Aug 17 2000 ro@suse.de
|
||||
- cleanup srcdir
|
||||
* Sun Jun 11 2000 olh@suse.de
|
||||
- update to 2.1.8
|
||||
* Mon Jan 24 2000 aj@suse.de
|
||||
- update to 2.1.4, fix build problems with latest glibc, use patch
|
||||
for make file from Martin Mares.
|
||||
* Thu Jan 20 2000 aj@suse.de
|
||||
- update to 2.1.3, /usr/man -> /usr/share/man
|
||||
* Tue Jan 4 2000 ro@suse.de
|
||||
- update to 2.1.2
|
||||
* Mon Oct 25 1999 ro@suse.de
|
||||
- fixed to compile on axp
|
||||
* Sat Oct 23 1999 ro@suse.de
|
||||
- update to 2.1pre8 / using Buildroot
|
||||
* Mon Sep 13 1999 bs@suse.de
|
||||
- ran old prepare_spec on spec file to switch to new prepare_spec.
|
||||
* Thu May 20 1999 ro@suse.de
|
||||
- update to 2.0
|
||||
* Wed Mar 31 1999 bs@suse.de
|
||||
- don't use lx_hack for build
|
||||
* Mon Feb 22 1999 ro@suse.de
|
||||
- update to 1.10
|
||||
* Wed Nov 25 1998 ro@suse.de
|
||||
- created package, version 1.08
|
85
pciutils.keyring
Normal file
85
pciutils.keyring
Normal file
|
@ -0,0 +1,85 @@
|
|||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
|
||||
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
|
||||
+wy3OGqhxFrvSisPD49xVMZ8J5n0SYISHA==
|
||||
=yy6O
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
102
pciutils.spec
Normal file
102
pciutils.spec
Normal file
|
@ -0,0 +1,102 @@
|
|||
#
|
||||
# spec file for package pciutils
|
||||
#
|
||||
# Copyright (c) 2022-2023 ZhuningOS
|
||||
#
|
||||
|
||||
|
||||
%define lname libpci3
|
||||
Name: pciutils
|
||||
Version: 3.5.6
|
||||
Release: 150300.13.6.1
|
||||
Summary: PCI utilities for the Linux Kernel
|
||||
License: GPL-2.0+
|
||||
Group: Hardware/Other
|
||||
Url: http://atrey.karlin.mff.cuni.cz/~mj/pciutils.shtml
|
||||
Source: https://www.kernel.org/pub/software/utils/%{name}/%{name}-%{version}.tar.xz
|
||||
Source1: https://www.kernel.org/pub/software/utils/%{name}/%{name}-%{version}.tar.sign
|
||||
Source2: baselibs.conf
|
||||
Source3: pciutils.keyring
|
||||
Patch0: pciutils-3.2.0_update-dist.patch
|
||||
Patch1: pciutils-3.1.9_pkgconfig.patch
|
||||
Patch2: pciutils-ocloexec.patch
|
||||
Patch3: pciutils-endianh.patch
|
||||
Patch4: pciutils-VPD-When-printing-item-IDs-escape-non-ASCII-characte.patch
|
||||
Patch5: pciutils-Add-decoding-of-vendor-specific-VPD-fields.patch
|
||||
Patch6: pciutils-VPD-Cleanup.patch
|
||||
# https://github.com/pciutils/pciutils/commit/e12bd01eea67ca8cf539263124843ba281eb6ecc
|
||||
Patch7: pciutils-add-decode-support-for-RCECs.patch
|
||||
Patch8: pciutils-Add-PCIe-5.0-data-rate-32-GT-s-support.patch
|
||||
Patch9: pciutils-Add-PCIe-6.0-data-rate-64-GT-s-support.patch
|
||||
Patch10: lspci-Fixed-buffer-overflows-in-ls-tree.c.patch
|
||||
BuildRequires: pkgconfig
|
||||
BuildRequires: pkgconfig(libkmod)
|
||||
BuildRequires: pkgconfig(zlib)
|
||||
Requires: pciutils-ids
|
||||
|
||||
%description
|
||||
lspci: This program displays detailed information about all PCI busses
|
||||
and devices in the system, replacing the original /proc/pci interface.
|
||||
|
||||
setpci: This program allows reading from and writing to PCI device
|
||||
configuration registers. For example, you can adjust the latency timers
|
||||
with it.
|
||||
|
||||
update-pciids: This program downloads the current version of the
|
||||
pci.ids file.
|
||||
|
||||
%package -n %{lname}
|
||||
Summary: PCI utility library
|
||||
Group: System/Libraries
|
||||
|
||||
%description -n %{lname}
|
||||
libpci offers access to the PCI configuration space.
|
||||
|
||||
%package devel
|
||||
Summary: Library and Include Files of the PCI utilities
|
||||
Group: Development/Libraries/C and C++
|
||||
Requires: %{lname} = %{version}
|
||||
|
||||
%description devel
|
||||
This package contains the files that are necessary for software
|
||||
development using the PCI utilities.
|
||||
|
||||
%prep
|
||||
%autosetup -p1
|
||||
|
||||
%build
|
||||
make %{?_smp_mflags} OPT="%{optflags}" PREFIX=%{_prefix} LIBDIR=/%{_lib} SBINDIR=/sbin STRIP="" SHARED="yes"
|
||||
|
||||
%install
|
||||
make install PREFIX=%{buildroot}%{_prefix} SBINDIR=%{buildroot}/sbin \
|
||||
ROOT=%{buildroot}/ MANDIR=%{buildroot}/%{_mandir} STRIP="" \
|
||||
SHARED="yes" LIBDIR=%{buildroot}/%{_lib}
|
||||
mkdir -p %{buildroot}%{_includedir}/pci
|
||||
cp -p lib/{pci,header,config,types}.h %{buildroot}%{_includedir}/pci/
|
||||
rm -rf %{buildroot}%{_datadir}/pci.ids*
|
||||
install -D -m 0644 lib/libpci.pc %{buildroot}%{_libdir}/pkgconfig/libpci.pc
|
||||
ln -sf /%{_lib}/libpci.so.3 %{buildroot}%{_libdir}/libpci.so
|
||||
|
||||
%post -n %{lname} -p /sbin/ldconfig
|
||||
%postun -n %{lname} -p /sbin/ldconfig
|
||||
|
||||
%files
|
||||
%license COPYING
|
||||
%doc README
|
||||
/sbin/lspci
|
||||
/sbin/setpci
|
||||
/sbin/update-pciids
|
||||
%{_mandir}/man7/pcilib.7%{ext_man}
|
||||
%{_mandir}/man8/lspci.8%{ext_man}
|
||||
%{_mandir}/man8/setpci.8%{ext_man}
|
||||
%{_mandir}/man8/update-pciids.8%{ext_man}
|
||||
|
||||
%files -n %{lname}
|
||||
/%{_lib}/libpci.so.*
|
||||
|
||||
%files devel
|
||||
%{_includedir}/pci/
|
||||
%{_libdir}/libpci.so
|
||||
%{_libdir}/pkgconfig/libpci.pc
|
||||
|
||||
%changelog
|
Loading…
Add table
Reference in a new issue