[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: 20020417-1.5ZC snapshot



FUKAUMI Naoki <naoki@fukaumi.org> writes:
> hpcmips では options MEMORY_DISK_HOOKS が定義されていると kloader の
> KLOADER_KERNEL_PATH が "/mnt/netbsd" に上書きされて設定されます。
> 
> playstation2 みたいに、インストール後再起動前に mount /dev/wd0a /mnt と
> かやってから reboot すれば、いきなり新しいカーネルで再起動します。
> 
> (けどやっぱりこれ、 machdep.c で上書きじゃなくて、カーネルコンフィグの設
>  定が有効の方がよくありませんか ? <- hpcmips の話)

なぜmachdep.cで変更しているのかはRAMDISKの構造を見ればわかります。

root on mdの状態では、md上のカーネルでリブートするよりは、/mntにマウント
したファイルシステム上のカーネルでリブートするほうが便利だと思われますが、
GENERICの中で既にKLOADER_KERNEL_PATHが定義されているため、RAMDISKで再定
義することができません。

解決策としては、

    1) コンフィグファイルをもっと細かく分割する
    2) GENERIC - KLOADER_KERNEL_PATH をRAMDISKにコピーする
    3) configファイルの文法を変えてoptionsをなかったことにする

などが考えられます。machdep.cで書き換えているのは、一時しのぎのquick &
dirty hackです。

篠原