From: "Andrey Vul" <andrey.vul@gmail.com>
To: gentoo-user@lists.gentoo.org
Subject: Re: [gentoo-user] Howto erase the "Insert root floppy and press enter" item before the kernel panic?
Date: Sat, 11 Oct 2008 02:08:56 -0400 [thread overview]
Message-ID: <e38d12ff0810102308k74eaffd0of098cf994683ae3e@mail.gmail.com> (raw)
In-Reply-To: <20081011130057.12223aa8.davidwei@newbread.tj.cn>
On Sat, Oct 11, 2008 at 12:00 AM, David Wei <davidwei@newbread.tj.cn> wrote:
> Thanks Andrey, that patch works , my test kernel dose not ask for the floppy before the panic. Just by the way,dose that mean I cannot use floppy drive on this box?
>
You can use the floppy drive, but the kernel cannot run init / use
initrd from a floppy (i.e. you are not allowed to use root=/dev/fd0 or
initrd=/dev/fd0). This is because the floppy is fallback code if the
NFS mount of / fails.
But this is Gentoo, you make your own kernel (hopefully), and never
have to worry about initrd.
/ and /dev/root are used interchangeably, for readabilty, similar to /
and /dev/hdaX.
All I did was comment out the floppy fallback code.
This is how mount_root was originally written:
If CONFIG_ROOT_NFS is defined
If root device is NFS
If the NFS root mounted
Return
Print message "VFS: Unable to mount root fs via NFS, trying floppy.\n"
Set root device as floppy disk 0
If CONFIG_BLK_DEV_FD (floppy disk) is defined
If the root device is a floppy
If dual initrd/ramload is enabled
If the first partition of the ramdisk image could be
loaded into memory
Set the root device as a ramdisk
Set the root device name as null
Else
Prompt for root floppy
If CONFIG_BLOCK is defined
Create a device named "/dev/root" with the major & minor modes
equal to the root device
Mount "/dev/root" with root device mountflags
If you want more detail, you should post to lkml.
All I have done was replace the following line:
If CONFIG_BLK_DEV_FD (floppy disk) is defined
with
If false
}
> Thanks again!!
No problem.
In reality, the fix was simple.
All I did was grep the source tree for the exact string (grep -R "VFS:
Unable to mount root fs via NFS, trying floppy" .
)
Then open up vim (or emacs or nano), find the line, and add an #if 0
... #endif block where needed.
>
> On Fri, 10 Oct 2008 23:06:09 -0400
> "Andrey Vul" <andrey.vul@gmail.com> wrote:
>
>> On Fri, Oct 10, 2008 at 10:33 PM, David Wei <davidwei@newbread.tj.cn> wrote:
>> > Sorry, I forgot that file .
>> > the .config is in the attachment this time.
>> > Thank you .
>> >
>> > On Fri, 10 Oct 2008 10:05:36 -0400
>> > "Andrey Vul" <andrey.vul@gmail.com> wrote:
>> >
>> >> 2008/10/10 David Wei <davidwei@newbread.tj.cn>:
>> >> > Hi,
>> >> > I am trying kexec with "kernel panic reboot" cause i have to manage my server remotely.
>> >> > the "kernel panic reboot" (http://gentoo-wiki.com/TIP_Kernel_Panic_Reboot) has beening working so good so far for the regular kernel panic.However,sometimes when i were missed some file system items,the booking process would ask me:
>> >> > "VFS: Unable to mount root fs via NFS,trying floppy
>> >> > Insert root floppy and Press Enter."
>> >> > And the system hungup there waiting for my Enter.
>> >> > How can I remove this item from the booting process and panic directly so that it can reboot? Besides,I want to keep the NFS service.
>> >> > Thank you in advance.
>> >> I'm guessing that this is due to the floppy being compiled into the
>> >> emergency kernel.
>> >> In any case, can you post your .config for the emergency kernel?
>> >>
>>
>> Nothing in the .config looks suspicious.
>> It looks like it's inevitable that kernel patching will be needed, at
>> least, using the preprocessor to "hide" the floppy code.
>> Try this (it comments out floppy support which happens after NFS support):
>> comment_floppy.patch
>> --- init/do_mounts.c 2008-04-16 22:49:44.000000000 -0400
>> +++ init/do_mounts2.c 2008-10-10 23:03:06.867876561 -0400
>> @@ -308,7 +308,8 @@
>> ROOT_DEV = Root_FD0;
>> }
>> #endif
>> -#ifdef CONFIG_BLK_DEV_FD
>> +/* #ifdef CONFIG_BLK_DEV_FD */
>> +#if 0
>> if (MAJOR(ROOT_DEV) == FLOPPY_MAJOR) {
>> /* rd_doload is 2 for a dual initrd/ramload setup */
>> if (rd_doload==2) {
>>
>> cd to your /usr/src/linux-... and run patch -p0 < comment_floppy.patch
>> It should fix the _specific_ issue. It might not fix the root cause, however.
>>
>> --
>> Andrey Vul
>>
>> A: Because it messes up the order in which people normally read text.
>> Q: Why is top-posting such a bad thing?
>> A: Top-posting.
>> Q: What is the most annoying thing in e-mail?
>>
>
>
> -------------------------------
> 魏亮 David Wei
>
> 您可以通过下面的方式和我联系:
> MSN: inadavid@hotmail.com
> Gtalk: inadavid@gmail.com
> Email: davidwei@newbread.tj.cn
>
>
--
Andrey Vul
A: Because it messes up the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing in e-mail?
next prev parent reply other threads:[~2008-10-11 6:09 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-10-10 8:34 [gentoo-user] Howto erase the "Insert root floppy and press enter" item before the kernel panic? David Wei
2008-10-10 14:05 ` Andrey Vul
2008-10-11 2:33 ` David Wei
2008-10-11 3:06 ` Andrey Vul
2008-10-11 4:00 ` David Wei
2008-10-11 6:08 ` Andrey Vul [this message]
2008-10-11 6:30 ` David Wei
2008-10-11 12:01 ` David Relson
2008-10-11 17:23 ` Andrey Vul
2008-10-12 0:21 ` David Relson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=e38d12ff0810102308k74eaffd0of098cf994683ae3e@mail.gmail.com \
--to=andrey.vul@gmail.com \
--cc=gentoo-user@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox