亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊(cè) 查看新帖 |

Chinaunix

  平臺(tái) 論壇 博客 文庫(kù)
最近訪問板塊 發(fā)新帖
查看: 2141 | 回復(fù): 3
打印 上一主題 下一主題

[網(wǎng)絡(luò)子系統(tǒng)] 網(wǎng)卡通信問題請(qǐng)問各位大牛 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2015-01-08 14:46 |只看該作者 |倒序?yàn)g覽
小弟有一款cavium板子,5020, 上面的網(wǎng)卡其中千兆的線由于主板設(shè)計(jì)問題不能連接。板子應(yīng)可用100M或者10M連接。
但是當(dāng)兩臺(tái)這樣的機(jī)器對(duì)接的時(shí)候,發(fā)現(xiàn)連接不上,網(wǎng)口燈不亮。但是將一臺(tái)板子里面的自協(xié)商關(guān)閉之后網(wǎng)口燈點(diǎn)亮,網(wǎng)絡(luò)連接。
連接速率顯示100M全雙工。
但當(dāng)這樣對(duì)接之后,使用bw進(jìn)行性能測(cè)試時(shí), 關(guān)閉自協(xié)商的那臺(tái)機(jī)器會(huì)panic,信息如下:
/ # Port 1 receive error code 6, packet dropped
Port 1 receive error code 6, packet dropped
Port 1 receive error code 6, packet dropped
CPU 0 Unable to handle kernel paging request at virtual address 0000000000000000, epc == ffffffff8138e0c4, ra == ffffffff8138e988
Oops[#1]:
Cpu 0
$ 0   : 0000000000000000 0000000000000008 0000000000000000 0000000000000000
$ 4   : a80000000db62a80 0000000000000040 0000000000000040 ffffffff8189f168
$ 8   : 0000000000000000 0000000000000000 ffffffff81482ac8 0000000000000000
$12   : 0000000000000010 ffffffff81105a74 a80000000f850000 0000000000000000
$16   : 0000000000000000 a800000002688ed8 a800000002688ee0 00000000ffffd08a
$20   : 0000000000000040 ffffffff818a0000 a800000002688f10 ffffffff818a0000
$24   : 0000000000000006 0000000000000000                                 
$28   : ffffffff81898000 ffffffff8189bb70 ffffffff821ee6a0 ffffffff8138e988
Hi    : 00000000000000cc
Lo    : fffffffff070e000
epc   : ffffffff8138e0c4 process_backlog+0x94/0x108
    Not tainted
ra    : ffffffff8138e988 net_rx_action+0x118/0x220
Status: 1000cce2    KX SX UX KERNEL EXL
Cause : 0080000c
BadVA : 0000000000000000
PrId  : 000d0601 (Cavium Octeon+)
Modules linked in: crypto_null authenc ebt_redirect ebtable_broute ebtables xt_comment xt_state iptable_nat nf_nat nf_conntrack_ipv4 nf_conntrack nf_defrag_ipv4 alg_init pcie_ssx06 octeon_gpio xfrm_user esp4
Process swapper (pid: 0, threadinfo=ffffffff81898000, task=ffffffff818a6880, tls=0000000000000000)
Stack : 0000000000000040 a800000002688f10 0000000000000006 0000000000000126
        a800000002688ed8 a800000002688ef8 00000000ffffd08b ffffffff8138e988
        0000000000000001 ffffffff8189c798 0000000000000018 0000000000000100
        0000000000000003 000000000000000a ffffffff821af1d0 ffffffff821ee6a0
        0000000000000000 ffffffff81158d1c 0000000000000000 8001070000000218
        8001070000000200 8001070000000000 8001070000000108 ffffffff821d0000
        0000000000000005 ffffffffc0103ca0 0000000000000000 ffffffff81158dd8
        0000000000000027 ffffffff8110c460 ffffffff821d0000 0000000000000000
        0000000000000001 ffffffff821d0000 ffffffff821d0000 ffffffff81105bd0
        0000000000000005 ffffffff81100888 0000000000000000 ffffffff821d0000
        ...
Call Trace:
[<ffffffff8138e0c4>] process_backlog+0x94/0x108
[<ffffffff8138e988>] net_rx_action+0x118/0x220
[<ffffffff81158d1c>] __do_softirq+0x154/0x1a0
[<ffffffff81158dd8>] do_softirq+0x70/0x78
[<ffffffff8110c460>] plat_irq_dispatch+0xd8/0x158
[<ffffffff81100888>] ret_from_irq+0x0/0x4
[<ffffffff81100a80>] r4k_wait+0x20/0x40
[<ffffffff81129d2c>] cpu_idle+0x74/0x90
[<ffffffff818d7aa4>] start_kernel+0x3bc/0x41c


Code: dc820008  fc800000  fc800008 <fc430000> fc620008  41606020  0c4e36ca  26100001  0214182a
Disabling lock debugging due to kernel taint
Kernel panic - not syncing: Fatal exception in interrupt

求達(dá)人解答。

論壇徽章:
3
射手座
日期:2014-08-18 12:15:53戌狗
日期:2014-08-22 09:53:36寅虎
日期:2014-08-22 14:15:29
2 [報(bào)告]
發(fā)表于 2015-01-08 16:01 |只看該作者
這個(gè)問題應(yīng)該比較容易定位, 是空指針訪問,

你用gdb反匯編下 process_backlog+0x94/0x108看是在哪一行觸發(fā)的空指針訪問,

然后把process_backlog的代碼貼上來(lái)看看。

論壇徽章:
3
射手座
日期:2014-08-18 12:15:53戌狗
日期:2014-08-22 09:53:36寅虎
日期:2014-08-22 14:15:29
3 [報(bào)告]
發(fā)表于 2015-01-08 16:25 |只看該作者
大概推斷的話, 應(yīng)該是網(wǎng)卡驅(qū)動(dòng)有bug導(dǎo)致的空指針訪問,  
網(wǎng)卡驅(qū)動(dòng)收到報(bào)文之后會(huì)把skb放到中斷底半步也就是backlog里面慢速處理, 這里skb內(nèi)存指向網(wǎng)卡硬件的內(nèi)存,
因?yàn)榈装氩綀?zhí)行的時(shí)候是開中斷的,網(wǎng)卡還能繼續(xù)收包,但是后面收到的報(bào)文出錯(cuò)了, 網(wǎng)卡硬件把內(nèi)存暴力清空了, 這就導(dǎo)致backlog里面放的skb 無(wú)效了, 但是backlog 不知道(不同的上下文)還在繼續(xù)處理,結(jié)果就訪問到空指針了。

我手上只有l(wèi)inux 3.15.5的代碼, 3.15.5的代碼已經(jīng)不一樣了, 3.15.5的skb不放在backlog里面處理, 用的是NAPI直接在網(wǎng)卡的接收中斷里處理報(bào)文,應(yīng)該沒有這個(gè)問題。

論壇徽章:
0
4 [報(bào)告]
發(fā)表于 2015-01-08 16:33 |只看該作者
回復(fù) 3# gaojl0728
解釋的太清楚了, 多謝多謝。

   
您需要登錄后才可以回帖 登錄 | 注冊(cè)

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號(hào)-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號(hào):11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專區(qū)
中國(guó)互聯(lián)網(wǎng)協(xié)會(huì)會(huì)員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請(qǐng)注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP