Sun System Handbook - ISO 3.4 June 2011 Internal/Partner Edition | |||
|
|
Solution Type Problem Resolution Sure Solution 1009696.1 : "kstat -p" and "prtdiag -v" may give seemingly different PCI bus speeds for Dual Fast Ethernet and Dual SCSI PCI Adapters
PreviouslyPublishedAs 213337 Symptoms On the Mid-Range SPARC(R) servers and High-End SPARC(R) SCSI PCI Adapters can be observed when using "prtdiag -v" and "kstat -p | grep pci_bus_speed". - first example: $ prtdiag -v ... ========================= IO Cards ========================= Bus Max IO Port Bus Freq Bus Dev, FRU Name Type ID Side Slot MHz Freq Func State Name Model ---------- ---- ---- ---- ---- ---- ---- ---- ----- -------------------------------- ---------------------- ... /N0/IB6/P0 PCI 24 A 3 66 66 1,0 ok pci-pci8086,b154.0/network (netw+ pci-bridge /N0/IB6/P0 PCI 24 A 3 66 66 0,0 ok network-pci100b,35.30 SUNW,pci-ce /N0/IB6/P0 PCI 24 A 3 66 66 1,0 ok network-pci100b,35.30 SUNW,pci-ce /N0/IB6/P0 PCI 24 A 3 66 66 2,0 ok scsi-pci1000,b.7/disk (block) /N0/IB6/P0 PCI 24 A 3 66 66 2,1 ok scsi-pci1000,b.7/disk (block) ... /N0/IB7/P0 PCI 26 B 0 33 33 1,0 ok pci-pci8086,b154.0/network (netw+ pci-bridge /N0/IB7/P0 PCI 26 B 0 33 33 0,0 ok network-pci100b,35.30 SUNW,pci-ce /N0/IB7/P0 PCI 26 B 0 33 33 1,0 ok network-pci100b,35.30 SUNW,pci-ce /N0/IB7/P0 PCI 26 B 0 33 33 2,0 ok scsi-pci1000,b.7/disk (block) /N0/IB7/P0 PCI 26 B 0 33 33 2,1 ok scsi-pci1000,b.7/disk (block) /N0/IB7/P0 PCI 26 A 3 66 66 1,0 ok network-pci100b,35.30 SUNW,pci-ce /N0/IB7/P1 PCI 27 A 7 66 66 1,0 ok network-pci100b,35.30 SUNW,pci-ce -> 4x66, 2x33 $ grep pci_bus_speed kstat-p.out ce:0:ce0:pci_bus_speed 33 ce:1:ce1:pci_bus_speed 33 ce:2:ce2:pci_bus_speed 66 ce:3:ce3:pci_bus_speed 66 ce:4:ce4:pci_bus_speed 33 ce:5:ce5:pci_bus_speed 33 -> 2x66, 4x33 $ grep ce path* "/ssm@0,0/pci@1a,700000/pci@1/network@0" 0 "ce" = IB7 slot0, /N0/IB7/P0, prtdiag 33, kstat 33 "/ssm@0,0/pci@1a,700000/pci@1/network@1" 1 "ce" = IB7 slot0, /N0/IB7/P0, prtdiag 33, kstat 33 "/ssm@0,0/pci@1a,600000/network@1" 2 "ce" = IB7 slot3, /N0/IB7/P0, prtdiag 66, kstat 66 "/ssm@0,0/pci@1b,600000/network@1" 3 "ce" = IB7 slot7, /N0/IB7/P1, prtdiag 66, kstat 66 "/ssm@0,0/pci@18,600000/pci@1/network@0" 4 "ce" = IB6 slot3, /N0/IB6/P0, prtdiag 66, kstat 33 <- "/ssm@0,0/pci@18,600000/pci@1/network@1" 5 "ce" = IB6 slot3, /N0/IB6/P0, prtdiag 66, kstat 33 <- -> the card in IB6 slot3 shows 33 MHz in "kstat" and 66 MHz in "prtdiag" output - a different example: $ prtdiag -v ========================= IO Cards ========================= Bus Max IO Port Bus Freq Bus Dev, FRU Name Type ID Side Slot MHz Freq Func State Name Model ---------- ---- ---- ---- ---- ---- ---- ---- ----- -------------------------------- ---------------------- /N0/IB6/P0 PCI 24 B 0 33 33 1,0 ok pci-pci8086,b154.0/network (netw+ pci-bridge /N0/IB6/P0 PCI 24 B 0 33 33 0,0 ok network-pci108e,abba.20 SUNW,pci-ce /N0/IB6/P0 PCI 24 B 0 33 33 1,0 ok network-pci108e,abba.20 SUNW,pci-ce /N0/IB6/P0 PCI 24 B 0 33 33 2,0 ok scsi-pci1000,b.1000.1000.7/disk + /N0/IB6/P0 PCI 24 B 0 33 33 2,1 ok scsi-pci1000,b.1000.1000.7/disk + ... /N0/IB6/P0 PCI 24 A 3 66 66 1,0 ok network-pci108e,abba.11 SUNW,pci-ce ... /N0/IB8/P0 PCI 28 B 0 33 33 1,0 ok network-pci100b,35.30 SUNW,pci-ce ... /N0/IB8/P0 PCI 28 A 3 66 66 1,0 ok network-pci108e,abba.11 SUNW,pci-ce $ grep pci_bus_speed kstat-p.out ce:0:ce0:pci_bus_speed 66 -> IB6 slot0 ce:1:ce1:pci_bus_speed 66 -> IB6 slot0 ce:2:ce2:pci_bus_speed 66 -> IB6 slot3 ce:3:ce3:pci_bus_speed 66 -> IB8 slot3 ce:4:ce4:pci_bus_speed 33 -> IB8 slot0 - the card in IB6 slot0 is showing the opposite behaviour, 66 MHz in "kstat" and 33 MHz in "prtdiag" output Resolution The kstat information is correct. While the slot's PCI bus speed is 66MHz, on the secondary side of bridge (pci-pci8086,b154.0) the "ce" chip is actually running at 33MHz due to the bus speed limitation of the SCSI chips which sit on the same bus. The "ce" driver reads the bus interface config registers to get the pci_bus_speed information. The bit is a read only bit that was set by the hardware. In the second example, the Dual Fast Ethernet and Dual SCSI PCI Adapter is the very early version with a different ASIC chip which has a hardware bug.
Product Sun Fire V1280 Server Netra 1280 Server Sun Netra 1290 Server Sun Fire E6900 Server Sun Fire E4900 Server Sun Fire E2900 Server Sun Fire 6800 Server Sun Fire 4810 Server Sun Fire 4800 Server Sun Fire 12K Server Sun Fire 15K Server Sun Fire E20K Server Sun Fire E25K Server Internal Comments The following is strictly for the use of Sun employees: CR 6515526 "kstat -p" may give wrong PCI bus speeds for Cauldron cards on Serengeti, LW8 and Starcat prtdiag, kstat, pci_bus_speed, amazon, serengeti, starcat, lw8 Previously Published As 88356 Change History Date: 2009-11-20 User Name: 117021 Volkmar Grote Action: Reviewed for Content Team Comment: Cosmetic changes, added LW8 Netras Date: 2007-02-02 User Name: 71396 Action: Approved Comment: Performed final review of article. No changes required. Attachments This solution has no attachment |
||||||||||||
|