2007年12月19日水曜日

updateのつづき

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク
2.6.18-8.1.15から2.6.18-53.1.4に移行しようとしたのだがwarningが出る。どうしたものか。

[nori@Asama]/usr/src/kernels/2.6.18-53.1.4-eth-3w% sudo make install
sh /usr/src/kernels/2.6.18-53.1.4-eth-3w/arch/x86_64/boot/install.sh 2.6.18-53.1.4.el5 arch/x86_64/boot/bzImage System.map "/boot"
WARNING: No module ata_piix found for kernel 2.6.18-53.1.4.el5, continuing anyway
WARNING: No module ata_piix found for kernel 2.6.18-53.1.4.el5, continuing anyway


15 件のコメント:

nori さんのコメント...

SATA周りの設定項目が増えていたようだ。

nori さんのコメント...

http://www.centos.org/modules/newbb/viewtopic.php?viewmode=flat&topic_id=7034&forum=29
が参考になった。


oldconfigねぇ。
http://www.geocities.jp/tatsus490824/kernel_rebuild.html
現在稼動中の設定を反映したい場合は、現在の.config を適宜持ってきて
make oldconfigを実行します。
※make oldconfig は現行の設定を引き継ぎつつ、追加になった設定のみを行う為のコマンドです。

なんだかmake oldconfigがいい加減に解説されていることが多い気がするのは気のせい?

nori さんのコメント...

こんどは3w-9xxxがなぜか同じエラーに引っかかる。ウーム。

nori さんのコメント...

make allをリダイレクトして見てみる限り、コンパイルされているようだ。.oも生成されている。

nori さんのコメント...

config全部やり直ししてみた。そしたら今度はbuildできない・・・。

nori さんのコメント...

drivers/built-in.o: In function `crash_read':
crash.c:(.text.crash_read+0x52): undefined reference to `page_is_ram'
make: *** [.tmp_vmlinux1] Error 1

nori さんのコメント...

なにかがdefineされていないのだろう。RAM diskを有効にしてみるか・・・

nori さんのコメント...

crash.cがあるのは
/arch/x86_64/kernel/crash.c
とからしい。ということはアーキテクチャの判定が上手くいっていないか、設定が上手くいっていないかのどちらかだな。

nori さんのコメント...

diffをとって一個づつしらべる地道作業・・・。

nori さんのコメント...

include/asm/crash.h
のなかにある。
static関数map_virtualの最初の条件分岐だ。
externで宣言されている。そしてlinkで失敗しているのだ。

実装はarch/x86_64/mm/init.cのなかにある。

nori さんのコメント...

これっぽくね?

http://koji.fedoraproject.org/koji/buildinfo?buildID=12446

* Sun Jun 03 2007 Dave Jones davej@redhat.com
- Un-inline page_is_ram on x86-64. Rediff crash driver.

とりあえず、inlineを外してbuildするですよ。

nori さんのコメント...

patch for
/arch/x86_64/mm/init.c
}
__flush_tlb_all();
}

/* static inline int page_is_ram (unsigned long pagenr) */
int page_is_ram (unsigned long pagenr)
{
int i;

for (i = 0; i < e820.nr_map;

nori さんのコメント...

とりあえず、buildできた。
i386のコードと比較する限り大丈夫だろう。あとはnet上で同じことをやっている人が見つかればOK

しかしreleaseのときにcheckからもれていたのだろうか??

あと、前にbuildできていたのは、i386のコードがbuildされていたってこと??

謎多し。

nori さんのコメント...

CPUのHot Addが原因だった。
このオプションを外すとbootしない。

nori さんのコメント...

[nori@housyou]~% uname -a
Linux housyou 2.6.18-53.1.4-eth-3w-dvd #6 SMP Fri Dec 21 19:57:37 JST 2007 x86_64 x86_64 x86_64 GNU/Linux

なんとかたどり着いた・・・。ハァ。