查看PCIE槽位是x8 还是 x6

本文介绍如何使用lspci命令查看PCIe设备的实际带宽与兼容性情况,包括通过grep筛选特定信息的方法及dmidecode命令的应用。特别关注了PCIex16插槽的实际带宽为X8及其向下兼容特性。
lspci | grep -i mel

lspci -vv -s <pcie num> |grep "LnkSta" |grep "Width"
dmidecode -t slot 

PCIe x16 (8 4 1)

带括号的意思是这个盘位实际带宽是X8,并向下兼容X4/X2的设备

这是echo 3 > /proc/irq/100/smp_affinity_list绑定中断亲和性后的打印 “hi309a /lib/udrivers # echo 3 > /proc/irq/100/smp_affinity_list [ 248.844979] udrv-pcie b00000000.pcie: MSI affinity set to CPU3 (addr=0x700003) [ 248.852237] udrv-pcie b00000000.pcie: [iWare][Info] msi#1 address_hi 0x0 address_lo 0x700003 ” 但是ping 192.168.0.10之后ping不通,然后报错打印 “PING 192.168.0.10 (192.168.0.10): 56 data bytes [ 276.225814] ------------[ cut here ]------------ [ 276.230456] NETDEV WATCHDOG: eth0 (r8169): transmit queue 0 timed out [ 276.236969] WARNING: CPU: 5 PID: 0 at net/sched/sch_generic.c:467 dev_watchdog+0x378/0x380 [ 276.245266] Modules linked in: hi309a_pcie_api_test(O) r8169 realtek hi309a_mii_mac(O) hi309a_watchdog(O) hi309a_djtag(O) ahci_platform libahci_platform libahci libata usb_storage sd_mod scsi_mod xhci_plat_hcd hi309a_usb_hisi(O) xhci_hcd usbcore hi309a_lbc(O) hi309a_tsensor(O) hi309a_log(O) hi309a_sata(O) hi309a_pcie(O) hi309a_serdes(O) hi309a_sfc(O) hi309a_pmbus(O) hi309a_i2c(O) hi309a_spi(O) hi309a_gpio(O) hi309a_pinctrl(O) hi309a_subctrl(O) ksecurec(O) [ 276.285804] CPU: 5 PID: 0 Comm: swapper/5 Tainted: G O 5.10.0 #2 [ 276.293141] Hardware name: Hisilicon PhosphorHi1230 EMU (DT) [ 276.298823] pstate: 60400009 (nZCv daif +PAN -UAO -TCO BTYPE=--) [ 276.304852] pc : dev_watchdog+0x378/0x380 [ 276.308877] lr : dev_watchdog+0x378/0x380 [ 276.312900] sp : ffff800011d63d50 [ 276.316225] x29: ffff800011d63d50 x28: 0000000000000000 [ 276.321559] x27: 0000000000000001 x26: 0000000000000004 [ 276.326893] x25: 00000000000001c0 x24: 00000000ffffffff [ 276.332227] x23: 0000000000000005 x22: ffff0004c0eb2440 [ 276.337560] x21: ffff8000119b6000 x20: ffff0004c0eb2000 [ 276.342894] x19: 0000000000000000 x18: 0000000000000006 [ 276.348228] x17: 0000000000000000 x16: 0000000000000000 [ 276.353562] x15: ffff800011d63870 x14: ffff800091d63a27 [ 276.358896] x13: ffff8000119d01d8 x12: 0000000000000987 [ 276.364229] x11: 000000000000032d x10: ffff800011a281d8 [ 276.369562] x9 : ffff8000119d01d8 x8 : 00000000ffffefff [ 276.374896] x7 : ffff800011a281d8 x6 : 80000000fffff000 [ 276.380230] x5 : 000000000000bff4 x4 : 0000000000000000 [ 276.385563] x3 : 0000000000000000 x2 : 0000000000000000 [ 276.390896] x1 : 0000000000000000 x0 : ffff0004c00fe3c0 [ 276.396230] Call trace: [ 276.398687] dev_watchdog+0x378/0x380 [ 276.402366] call_timer_fn.constprop.0+0x24/0x80 [ 276.407001] expire_timers+0xf8/0x11c [ 276.410676] run_timer_softirq+0x138/0x370 [ 276.414789] __do_softirq+0x114/0x268 [ 276.418467] irq_exit+0xec/0xf4 [ 276.421621] __handle_domain_irq+0x80/0xe0 [ 276.425732] gic_handle_irq+0xc0/0x140 [ 276.429494] el1_irq+0xac/0x140 [ 276.432648] arch_cpu_idle+0x18/0x30 [ 276.436237] default_idle_call+0x38/0xb0 [ 276.440176] do_idle+0x24c/0x320 [ 276.443415] cpu_startup_entry+0x28/0x60 [ 276.447355] secondary_start_kernel+0x148/0x194 [ 276.451902] ---[ end trace 7b2ecdf5c9b9fae0 ]--- ”
09-23
我走这个流程的时候 “上电,烧写编译文件,进入内核,加载pcie网卡以及相关驱动,然后配置网卡IP,然后cat /proc/interrupts,获取网卡的中断信息为 “100: 193 0 0 0 0 0 0 0 udrv_msi 524288 Edge eth0”, 然后echo 3 > /proc/irq/<irq_num>/smp_affinity_list”<irq_num>=100时,绑定成功, 但是使用pcie网卡ip去ping PC端的IP的时候,会出现下面的报错: hi309a /lib/udrivers # echo 3 > /proc/irq/100/smp_affinity_list [ 218.760956] udrv-pcie b00000000.pcie: MSI affinity set to CPU3 (addr=0x700003 ) [ 218.768217] udrv-pcie b00000000.pcie: [iWare][Info] msi#1 address_hi 0x0 addr ess_lo 0x700003 hi309a /lib/udrivers # ping 192.168.0.10 PING 192.168.0.10 (192.168.0.10): 56 data bytes [ 241.409795] ------------[ cut here ]------------ [ 241.414436] NETDEV WATCHDOG: eth0 (r8169): transmit queue 0 timed out [ 241.420949] WARNING: CPU: 1 PID: 0 at net/sched/sch_generic.c:467 dev_watchdo g+0x378/0x380 [ 241.429246] Modules linked in: hi309a_pcie_api_test(O) realtek r8169 hi309a_m ii_mac(O) hi309a_watchdog(O) hi309a_djtag(O) ahci_platform libahci_platform liba hci libata usb_storage sd_mod scsi_mod xhci_plat_hcd hi309a_usb_hisi(O) xhci_hcd usbcore hi309a_lbc(O) hi309a_tsensor(O) hi309a_log(O) hi309a_sata(O) hi309a_pci e(O) hi309a_serdes(O) hi309a_sfc(O) hi309a_pmbus(O) hi309a_i2c(O) hi309a_spi(O) hi309a_gpio(O) hi309a_pinctrl(O) hi309a_subctrl(O) ksecurec(O) [ 241.469783] CPU: 1 PID: 0 Comm: swapper/1 Tainted: G O 5.10.0 #2 [ 241.477119] Hardware name: Hisilicon PhosphorHi1230 EMU (DT) [ 241.482803] pstate: 60400009 (nZCv daif +PAN -UAO -TCO BTYPE=--) [ 241.488833] pc : dev_watchdog+0x378/0x380 [ 241.492858] lr : dev_watchdog+0x378/0x380 [ 241.496881] sp : ffff800011d43d50 [ 241.500207] x29: ffff800011d43d50 x28: 0000000000000000 [ 241.505540] x27: 0000000000000001 x26: 0000000000000004 [ 241.510873] x25: 00000000000001c0 x24: 00000000ffffffff [ 241.516207] x23: 0000000000000001 x22: ffff0004c9c80440 [ 241.521540] x21: ffff8000119b6000 x20: ffff0004c9c80000 [ 241.526874] x19: 0000000000000000 x18: 0000000000000006 [ 241.532208] x17: ffff80001155d438 x16: ffff0005fefde4c0 [ 241.537542] x15: ffff800011d43870 x14: ffff800091d43a27 [ 241.542876] x13: ffff8000119d01d8 x12: 00000000000009b1 [ 241.548209] x11: 000000000000033b x10: ffff800011a281d8 [ 241.553543] x9 : ffff8000119d01d8 x8 : 00000000ffffefff [ 241.558877] x7 : ffff800011a281d8 x6 : 80000000fffff000 [ 241.564210] x5 : 000000000000bff4 x4 : 0000000000000000 [ 241.569543] x3 : 0000000000000000 x2 : 0000000000000000 [ 241.574877] x1 : 0000000000000000 x0 : ffff0004c00faac0 [ 241.580212] Call trace: [ 241.582667] dev_watchdog+0x378/0x380 [ 241.586348] call_timer_fn.constprop.0+0x24/0x80 [ 241.590983] expire_timers+0xf8/0x11c [ 241.594659] run_timer_softirq+0x138/0x370 [ 241.598772] __do_softirq+0x114/0x268 [ 241.602449] irq_exit+0xec/0xf4 [ 241.605603] __handle_domain_irq+0x80/0xe0 [ 241.609715] gic_handle_irq+0xc0/0x140 [ 241.613478] el1_irq+0xac/0x140 [ 241.616633] arch_cpu_idle+0x18/0x30 [ 241.620221] default_idle_call+0x38/0xb0 [ 241.624160] do_idle+0x24c/0x320 [ 241.627400] cpu_startup_entry+0x28/0x60 [ 241.631340] secondary_start_kernel+0x148/0x194 [ 241.635887] ---[ end trace 524933050d133376 ]--- 请结合代码帮我进行详细分析
最新发布
09-24
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值