1*b4fe7398SJon Pan-DohPCIe Device AER statistics 2*b4fe7398SJon Pan-Doh-------------------------- 3*b4fe7398SJon Pan-Doh 4*b4fe7398SJon Pan-DohThese attributes show up under all the devices that are AER capable. These 5*b4fe7398SJon Pan-Dohstatistical counters indicate the errors "as seen/reported by the device". 6*b4fe7398SJon Pan-DohNote that this may mean that if an endpoint is causing problems, the AER 7*b4fe7398SJon Pan-Dohcounters may increment at its link partner (e.g. root port) because the 8*b4fe7398SJon Pan-Doherrors may be "seen" / reported by the link partner and not the 9*b4fe7398SJon Pan-Dohproblematic endpoint itself (which may report all counters as 0 as it never 10*b4fe7398SJon Pan-Dohsaw any problems). 11*b4fe7398SJon Pan-Doh 12*b4fe7398SJon Pan-DohWhat: /sys/bus/pci/devices/<dev>/aer_dev_correctable 13*b4fe7398SJon Pan-DohDate: July 2018 14*b4fe7398SJon Pan-DohKernelVersion: 4.19.0 15*b4fe7398SJon Pan-DohContact: linux-pci@vger.kernel.org, rajatja@google.com 16*b4fe7398SJon Pan-DohDescription: List of correctable errors seen and reported by this 17*b4fe7398SJon Pan-Doh PCI device using ERR_COR. Note that since multiple errors may 18*b4fe7398SJon Pan-Doh be reported using a single ERR_COR message, thus 19*b4fe7398SJon Pan-Doh TOTAL_ERR_COR at the end of the file may not match the actual 20*b4fe7398SJon Pan-Doh total of all the errors in the file. Sample output:: 21*b4fe7398SJon Pan-Doh 22*b4fe7398SJon Pan-Doh localhost /sys/devices/pci0000:00/0000:00:1c.0 # cat aer_dev_correctable 23*b4fe7398SJon Pan-Doh Receiver Error 2 24*b4fe7398SJon Pan-Doh Bad TLP 0 25*b4fe7398SJon Pan-Doh Bad DLLP 0 26*b4fe7398SJon Pan-Doh RELAY_NUM Rollover 0 27*b4fe7398SJon Pan-Doh Replay Timer Timeout 0 28*b4fe7398SJon Pan-Doh Advisory Non-Fatal 0 29*b4fe7398SJon Pan-Doh Corrected Internal Error 0 30*b4fe7398SJon Pan-Doh Header Log Overflow 0 31*b4fe7398SJon Pan-Doh TOTAL_ERR_COR 2 32*b4fe7398SJon Pan-Doh 33*b4fe7398SJon Pan-DohWhat: /sys/bus/pci/devices/<dev>/aer_dev_fatal 34*b4fe7398SJon Pan-DohDate: July 2018 35*b4fe7398SJon Pan-DohKernelVersion: 4.19.0 36*b4fe7398SJon Pan-DohContact: linux-pci@vger.kernel.org, rajatja@google.com 37*b4fe7398SJon Pan-DohDescription: List of uncorrectable fatal errors seen and reported by this 38*b4fe7398SJon Pan-Doh PCI device using ERR_FATAL. Note that since multiple errors may 39*b4fe7398SJon Pan-Doh be reported using a single ERR_FATAL message, thus 40*b4fe7398SJon Pan-Doh TOTAL_ERR_FATAL at the end of the file may not match the actual 41*b4fe7398SJon Pan-Doh total of all the errors in the file. Sample output:: 42*b4fe7398SJon Pan-Doh 43*b4fe7398SJon Pan-Doh localhost /sys/devices/pci0000:00/0000:00:1c.0 # cat aer_dev_fatal 44*b4fe7398SJon Pan-Doh Undefined 0 45*b4fe7398SJon Pan-Doh Data Link Protocol 0 46*b4fe7398SJon Pan-Doh Surprise Down Error 0 47*b4fe7398SJon Pan-Doh Poisoned TLP 0 48*b4fe7398SJon Pan-Doh Flow Control Protocol 0 49*b4fe7398SJon Pan-Doh Completion Timeout 0 50*b4fe7398SJon Pan-Doh Completer Abort 0 51*b4fe7398SJon Pan-Doh Unexpected Completion 0 52*b4fe7398SJon Pan-Doh Receiver Overflow 0 53*b4fe7398SJon Pan-Doh Malformed TLP 0 54*b4fe7398SJon Pan-Doh ECRC 0 55*b4fe7398SJon Pan-Doh Unsupported Request 0 56*b4fe7398SJon Pan-Doh ACS Violation 0 57*b4fe7398SJon Pan-Doh Uncorrectable Internal Error 0 58*b4fe7398SJon Pan-Doh MC Blocked TLP 0 59*b4fe7398SJon Pan-Doh AtomicOp Egress Blocked 0 60*b4fe7398SJon Pan-Doh TLP Prefix Blocked Error 0 61*b4fe7398SJon Pan-Doh TOTAL_ERR_FATAL 0 62*b4fe7398SJon Pan-Doh 63*b4fe7398SJon Pan-DohWhat: /sys/bus/pci/devices/<dev>/aer_dev_nonfatal 64*b4fe7398SJon Pan-DohDate: July 2018 65*b4fe7398SJon Pan-DohKernelVersion: 4.19.0 66*b4fe7398SJon Pan-DohContact: linux-pci@vger.kernel.org, rajatja@google.com 67*b4fe7398SJon Pan-DohDescription: List of uncorrectable nonfatal errors seen and reported by this 68*b4fe7398SJon Pan-Doh PCI device using ERR_NONFATAL. Note that since multiple errors 69*b4fe7398SJon Pan-Doh may be reported using a single ERR_FATAL message, thus 70*b4fe7398SJon Pan-Doh TOTAL_ERR_NONFATAL at the end of the file may not match the 71*b4fe7398SJon Pan-Doh actual total of all the errors in the file. Sample output:: 72*b4fe7398SJon Pan-Doh 73*b4fe7398SJon Pan-Doh localhost /sys/devices/pci0000:00/0000:00:1c.0 # cat aer_dev_nonfatal 74*b4fe7398SJon Pan-Doh Undefined 0 75*b4fe7398SJon Pan-Doh Data Link Protocol 0 76*b4fe7398SJon Pan-Doh Surprise Down Error 0 77*b4fe7398SJon Pan-Doh Poisoned TLP 0 78*b4fe7398SJon Pan-Doh Flow Control Protocol 0 79*b4fe7398SJon Pan-Doh Completion Timeout 0 80*b4fe7398SJon Pan-Doh Completer Abort 0 81*b4fe7398SJon Pan-Doh Unexpected Completion 0 82*b4fe7398SJon Pan-Doh Receiver Overflow 0 83*b4fe7398SJon Pan-Doh Malformed TLP 0 84*b4fe7398SJon Pan-Doh ECRC 0 85*b4fe7398SJon Pan-Doh Unsupported Request 0 86*b4fe7398SJon Pan-Doh ACS Violation 0 87*b4fe7398SJon Pan-Doh Uncorrectable Internal Error 0 88*b4fe7398SJon Pan-Doh MC Blocked TLP 0 89*b4fe7398SJon Pan-Doh AtomicOp Egress Blocked 0 90*b4fe7398SJon Pan-Doh TLP Prefix Blocked Error 0 91*b4fe7398SJon Pan-Doh TOTAL_ERR_NONFATAL 0 92*b4fe7398SJon Pan-Doh 93*b4fe7398SJon Pan-DohPCIe Rootport AER statistics 94*b4fe7398SJon Pan-Doh---------------------------- 95*b4fe7398SJon Pan-Doh 96*b4fe7398SJon Pan-DohThese attributes show up under only the rootports (or root complex event 97*b4fe7398SJon Pan-Dohcollectors) that are AER capable. These indicate the number of error messages as 98*b4fe7398SJon Pan-Doh"reported to" the rootport. Please note that the rootports also transmit 99*b4fe7398SJon Pan-Doh(internally) the ERR_* messages for errors seen by the internal rootport PCI 100*b4fe7398SJon Pan-Dohdevice, so these counters include them and are thus cumulative of all the error 101*b4fe7398SJon Pan-Dohmessages on the PCI hierarchy originating at that root port. 102*b4fe7398SJon Pan-Doh 103*b4fe7398SJon Pan-DohWhat: /sys/bus/pci/devices/<dev>/aer_rootport_total_err_cor 104*b4fe7398SJon Pan-DohDate: July 2018 105*b4fe7398SJon Pan-DohKernelVersion: 4.19.0 106*b4fe7398SJon Pan-DohContact: linux-pci@vger.kernel.org, rajatja@google.com 107*b4fe7398SJon Pan-DohDescription: Total number of ERR_COR messages reported to rootport. 108*b4fe7398SJon Pan-Doh 109*b4fe7398SJon Pan-DohWhat: /sys/bus/pci/devices/<dev>/aer_rootport_total_err_fatal 110*b4fe7398SJon Pan-DohDate: July 2018 111*b4fe7398SJon Pan-DohKernelVersion: 4.19.0 112*b4fe7398SJon Pan-DohContact: linux-pci@vger.kernel.org, rajatja@google.com 113*b4fe7398SJon Pan-DohDescription: Total number of ERR_FATAL messages reported to rootport. 114*b4fe7398SJon Pan-Doh 115*b4fe7398SJon Pan-DohWhat: /sys/bus/pci/devices/<dev>/aer_rootport_total_err_nonfatal 116*b4fe7398SJon Pan-DohDate: July 2018 117*b4fe7398SJon Pan-DohKernelVersion: 4.19.0 118*b4fe7398SJon Pan-DohContact: linux-pci@vger.kernel.org, rajatja@google.com 119*b4fe7398SJon Pan-DohDescription: Total number of ERR_NONFATAL messages reported to rootport. 120*b4fe7398SJon Pan-Doh 121*b4fe7398SJon Pan-DohPCIe AER ratelimits 122*b4fe7398SJon Pan-Doh------------------- 123*b4fe7398SJon Pan-Doh 124*b4fe7398SJon Pan-DohThese attributes show up under all the devices that are AER capable. 125*b4fe7398SJon Pan-DohThey represent configurable ratelimits of logs per error type. 126*b4fe7398SJon Pan-Doh 127*b4fe7398SJon Pan-DohSee Documentation/PCI/pcieaer-howto.rst for more info on ratelimits. 128*b4fe7398SJon Pan-Doh 129*b4fe7398SJon Pan-DohWhat: /sys/bus/pci/devices/<dev>/aer/correctable_ratelimit_interval_ms 130*b4fe7398SJon Pan-DohDate: May 2025 131*b4fe7398SJon Pan-DohKernelVersion: 6.16.0 132*b4fe7398SJon Pan-DohContact: linux-pci@vger.kernel.org 133*b4fe7398SJon Pan-DohDescription: Writing 0 disables AER correctable error log ratelimiting. 134*b4fe7398SJon Pan-Doh Writing a positive value sets the ratelimit interval in ms. 135*b4fe7398SJon Pan-Doh Default is DEFAULT_RATELIMIT_INTERVAL (5000 ms). 136*b4fe7398SJon Pan-Doh 137*b4fe7398SJon Pan-DohWhat: /sys/bus/pci/devices/<dev>/aer/correctable_ratelimit_burst 138*b4fe7398SJon Pan-DohDate: May 2025 139*b4fe7398SJon Pan-DohKernelVersion: 6.16.0 140*b4fe7398SJon Pan-DohContact: linux-pci@vger.kernel.org 141*b4fe7398SJon Pan-DohDescription: Ratelimit burst for correctable error logs. Writing a value 142*b4fe7398SJon Pan-Doh changes the number of errors (burst) allowed per interval 143*b4fe7398SJon Pan-Doh before ratelimiting. Reading gets the current ratelimit 144*b4fe7398SJon Pan-Doh burst. Default is DEFAULT_RATELIMIT_BURST (10). 145*b4fe7398SJon Pan-Doh 146*b4fe7398SJon Pan-DohWhat: /sys/bus/pci/devices/<dev>/aer/nonfatal_ratelimit_interval_ms 147*b4fe7398SJon Pan-DohDate: May 2025 148*b4fe7398SJon Pan-DohKernelVersion: 6.16.0 149*b4fe7398SJon Pan-DohContact: linux-pci@vger.kernel.org 150*b4fe7398SJon Pan-DohDescription: Writing 0 disables AER non-fatal uncorrectable error log 151*b4fe7398SJon Pan-Doh ratelimiting. Writing a positive value sets the ratelimit 152*b4fe7398SJon Pan-Doh interval in ms. Default is DEFAULT_RATELIMIT_INTERVAL 153*b4fe7398SJon Pan-Doh (5000 ms). 154*b4fe7398SJon Pan-Doh 155*b4fe7398SJon Pan-DohWhat: /sys/bus/pci/devices/<dev>/aer/nonfatal_ratelimit_burst 156*b4fe7398SJon Pan-DohDate: May 2025 157*b4fe7398SJon Pan-DohKernelVersion: 6.16.0 158*b4fe7398SJon Pan-DohContact: linux-pci@vger.kernel.org 159*b4fe7398SJon Pan-DohDescription: Ratelimit burst for non-fatal uncorrectable error logs. 160*b4fe7398SJon Pan-Doh Writing a value changes the number of errors (burst) 161*b4fe7398SJon Pan-Doh allowed per interval before ratelimiting. Reading gets the 162*b4fe7398SJon Pan-Doh current ratelimit burst. Default is DEFAULT_RATELIMIT_BURST 163*b4fe7398SJon Pan-Doh (10). 164