[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[debian-users:40088] Re: make-kpkg --initrd (Re: Kernel panic: No init found)
さとうふみやす です。
大分前の話。
At Tue, 20 Jan 2004 19:12:17 +0900,
Masatoshi Suehiro wrote:
> 一週間ほど前の話題で済みませんが...
> ちょっと面白そうなので調べてみました。
ありがとうございました。参考にさせていただきます。
# カーネルを読めるようになりたいなぁ
> On Tue, Jan 13, 2004 at 11:37:36AM +0900,
> SATOH Fumiyasu wrote:
>
> > つい最近、私も make-kpkg の --initrd オプションを試したことが
> > あるのですが、ブート時になぜか cramfs な initrd のマウントに失敗し
> > ブートできない (kernel panic) カーネルになってしまいます。
> > カーネルのソースは、cramfs な initrd に対応するパッチが
> > 取り込まれた Linux 2.4.22 と Linux 2.4.23 で試しました。
> > (Debian のカーネルソース (kernel-source-*) も試したような気がするが、
> > 記憶が定かではない…)
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=238721
によると、カーネルに ramdisk_blocksize=4096 を指定すると
素の Linux 2.4.23 以降でも問題ないようです。まだ試してません。
> kernel-source-2.4.23ではcramfsなinitrdで無事にブートできました。
> debianのカーネルパッチの中で次の部分が効いているようです。
> # が、副作用がどれくらいあるのか良く分かりません。
>
> ======================================================================
> diff -urN kernel-source-2.4.23/fs/block_dev.c kernel-source-2.4.23-1/fs/block_dev.c
> --- kernel-source-2.4.23/fs/block_dev.c 2003-06-14 00:51:37.000000000 +1000
> +++ kernel-source-2.4.23-1/fs/block_dev.c 2003-06-01 20:43:53.000000000 +1000
> @@ -95,7 +95,7 @@
> sync_buffers(dev, 2);
> blksize_size[MAJOR(dev)][MINOR(dev)] = size;
> bdev->bd_inode->i_blkbits = blksize_bits(size);
> - kill_bdev(bdev);
> + invalidate_bdev(bdev, 1);
> bdput(bdev);
> return 0;
> }
*** snip ***
--
-- Name: SATOH Fumiyasu -- Home: http://www.sfo.jp (in Japanese only)
-- Mail: fumiya at net-thrust.com, samba.gr.jp, namazu.org or ...