Changes between Version 9 and Version 10 of jazz/09-05-20


Ignore:
Timestamp:
May 21, 2009, 9:46:07 AM (15 years ago)
Author:
jazz
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • jazz/09-05-20

    v9 v10  
    7878bio:~/temp2$ cat /tftpboot/nbi_img/initrd-pxe.2.6.22.19-lustre-686.img | gunzip | sudo cpio -i
    7979}}}
    80     * 光是從 diff -r temp temp2 的結果來看,兩者的差異很大。而 firmware.agent 在系統產生的 initrd.img 中,是透過 udev 的 rules 被執行的。
     80     * 光是從 diff -r temp temp2 的結果來看,兩者的差異很大。而 firmware.agent 在系統產生的 initrd.img 中,是透過 udev 的 rules 被執行的。
    8181{{{
    8282bio:~/temp$ grep firmware.agent * -r --color
    8383etc/udev/rules.d/80-drivers.rules:SUBSYSTEM=="firmware",                                RUN+="firmware.agent"
     84}}}
     85     * 從以上資訊,大致上可以猜出為什麼使用 DRBL 產生的 initrd-pxe.img 會無法取得 firmware,因為 bnx2 這個核心模組並不會自動去檔案系統裡去找 /lib/firmware 裡有沒有需要的檔案。而是透過 udev 去執行 firmware.agent 把 /lib/firmware 裡的檔案塞到 /sys/$DEVPATH/data 去。因此如果要讓 initrd-pxe.img 也支援這樣的機制,有兩種作法,第一種 initrd-pxe.img 全面改用 udev,第二種是自己補拷貝 /sys/$DEVPATH/data 那一段。
     86     * 附帶值得一提的是我在 Debian Lenny 的 2.6.26-2-amd64 核心模組上看到 firmware-class 這個奇特的模組。看樣子 Linux 核心對於這些非公開的韌體處理方式目前仍處於混亂的局面。
     87{{{
     88jazz@hadoop:~$ lsb_release -a
     89No LSB modules are available.
     90Distributor ID: Debian
     91Description:    Debian GNU/Linux 5.0.1 (lenny)
     92Release:        5.0.1
     93Codename:       lenny
     94jazz@hadoop:~$ uname -a
     95Linux hadoop 2.6.26-2-amd64 #1 SMP Fri Mar 27 04:02:59 UTC 2009 x86_64 GNU/Linux
     96jazz@hadoop:~$ lsmod | grep bnx2
     97bnx2                   63496  0
     98firmware_class         12544  1 bnx2
     99jazz@hadoop:~$ sudo modinfo firmware_class
     100[sudo] password for jazz:
     101filename:       /lib/modules/2.6.26-2-amd64/kernel/drivers/base/firmware_class.ko
     102license:        GPL
     103description:    Multi purpose firmware loading support
     104author:         Manuel Estrada Sainz
     105depends:       
     106vermagic:       2.6.26-2-amd64 SMP mod_unload modversions
     107jazz@hadoop:~$ sudo modinfo bnx2
     108filename:       /lib/modules/2.6.26-2-amd64/kernel/drivers/net/bnx2.ko
     109firmware:       bnx2-09-4.0.5.fw
     110firmware:       bnx2-06-4.0.5.fw
     111version:        1.7.5
     112license:        GPL
     113description:    Broadcom NetXtreme II BCM5706/5708 Driver
     114author:         Michael Chan <mchan@broadcom.com>
     115srcversion:     AA4F7411285F32C5C55775A
     116alias:          pci:v000014E4d0000163Asv*sd*bc*sc*i*
     117alias:          pci:v000014E4d00001639sv*sd*bc*sc*i*
     118alias:          pci:v000014E4d000016ACsv*sd*bc*sc*i*
     119alias:          pci:v000014E4d000016AAsv*sd*bc*sc*i*
     120alias:          pci:v000014E4d000016AAsv0000103Csd00003102bc*sc*i*
     121alias:          pci:v000014E4d0000164Csv*sd*bc*sc*i*
     122alias:          pci:v000014E4d0000164Asv*sd*bc*sc*i*
     123alias:          pci:v000014E4d0000164Asv0000103Csd00003106bc*sc*i*
     124alias:          pci:v000014E4d0000164Asv0000103Csd00003101bc*sc*i*
     125depends:        firmware_class
     126vermagic:       2.6.26-2-amd64 SMP mod_unload modversions
     127parm:           disable_msi:Disable Message Signaled Interrupt (MSI) (int)
    84128}}}
    85129   * 測試 Lustre - 參考 [wiki:3D_Lustre 3D 果蠅腦實驗叢集 Lustre 效能測試安裝紀錄(by rider/rock)]