您好,登錄后才能下訂單哦!
昨天接到一個客戶的電話,說是有一臺服務(wù)器的RAC出現(xiàn)問題,并且系統(tǒng)日志里有關(guān)于網(wǎng)卡異常的信息,具體表現(xiàn)是從外部ping不通這個機器的IP地址。由于該業(yè)務(wù)比較重要,所以采取立即重啟的動作,重啟后一切正常。我到達現(xiàn)場后查看系統(tǒng)日志信息,發(fā)現(xiàn)有如下錯誤信息:
Nov 13 01:23:17 dzswdb1 kernel: o2net: no longer connected to node dzswdb2 (num 2) at 192.168.4.81:7777
Nov 13 01:23:17 dzswdb1 kernel: (20343,73):dlm_send_proxy_ast_msg:456 ERROR: status = -112
Nov 13 01:23:17 dzswdb1 kernel: (20343,73):dlm_flush_asts:584 ERROR: status = -112
Nov 13 01:23:17 dzswdb1 kernel: (20343,73):dlm_send_proxy_ast_msg:456 ERROR: status = -107
Nov 13 01:23:17 dzswdb1 kernel: (20343,73):dlm_flush_asts:584 ERROR: status = -107
Nov 13 01:23:24 dzswdb1 kernel: NETDEV WATCHDOG: eth2: transmit timed out
Nov 13 01:23:26 dzswdb1 kernel: nx_nic[eth2]: Unable to destroy the tx context, code 12 Error: Does Not Exist
Nov 13 01:23:26 dzswdb1 kernel: bonding: bond1: link status definitely down for interface eth2, disabling it
Nov 13 01:23:26 dzswdb1 kernel: bonding: bond1: now running without any active interface !
Nov 13 01:23:26 dzswdb1 kernel: nx_nic HP NC375i Integrated Quad Port Multifunction Gigabit Server Adapter Board S/N <FF><FF><FF><FF><FF><FF><FF><FF><FF><FF><FF><FF> <FF><FF><FF><FF><FF><FF><FF><FF><FF><FF><FF><FF><FF><FF><FF><FF><FF><FF><FF><FF>^B^A Chip id 0x1
Nov 13 01:23:26 dzswdb1 kernel: nx_nic[eth2]: Unable to create the tx context, code 6 Error: Invalid Args
Nov 13 01:23:26 dzswdb1 kernel: nx_nic[eth2]: Error in setting hw resources: 6
Nov 13 01:23:26 dzswdb1 kernel: nx_nic[eth2]: Failed to Attach to device
Nov 13 01:23:30 dzswdb1 kernel: (22654,11):dlm_send_remote_convert_request:395 ERROR: status = -107
Nov 13 01:23:30 dzswdb1 kernel: (22654,11):dlm_wait_for_node_death:372 488938490B224513B7017AD113065CBF: waiting 5000ms for notification of death of node 2
通過查找關(guān)于紅色字體的相關(guān)資料,發(fā)現(xiàn)這屬于一個疑難雜癥的問題,一開始還以為是硬件問題,但硬件工程師查了關(guān)于硬件的日志信息沒有任何異常。所以決定加入兩個參數(shù)試試,加入的參數(shù)及方法如下:
方法:
/boot/grub/grub.conf文件,在啟動的核心kernel那行最后加上 acpi=off noapic 1)acpi=off禁止了一些電源高級管理功能,對你的應用程序沒有影響。
2)noapic改變了中斷方式,對應用也沒有影響
################################################
ACPI和APIC有什么關(guān)系?
很多人問道了什么ACPI,什么是APIC,他們有沒有關(guān)系?名字這么相近。下面給出網(wǎng)絡(luò)上的朋友們給出的一些理解,具體的解釋可以查看內(nèi)核文檔庫的內(nèi)核參數(shù)文件:/usr/share/doc/kernel-doc-2.6.18/Documentation/kernel-parameters.txt
1、ACPI就是Advanced Configuration and Power Interface的縮寫,意思是“高級配置與電源接口”。這是英特爾、微軟和東芝共同開發(fā)的一種電源管理標準。
ACPI可實現(xiàn)以下功能:
1、用戶可以使外設(shè)在指定時間開關(guān);
2、使用筆記本電腦的用戶可以指定計算機在低電壓的情況下進入低功耗狀態(tài),以保證重要的應用程序運行;
3、操作系統(tǒng)可以在應用程序?qū)r間要求不高的情況下降低時鐘頻率;
4、操作系統(tǒng)可以根據(jù)外設(shè)和主板的具體需求為它分配能源;
5、在無人使用計算機時可以使計算機進入休眠狀態(tài),但保證一些通信設(shè)備打開;
6、即插即用設(shè)備在插入時能夠由ACPI來控制?! ?
不過,ACPI和其他的電源管理方式一樣,要想享受到上面這些功能,必須要有軟件和硬件的支持。在軟件方面,Windows 98及其后續(xù)產(chǎn)品和Windows 2000都對ACPI給予了全面的支持;而Linux的內(nèi)核目前對此支持得并不是太理想。硬件方面比較麻煩,除了要求主板、顯卡和網(wǎng)卡等外設(shè)要支持ACPI外,還需要機箱電源的配合。電源在提供5伏電壓給主板的同時,還必須使電流穩(wěn)定在720毫安以上才可以 這樣它才能夠?qū)崿F(xiàn)電腦的“睡眠”和“喚醒”。
ACPI共有六種狀態(tài),分別是S0到S5,它們代表的含義分別是:
S0–實際上這就是我們平常的工作狀態(tài),所有設(shè)備全開,功耗一般會超過80W;
S1–也稱為POS(Power on Suspend),這時除了通過CPU時鐘控制器將CPU關(guān)閉之外,其他的部件仍然正常工作,這時的功耗一般在30W以下;(其實有些CPU降溫軟件就是利用這種工作原理)
S2–這時CPU處于停止運作狀態(tài),總線時鐘也被關(guān)閉,但其余的設(shè)備仍然運轉(zhuǎn);
S3–這就是我們熟悉的STR(Suspend to RAM),這時的功耗不超過10W;
S4–也稱為STD(Suspend to Disk),這時系統(tǒng)主電源關(guān)閉,但是硬盤仍然帶電并可以被喚醒;
S5–這種狀態(tài)是最干脆的,就是連電源在內(nèi)的所有設(shè)備全部關(guān)閉,功耗為0。
我們最常用到的是S3狀態(tài),即Suspend to RAM(掛起到內(nèi)存)狀態(tài),簡稱STR。顧名思義,STR就是把系統(tǒng)進入STR前的工作狀態(tài)數(shù)據(jù)都存放到內(nèi)存中去。在STR狀態(tài)下,電源仍然繼續(xù)為內(nèi)存等最必要的設(shè)備供電,以確保數(shù)據(jù)不丟失,而其他設(shè)備均處于關(guān)閉狀態(tài),系統(tǒng)的耗電量極低。一旦我們按下Power按鈕(主機電源開關(guān)),系統(tǒng)就被喚醒,馬上從內(nèi)存中讀取數(shù)據(jù)并恢復到STR之前的工作狀態(tài)。內(nèi)存的讀寫速度極快,因此我們感到進入和離開STR狀態(tài)所花費的時間不過是幾秒鐘而已;而S4狀態(tài),即 STD(掛起到硬盤)與STR的原理是完全一樣的,只不過數(shù)據(jù)是保存在硬盤中。由于硬盤的讀寫速度比內(nèi)存要慢得多,因此用起來也就沒有STR那么快了。 STD的優(yōu)點是只通過軟件就能實現(xiàn),比如Windows 2000就能在不支持STR的硬件上實現(xiàn)STD。
2、ACPI與APM比較
APM 1.0&1.1:由BIOS執(zhí)行電源管理;
APM 1.2:操作系統(tǒng)定義電源管理時間,由BIOS負責執(zhí)行;
ACPI:BIOS收集硬件信息,定義電源管理方案;由操作系統(tǒng)負責執(zhí)行。
APM是一種軟件解決方案,因此是與操作系統(tǒng)有關(guān)的, 而ACPI是工業(yè)標準,包括了軟件和硬件方面的規(guī)范。
3、APIC (高級可編程中斷控制器),它對計算機來講有兩個作用:
一是管理IRQ的分配,可以把傳統(tǒng)的16個IRQ擴展到24個(傳統(tǒng)的管理方式叫PIC),以適應更多的設(shè)備。
二是管理多CPU。由于Nf2主板并不支持多CPU,所以,APIC關(guān)閉直接的影響是減少了可用的IRQ。
不過,如果板卡不是非常多的話,關(guān)閉 APIC對系統(tǒng)是沒有什么影響的。
要實現(xiàn)SMP功能,我們使用的CPU必須具備以下要求:
CPU內(nèi)部必須內(nèi)置APIC單元。Intel 多處理規(guī)范的核心就是高級可編程中斷控制器(Advanced Programmable Interrupt Controllers–APICs)的使用。CPU通過彼此發(fā)送中斷來完成它們之間的通信。通過給中斷附加動作(actions),不同的CPU可以在某種程度上彼此進行控制。每個CPU有自己的APIC(成為那個CPU的本地APIC),并且還有一個I/O APIC來處理由I/O設(shè)備引起的中斷,這個I/O APIC是安裝在主板上的,但每個CPU上的APIC則不可或缺,否則將無法處理多CPU之間的中斷協(xié)調(diào)。
APIC可能遇到的問題,很多這類問題可以通過BIOS更新來解決。
下面的是通過更改HAL類型來解決CPU實際運行頻率與BIOS設(shè)定頻率不符
NF2的用戶大約有10%的會出現(xiàn)CPU實際運行頻率與BIOS設(shè)定頻率不符的問題。我們稱之為“頻率不對”。
這種現(xiàn)象帶來的直接后果就是在測試3dmark或跑3D游戲的時候,會感覺不流暢,也稱之為“頓”。
一般在更改BIOS設(shè)置后、更新驅(qū)動后重啟時,用測試軟件如Aida32、MBM5等可以看到CPU的運行頻率和你在BIOS里設(shè)置得不一樣,而且差距很大。這個時候,用super pi測試CPU速度,會比平?;ㄙM時間長好幾秒,用3dmark跑測試,會比平常低幾百分甚至上千分。在3dmark中看到的CPU頻率,也與BIOS設(shè)定不符合?! ?/p>
如果出現(xiàn)這種情況,則屬于我們所討論的“頻率不對”的問題?! ?/p>
不過,不是所有的3D游戲“頓”都是這個原因。判斷的方法是:如果你只有個別游戲“頓”,或者用上述軟件測試頻率正確,就不是此問題。
如果判斷確實屬此問題,解決的方法也很簡單,經(jīng)過網(wǎng)友討論,只要關(guān)閉APIC功能即可。(注意,是APIC,不是ACPI)。
有一些服務(wù)器(比如IBM的,HP的),安裝LINUX時,會給出內(nèi)核的錯誤,導致無法安裝,這個時候可以在安裝的時候輸入
acpi=off noapic
應該是安裝上的。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。