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

  免費注冊 查看新帖 |

Chinaunix

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

什么原因會導(dǎo)致 spin_lock_bh 加鎖失敗 ? [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2011-06-28 10:08 |只看該作者 |倒序瀏覽
hi, 有個問題, 使用 spin_lock_bh 時, 長時間加不上鎖, 導(dǎo)致系統(tǒng)崩潰。

spin_lock_bh 生成的匯編代碼:

  1.      call   2e81 <xxx+0x51>
  2.      2e81: R_386_PC32        local_bh_disable   --- 先禁止軟中斷
  3.      mov    0x8(%esp),%ecx
  4.      mov    0x4(%esp),%esi
  5.      add    %esi,%ecx
  6.      lea    0x0(,%ecx,4),%eax
  7.      mov    %eax,(%esp)
  8.      mov    %eax,%edx
  9.      mov    $0x100,%eax
  10.      mov    0xc(%edi),%ebx
  11.      add    %ebx,%edx
  12.      lock xadd %ax,(%edx)
  13.      cmp    %ah,%al                   ---  這里比較(ah != al)
  14.      je     2eb4 <xxx+0x84>
  15.      pause                                  --- (ah != al)進來這里, 也掛在這里
  16.      mov    (%edx),%al
  17.      jmp    2eaa <xxx+0x7a>
  18.      mov    0x8(%edi),%edx
  19.      lea    0x0(,%ecx,8),%ebp
復(fù)制代碼
不知道信息夠不夠全, 系統(tǒng)環(huán)境是  多核, 存在內(nèi)存泄露, 踩內(nèi)存等不穩(wěn)定因素, 會成為
spin_lock_bh 加鎖時間過長導(dǎo)致宕機的原因嗎???

還有其他什么因素可能會導(dǎo)致 spin_lock_bh 加鎖失敗, 就一個地方加鎖,應(yīng)該不存在鎖資源已經(jīng)被占用情況。
謝謝。

論壇徽章:
0
2 [報告]
發(fā)表于 2011-06-28 11:24 |只看該作者
應(yīng)該是該鎖已被其他代碼持有并且不釋放導(dǎo)致的,可以看看是否有代碼持有該鎖并在代碼中有長時間運行而未釋放該鎖,或者在持有該鎖的程序編寫不當(dāng)導(dǎo)致進程切換。

論壇徽章:
0
3 [報告]
發(fā)表于 2011-06-28 12:41 |只看該作者
回2樓
應(yīng)該是你說的這種情況, 我在1樓的描述有問題。
多CPU情況下,其中一個CPU鎖住了一個資源, 長時間不放。
另外的CPU得不到資源時就可能把系統(tǒng)掛掉。

現(xiàn)在的問題是:能不能確認(rèn)那個鎖已經(jīng)給加上了?
有沒有辦法,根據(jù)反匯編語句,推算出 spinlock_t 類型的鎖已經(jīng)給占用?
能得到edx的地址,但看不到值, 誰有辦法
謝謝!

論壇徽章:
0
4 [報告]
發(fā)表于 2011-06-28 14:11 |只看該作者
這個除了查代碼外,好像沒有什么辦法。因為spinklock本身沒有等待隊列。

論壇徽章:
1
NBA常規(guī)賽紀(jì)念章
日期:2015-05-04 22:32:03
5 [報告]
發(fā)表于 2011-06-28 19:13 |只看該作者
我現(xiàn)在也遇到了CPU調(diào)度時死鎖的問題,仍然在糾結(jié)中...LZ用什么方法查看的匯編代碼

論壇徽章:
1
NBA常規(guī)賽紀(jì)念章
日期:2015-05-04 22:32:03
6 [報告]
發(fā)表于 2011-06-28 19:14 |只看該作者
LZ能不能貼一下源碼?

論壇徽章:
0
7 [報告]
發(fā)表于 2011-07-06 20:38 |只看該作者
中斷、休眠喚醒會不會導(dǎo)致加鎖失敗?
您需要登錄后才可以回帖 登錄 | 注冊

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

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP