Blame SOURCES/pciutils-3.7.0-decodercec.patch

15235c
From e12bd01eea67ca8cf539263124843ba281eb6ecc Mon Sep 17 00:00:00 2001
15235c
From: Sean V Kelley <sean.v.kelley@linux.intel.com>
15235c
Date: Wed, 24 Jun 2020 15:39:40 -0700
15235c
Subject: pciutils: Add decode support for RCECs
15235c
15235c
Root Complex Event Collectors provide support for terminating error
15235c
and PME messages from RCiEPs.  This patch provides basic decoding for
15235c
the lspci RCEC Endpoint Association Extended Capability. See PCIe 5.0-1,
15235c
sec 7.9.10 for further details.
15235c
15235c
Suggested-by: Bjorn Helgaas <bhelgaas@google.com>
15235c
Signed-off-by: Sean V Kelley <sean.v.kelley@linux.intel.com>
15235c
---
15235c
 lib/header.h   |   8 +-
15235c
 ls-ecaps.c     |  59 +++++++++++-
15235c
 setpci.c       |   2 +-
15235c
 tests/cap-rcec | 299 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
15235c
 4 files changed, 364 insertions(+), 4 deletions(-)
15235c
 create mode 100644 tests/cap-rcec
15235c
15235c
diff --git a/lib/header.h b/lib/header.h
15235c
index 472816e..57a9343 100644
15235c
--- a/lib/header.h
15235c
+++ b/lib/header.h
15235c
@@ -219,7 +219,7 @@
15235c
 #define PCI_EXT_CAP_ID_PB	0x04	/* Power Budgeting */
15235c
 #define PCI_EXT_CAP_ID_RCLINK	0x05	/* Root Complex Link Declaration */
15235c
 #define PCI_EXT_CAP_ID_RCILINK	0x06	/* Root Complex Internal Link Declaration */
15235c
-#define PCI_EXT_CAP_ID_RCECOLL	0x07	/* Root Complex Event Collector */
15235c
+#define PCI_EXT_CAP_ID_RCEC	0x07	/* Root Complex Event Collector */
15235c
 #define PCI_EXT_CAP_ID_MFVC	0x08	/* Multi-Function Virtual Channel */
15235c
 #define PCI_EXT_CAP_ID_VC2	0x09	/* Virtual Channel (2nd ID) */
15235c
 #define PCI_EXT_CAP_ID_RCRB	0x0a	/* Root Complex Register Block */
15235c
@@ -1048,6 +1048,12 @@
15235c
 #define  PCI_RCLINK_LINK_ADDR	8	/* Link Entry: Address (64-bit) */
15235c
 #define  PCI_RCLINK_LINK_SIZE	16	/* Link Entry: sizeof */
15235c
 
15235c
+/* Root Complex Event Collector Endpoint Association */
15235c
+#define  PCI_RCEC_EP_CAP_VER(reg)	(((reg) >> 16) & 0xf)
15235c
+#define  PCI_RCEC_BUSN_REG_VER	0x02	/* as per PCIe sec 7.9.10.1 */
15235c
+#define  PCI_RCEC_RCIEP_BMAP	0x0004	/* as per PCIe sec 7.9.10.2 */
15235c
+#define  PCI_RCEC_BUSN_REG	0x0008	/* as per PCIe sec 7.9.10.3 */
15235c
+
15235c
 /* PCIe Vendor-Specific Capability */
15235c
 #define PCI_EVNDR_HEADER	4	/* Vendor-Specific Header */
15235c
 #define PCI_EVNDR_REGISTERS	8	/* Vendor-Specific Registers */
15235c
diff --git a/ls-ecaps.c b/ls-ecaps.c
15235c
index e71209e..99c55ff 100644
15235c
--- a/ls-ecaps.c
15235c
+++ b/ls-ecaps.c
15235c
@@ -634,6 +634,61 @@ cap_rclink(struct device *d, int where)
15235c
     }
15235c
 }
15235c
 
