• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            大龍的博客

            常用鏈接

            統(tǒng)計(jì)

            最新評(píng)論

            cat /sys/hypervisor/uuid 阻塞

            摘要:此帶Xen的內(nèi)核存在一個(gè)bug 能使cat /sys/hypervisor/uuid 阻塞,而使系統(tǒng)負(fù)載變高。
            rhels內(nèi)核版本:2.6.18-164.el5


            1.現(xiàn)在已經(jīng)證實(shí)這是rhels的一個(gè)bug,將這個(gè)bug進(jìn)行較為深入的分析后,發(fā)現(xiàn)這個(gè)bug很有意思:
            事情的來龍去脈估計(jì)是這樣的:
                  先要從MCE說起。MCE(Machine Check Exception)是一類計(jì)算機(jī)硬件錯(cuò)誤,它發(fā)生在當(dāng)計(jì)算機(jī)的CPU偵測到硬件問題時(shí)。MicroSoft 的windows通常會(huì)以藍(lán)屏來顯示這類錯(cuò)誤:
            STOP: 0x0000009C (0x00000004, 0x00000000, 0xB2000000, 0x00020151) "MACHINE_CHECK_EXCEPTION
            在Linux上,cpu通常會(huì)將這些信息寫到kernel log中,有些時(shí)候如果這些硬件問題不能得到修復(fù)的話也會(huì)將信息寫到控制臺(tái)上(console screen)如:
            CPU 0: Machine Check Exception: 0000000000000004 Bank 2: f200200000000863 Kernel panic: CPU context corrupt
                  以上顯示的這類信息都是一些16進(jìn)制的地址,并不能給我們直觀的認(rèn)識(shí)。怎樣對(duì)這信息解碼是一個(gè)很大的問題,當(dāng)然我們可以去咨詢CPU廠商,或是閱讀他們的 文檔。
                  在Linux下有一款軟件mcelog(軟件地址為/usr/sbin/mcelog,日志地址為/var/log/mcelog)是專門用來對(duì)以上的錯(cuò) 誤代碼進(jìn)行解碼的(decode)。
                  接下來就說到問題的正題上了。我們知道rhels也是有可能運(yùn)行在Xen虛擬環(huán)境下的,即作為DomainU來運(yùn)行,這時(shí)就不需要去運(yùn)行mcelog了, 因?yàn)樗旧砭驮谔摂M的硬件環(huán)境上,出了問題也是軟件虛擬的問題。從/etc/cron.hourly/mcelog.cron中可以看見系統(tǒng)開發(fā)者的意 圖:

            #!/bin/bash

            if [ -e /proc/xen ] && [ `cat /sys/hypervisor/uuid` != "00000000-0000-0000-0000-000000000000" ]; then
                # this is a PV Xen guest.  Do not run mcelog.
                exit 1;
            else
                /usr/sbin/mcelog --ignorenodev --filter >> /var/log/mcelog
            fi

                  系統(tǒng)開發(fā)者的意圖是好的。但是,在全部默認(rèn)安裝rhels的時(shí)候,我們會(huì)將帶有xen的kernel安裝到機(jī)器上,而且此時(shí)的xend是不會(huì)自動(dòng)啟動(dòng)的, 即后面的`cat /sys/hypervisor/uuid`會(huì)阻塞。又由于這段代碼是寫在/etc/cron.hourly中所以就會(huì)出現(xiàn)大量的`cat /sys/hypervisor/uuid`阻塞,而這時(shí)系統(tǒng)的負(fù)載(根據(jù)負(fù)載的定義)自然就上去了。
                
            2.問題解決辦法
                  看完上面的分析,就知道怎么解決了。你可以將上面的關(guān)于PV Guest的監(jiān)測代碼刪掉(現(xiàn)在的系統(tǒng)就是這么干的)?;蚴翘砑痈訃?yán)格的監(jiān)測代碼:
            #!/bin/sh
            xendstatus=`service xend status`
            if [ "$xendstatus"="xend is running" ]; then
                    if [ -e /proc/xen ] && [ `cat /sys/hypervisor/uuid` != "00000000-0000-0000-0000-000000000000" ]; then
                            # this is a PV Xen guest.  Do not run mcelog.
                            exit 1;
                    else
                            /usr/sbin/mcelog --ignorenodev --filter >> /var/log/mcelog
                    fi
            else
                    exit 1;
            fi
            或是有這樣的解決(基于半虛擬化的特點(diǎn)):
            if [ -e /proc/xen/capabilities ]; then
                #xen
                grep control_d /proc/xen/capabilities > & /dev/null
                if [$? -ne 0 ]; then
                    #domU -- do not run on xen PV guest
                    exit 1
                fi
            fi

            或者你不用帶用Xen的kernel來啟動(dòng)系統(tǒng)。
            方法很多,任由你選吧。
             
            參考目錄:
            http://en.wikipedia.org/wiki/Machine_Check_Exception
            https://bugzilla.redhat.com/show_bug.cgi?id=225203

            posted on 2011-09-21 20:10 大龍 閱讀(658) 評(píng)論(1)  編輯 收藏 引用

            評(píng)論

            # re: cat /sys/hypervisor/uuid 阻塞 2011-12-25 10:57 劉華

            謝謝了,這篇文檔對(duì)我很有用,一樣的問題。  回復(fù)  更多評(píng)論   


            只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            中文字幕成人精品久久不卡 | 久久精品国产亚洲AV麻豆网站| 久久影院久久香蕉国产线看观看| 无码人妻少妇久久中文字幕| 久久九九兔免费精品6| 精品久久久无码人妻中文字幕豆芽| 久久久久国产精品| 亚洲精品第一综合99久久| 亚洲国产成人久久综合区| 99久久国产宗和精品1上映| 久久se精品一区精品二区| 香蕉久久夜色精品国产尤物| 国产精品久久一区二区三区| 思思久久99热只有频精品66| 品成人欧美大片久久国产欧美... 品成人欧美大片久久国产欧美 | 久久久久九国产精品| 久久99热只有频精品8| 国产精品美女久久福利网站| 青青草国产精品久久久久| 亚洲国产精品久久电影欧美| 久久男人AV资源网站| 久久91精品国产91久久户| 狠狠色噜噜色狠狠狠综合久久| 久久九九久精品国产| 99久久精品这里只有精品| 99久久精品午夜一区二区| 亚洲色大成网站www久久九| 亚洲国产精品无码久久九九| 国产综合成人久久大片91| 18岁日韩内射颜射午夜久久成人| 久久婷婷五月综合国产尤物app| 婷婷国产天堂久久综合五月| 日本加勒比久久精品| 久久精品成人| 久久久久亚洲av成人无码电影| 国产—久久香蕉国产线看观看| 久久精品国产99国产电影网 | 久久久久久综合一区中文字幕| 久久99精品国产麻豆| 国产精品久久久久…| 国产精品无码久久综合网|