15235c
+static void
15235c
+cap_rcec(struct device *d, int where)
15235c
+{
15235c
+  printf("Root Complex Event Collector Endpoint Association\n");
15235c
+  if (verbose < 2)
15235c
+    return;
15235c
+
15235c
+  if (!config_fetch(d, where, 12))
15235c
+    return;
15235c
+
15235c
+  u32 hdr = get_conf_long(d, where);
15235c
+  byte cap_ver = PCI_RCEC_EP_CAP_VER(hdr);
15235c
+  u32 bmap = get_conf_long(d, where + PCI_RCEC_RCIEP_BMAP);
15235c
+  printf("\t\tRCiEPBitmap: ");
15235c
+  if (bmap)
15235c
+    {
15235c
+      int prevmatched=0;
15235c
+      int adjcount=0;
15235c
+      int prevdev=0;
15235c
+      printf("RCiEP at Device(s):");
15235c
+      for (int dev=0; dev < 32; dev++)
15235c
+        {
15235c
+	  if (BITS(bmap, dev, 1))
15235c
+	    {
15235c
+	      if (!adjcount)
15235c
+	        printf("%s %u", (prevmatched) ? "," : "", dev);
15235c
+	      adjcount++;
15235c
+	      prevdev=dev;
15235c
+	      prevmatched=1;
15235c
+            }
15235c
+	  else
15235c
+	    {
15235c
+	      if (adjcount > 1)
15235c
+	        printf("-%u", prevdev);
15235c
+	      adjcount=0;
15235c
+            }
15235c
+        }
15235c
+   }
15235c
+  else
15235c
+    printf("%s", (verbose > 2) ? "00000000 [none]" : "[none]");
15235c
+  printf("\n");
15235c
+
15235c
+  if (cap_ver < PCI_RCEC_BUSN_REG_VER)
15235c
+    return;
15235c
+
15235c
+  u32 busn = get_conf_long(d, where + PCI_RCEC_BUSN_REG);
15235c
+  u8 lastbusn = BITS(busn, 16, 8);
15235c
+  u8 nextbusn = BITS(busn, 8, 8);
15235c
+
15235c
+  if ((lastbusn == 0x00) && (nextbusn == 0xff))
15235c
+    printf("\t\tAssociatedBusNumbers: %s\n", (verbose > 2) ? "ff-00 [none]" : "[none]");
15235c
+  else
15235c
+    printf("\t\tAssociatedBusNumbers: %02x-%02x\n", nextbusn, lastbusn );
15235c
+}
15235c
+
15235c
 static void
15235c
 cap_dvsec_cxl(struct device *d, int where)
15235c
 {
15235c
@@ -991,8 +1046,8 @@ show_ext_caps(struct device *d, int type)
15235c
 	  case PCI_EXT_CAP_ID_RCILINK:
15235c
 	    printf("Root Complex Internal Link \n");
15235c
 	    break;
15235c
-	  case PCI_EXT_CAP_ID_RCECOLL:
15235c
-	    printf("Root Complex Event Collector \n");
15235c
+	  case PCI_EXT_CAP_ID_RCEC:
15235c
+	    cap_rcec(d, where);
15235c
 	    break;
15235c
 	  case PCI_EXT_CAP_ID_MFVC:
15235c
 	    printf("Multi-Function Virtual Channel \n");
15235c
diff --git a/setpci.c b/setpci.c
15235c
index 90ca726..2cb70fa 100644
15235c
--- a/setpci.c
15235c
+++ b/setpci.c
15235c
@@ -350,7 +350,7 @@ static const struct reg_name pci_reg_names[] = {
15235c
   { 0x20004,	0, 0, "ECAP_PB" },
15235c
   { 0x20005,	0, 0, "ECAP_RCLINK" },
15235c
   { 0x20006,	0, 0, "ECAP_RCILINK" },
15235c
-  { 0x20007,	0, 0, "ECAP_RCECOLL" },
15235c
+  { 0x20007,	0, 0, "ECAP_RCEC" },
15235c
   { 0x20008,	0, 0, "ECAP_MFVC" },
15235c
   { 0x20009,	0, 0, "ECAP_VC2" },
15235c
   { 0x2000a,	0, 0, "ECAP_RBCB" },
15235c
diff --git a/tests/cap-rcec b/tests/cap-rcec
15235c
new file mode 100644
15235c
index 0000000..836d9a1
15235c
--- /dev/null
15235c
+++ b/tests/cap-rcec
15235c
@@ -0,0 +1,299 @@
15235c
+6a:00.4 Generic system peripheral [0807]: Intel Corporation Device 0b23
15235c
+        Subsystem: Intel Corporation Device 0000
15235c
+        Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx-
15235c
+        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- 
15235c
+        Interrupt: pin A routed to IRQ 255
15235c
+        NUMA node: 0
15235c
+        Capabilities: [40] Express (v2) Root Complex Event Collector, MSI 00
15235c
+                DevCap: MaxPayload 512 bytes, PhantFunc 0
15235c
+                        ExtTag- RBE-
15235c
+                DevCtl: CorrErr+ NonFatalErr+ FatalErr+ UnsupReq-
15235c
+                        RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop-
15235c
+                        MaxPayload 128 bytes, MaxReadReq 128 bytes
15235c
+                DevSta: CorrErr- NonFatalErr- FatalErr- UnsupReq- AuxPwr- TransPend-
15235c
+                RootCap: CRSVisible-
15235c
+                RootCtl: ErrCorrectable+ ErrNon-Fatal+ ErrFatal+ PMEIntEna- CRSVisible-
15235c
+                RootSta: PME ReqID 0000, PMEStatus- PMEPending-
15235c
+                DevCap2: Completion Timeout: Not Supported, TimeoutDis- NROPrPrP- LTR-
15235c
+                         10BitTagComp- 10BitTagReq- OBFF Not Supported, ExtFmt- EETLPPrefix-
15235c
+                         EmergencyPowerReduction Not Supported, EmergencyPowerReductionInit-
15235c
+                         FRS-
15235c
+                DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- LTR- OBFF Disabled,
15235c
+        Capabilities: [80] Power Management version 3
15235c
+                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
15235c
+                Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
15235c
+        Capabilities: [90] MSI: Enable- Count=1/1 Maskable+ 64bit-
15235c
+                Address: 00000000  Data: 0000
15235c
+                Masking: 00000000  Pending: 00000000
15235c
+        Capabilities: [100 v1] Advanced Error Reporting
15235c
+                UESta:  DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
15235c
+                UEMsk:  DLP- SDES+ TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq+ ACSViol-
15235c
+                UESvrt: DLP+ SDES- TLP+ FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-
15235c
+                CESta:  RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr-
15235c
+                CEMsk:  RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr+
15235c
+                AERCap: First Error Pointer: 00, ECRCGenCap- ECRCGenEn- ECRCChkCap- ECRCChkEn-
15235c
+                        MultHdrRecCap- MultHdrRecEn- TLPPfxPres- HdrLogCap-
15235c
+                HeaderLog: 00000000 00000000 00000000 00000000
15235c
+                RootCmd: CERptEn- NFERptEn- FERptEn-
15235c
+                RootSta: CERcvd- MultCERcvd- UERcvd- MultUERcvd-
15235c
+                         FirstFatal- NonFatalMsg- FatalMsg- IntMsg 0
15235c
+                ErrorSrc: ERR_COR: 0000 ERR_FATAL/NONFATAL: 0000
15235c
+        Capabilities: [160 v2] Root Complex Event Collector Endpoint Association
15235c
+                RCiEPBitmap: RCiEP at Device(s): 1, 6, 8-10, 12, 15
15235c
+                AssociatedBusNumbers: 02-08
15235c
+00: 86 80 23 0b 00 01 10 00 00 00 07 08 00 00 00 00
15235c
+10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+20: 00 00 00 00 00 00 00 00 00 00 00 00 86 80 00 00
15235c
+30: 00 00 00 00 40 00 00 00 00 00 00 00 ff 01 00 00
15235c
+40: 10 80 a2 00 02 00 00 00 07 00 00 00 00 00 00 00
15235c
+50: 00 00 00 00 00 00 00 00 00 00 00 00 07 00 00 00
15235c
+60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+80: 01 90 03 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+90: 05 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+d0: 31 6a 08 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+100: 01 00 01 16 00 00 00 00 20 00 10 00 10 30 46 00
15235c
+110: 00 00 00 00 00 20 00 00 00 00 00 00 00 00 00 00
15235c
+120: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+130: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+140: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+150: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+160: 07 00 02 00 00 00 00 00 00 ff 00 00 00 00 00 00
15235c
+170: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+180: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+190: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+1a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+1b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+1c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+1d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+1e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+1f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+200: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+210: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+220: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+230: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+240: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+250: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+260: 00 00 00 00 07 00 00 00 00 00 00 00 00 00 00 00
15235c
+270: 00 00 00 00 00 00 00 00 07 00 00 00 00 00 00 00
15235c
+280: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+290: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+2a0: 00 00 00 00 00 00 00 00 20 00 18 00 20 00 18 00
15235c
+2b0: 20 00 18 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+2c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+2d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+2e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+2f0: 00 20 00 00 00 20 00 00 00 20 00 00 00 e0 00 00
15235c
+300: 00 e0 00 00 00 e0 00 00 00 e0 00 00 00 e0 00 00
15235c
+310: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+320: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+330: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+340: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+350: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+360: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+370: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+380: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+390: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+3a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+3b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+3c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+3d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+3e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+3f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+400: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+410: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+420: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+430: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+440: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+450: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+460: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+470: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+480: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+490: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+4a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+4b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+4c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+4d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+4e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+4f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+500: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+510: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+520: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+530: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+540: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+550: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+560: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+570: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+580: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+590: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+5a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+5b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+5c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+5d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+5e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+5f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+600: 44 00 00 00 91 00 00 00 00 00 00 00 00 00 00 00
15235c
+610: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+620: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+630: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+640: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+650: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+660: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+670: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+680: 90 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+690: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+6a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+6b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+6c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+6d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+6e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+6f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+700: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+710: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+720: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+730: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+740: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+750: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+760: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+770: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+780: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+790: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+7a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+7b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+7c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+7d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+7e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+7f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+800: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+810: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+820: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+830: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+840: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+850: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+860: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+870: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+880: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+890: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+8a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+8b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+8c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+8d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+8e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+8f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+900: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+910: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+920: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+930: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+940: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+950: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+960: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+970: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+980: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+990: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+9a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+9b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+9c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+9d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+9e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+9f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+a00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+a10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+a20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+a30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+a40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+a50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+a60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+a70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+a80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+a90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+aa0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+ab0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+ac0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+ad0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+ae0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+af0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+b00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+b10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+b20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+b30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+b40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+b50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+b60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+b70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+b80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+b90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+ba0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+bb0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+bc0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+bd0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+be0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+bf0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+c00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+c10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+c20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+c30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+c40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+c50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+c60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+c70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+c80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+c90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+ca0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+cb0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+cc0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+cd0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+ce0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+cf0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+d00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+d10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+d20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+d30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+d40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+d50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+d60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+d70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+d80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+d90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+da0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+db0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+dc0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+dd0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+de0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+df0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+e00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+e10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+e20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+e30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+e40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+e50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+e60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+e70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+e80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+e90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+ea0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+eb0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+ec0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+ed0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+ee0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+ef0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+f00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+f10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+f20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+f30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+f40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+f50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+f60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+f70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+f80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+f90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+fa0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+fb0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+fc0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+fd0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+fe0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
+ff0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
15235c
-- 
15235c
cgit 1.2.3-1.el7
15235c