Bug#495049: why is (fd0) hard-coded into the grub image?
Am Freitag, den 15.08.2008, 19:49 +0200 schrieb Felix Zielcke: http://lists.gnu.org/archive/html/grub-devel/2008-08/msg00442.html Just like raid, lvm needs to scan all device. I think this is caused when it try to open (fd0), and fails. The grub_errno is not cleared, it's carried out and cause the rescue shell. I just tried to get you to confirm this for me. Robert has now commited in upstream SVN the proposal from Bean. So please try current upstream SVN version, if you still have this bug. -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#495049: why is (fd0) hard-coded into the grub image?
I should point out that when grub drops into the rescue prompt, it coughs up the message error: unknown device fd0. Perhaps this is why it goes into rescue mode? My device.map file, as previously listed, does not contain an entry for fd0, because the machine does not in fact have a floppy drive. Wondering if this might help, I added the entry (fd0) /dev/fd0, and reinstalled grub. It did NOT help. Grub dropped into rescue mode as before, with the same error message, but with the difference that this time the pc module was not included in the core image, with the effect that the partition table could not be read, rendering the machine completely unbootable. I had to make use of a grub rescue CD to restart it. I tried again, changing the device.map entry to (fd0) /dev/sda, to see if that would make it happy. It didn't. It still went into rescue mode, with the same error message, but this time chose to include the pc module again. So I was back where I started, booting the system with insmod normal. Some questions suggest themselves: -- why is there a hard-coded dependency on fd0, when neither device.map nor grub.cfg mention it? -- is the fd0 dependency the reason why grub drops into rescue mode? -- why does adding an fd0 entry to device.map not resolve this error? -- why does adding an fd0 entry to device.map cause the pc module to be omitted from the core image, when both device.map and grub.cfg indicate that the system will be booted from a hard disk? This problem seems to have some similarity with bug #494501, in that something that is not really an error condition may be causing grub to drop into rescue mode unnecessarily. Finally, I suggest the following patch for clarifying exactly what grub-install is doing, at least until some of these issues are resolved. --- grub-install2008-08-10 11:39:26.0 -0700 +++ /usr/sbin/grub-install 2008-08-13 17:21:46.0 -0700 @@ -259,11 +259,18 @@ prefix_drive=`$grub_probe --target=drive --device ${grub_device}` fi +echo $grub_mkimage --output=${grubdir}/core.img \ +--prefix=${prefix_drive}`make_system_path_relative_to_its_root ${grubdir}`/ \ +$modules + $grub_mkimage --output=${grubdir}/core.img \ --prefix=${prefix_drive}`make_system_path_relative_to_its_root ${grubdir}`/ \ $modules || exit 1 # Now perform the installation. +echo $grub_setup --directory=${grubdir} --device-map=${device_map} \ +${install_device} + $grub_setup --directory=${grubdir} --device-map=${device_map} \ ${install_device} || exit 1 -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#495049: why is (fd0) hard-coded into the grub image?
Am Freitag, den 15.08.2008, 03:18 -0700 schrieb [EMAIL PROTECTED]: I should point out that when grub drops into the rescue prompt, it coughs up the message error: unknown device fd0. Perhaps this is why it goes into rescue mode? Thanks for telling us. This is a bit different then: GRUB doestn't load normal.mod because there is no string normal in core.img My device.map file, as previously listed, does not contain an entry for fd0, because the machine does not in fact have a floppy drive. Wondering if this might help, I added the entry (fd0) /dev/fd0, and reinstalled grub. I think you understand something wrong. The problem is that GRUB thinks fd0 is your bootdevice, even though your device.map is right. Of course it doestn't help if you make your harddisk to fd0. Why should GRUB then suddenly see it as hd0 ? Some questions suggest themselves: -- why is there a hard-coded dependency on fd0, when neither device.map nor grub.cfg mention it? -- is the fd0 dependency the reason why grub drops into rescue mode? Please stop assuming things if you don't understand how GRUB works. -- why does adding an fd0 entry to device.map not resolve this error? Why should GRUB then think your harddisk is hd0 instead of fd0 which it currently does? Finally, I suggest the following patch for clarifying exactly what grub-install is doing, at least until some of these issues are resolved. Please read man bash There's an -x option which does something like that. For example run: bash -x /usr/sbin/grub-install /dev/sda I assume you don't know enough C to understand the whole sourcecode. That's totally okay of course you don't need that to report a bug. But please just state your problem. I already wanted to make that to you clear with my I think it's normal that core.img doestn't contain the string normal to load normal.mod Please let it to Robert and me trying to find out the `why?'. It is totally okay if you would your report just like this for me grub goes to rescue mode with unknown device fd0 I only need to do insmod normal normal then the menu comes up and I can boot my system I have LVM on / That means: just state your problem and details of your system for example that you use LVM Don't tell us that probable XYZ is the problem and that it's easy to fix, if you are not sure that it is. And error messages like that unknown device fd0 are shown for a reason and so should be in your bug report _submission_. (that means not in the 3rd mail but instead already in the 1st) -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#495049: why is (fd0) hard-coded into the grub image?
On Fri, 15 Aug 2008 16:15:30 +0200 Felix Zielcke [EMAIL PROTECTED] wrote: I should point out that when grub drops into the rescue prompt, it coughs up the message error: unknown device fd0. Perhaps this is why it goes into rescue mode? Thanks for telling us. I would have mentioned it before, except that it didn't seem relevant, because I don't have a floppy disk, and neither device.map nor grub.cfg refer to it. This is a bit different then: GRUB doestn't load normal.mod because there is no string normal in core.img GRUB doesn't load normal.mod -- which is true. there is no string normal in core.img -- which is also true. because -- I didn't say that. You made it up. My device.map file, as previously listed, does not contain an entry for fd0, because the machine does not in fact have a floppy drive. Wondering if this might help, I added the entry (fd0) /dev/fd0, and reinstalled grub. I think you understand something wrong. The problem is that GRUB thinks fd0 is your bootdevice, even though your device.map is right. -- which was the point of my first question: -- why is there a hard-coded dependency on fd0, when neither device.map nor grub.cfg mention it? -- is the fd0 dependency the reason why grub drops into rescue mode? Please stop assuming things if you don't understand how GRUB works. If the problem is that GRUB thinks fd0 is your bootdevice, then actually it seems that I understood the situation correctly. -- why does adding an fd0 entry to device.map not resolve this error? If (fd0) is an unknown device, then why doesn't (fd0) /dev/fd0 make it known? Finally, I suggest the following patch for clarifying exactly what grub-install is doing, at least until some of these issues are resolved. Please read man bash I do so frequently. There's an -x option which does something like that. Which also produces a lot of useless verbiage, when what we really want to know is what modules grub-mkimage is including. I assume you don't know enough C to understand the whole sourcecode. You assume wrong. Please let it to Robert and me trying to find out the `why?'. It is totally okay if you would your report just like this for me grub goes to rescue mode with unknown device fd0 I only need to do insmod normal normal then the menu comes up and I can boot my system I have LVM on / You didn't mention that adding (fd0) /dev/fd0 to device.map causes the pc module to be omitted from the image. Would you have known that if I hadn't mentioned it? Or do you claim that is the expected behaviour? Don't tell us that probable XYZ is the problem and that it's easy to fix, if you are not sure that it is. I told you that grub.cfg was not getting read because the module normal was not loaded. I was absolutely sure of this, and I was absolutely correct. And error messages like that unknown device fd0 are shown for a reason and so should be in your bug report _submission_. (that means not in the 3rd mail but instead already in the 1st) The grub rescue CD produces exactly the same error message. That doesn't stop it from working. It's not always immediately clear which facts are relevant, and which aren't. -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#495049: why is (fd0) hard-coded into the grub image?
Am Freitag, den 15.08.2008, 09:28 -0700 schrieb [EMAIL PROTECTED]: I would have mentioned it before, except that it didn't seem relevant, because I don't have a floppy disk, and neither device.map nor grub.cfg refer to it. Aha, it doestn't seem relevant because you don't have a floppy drive and you didn't found a place why grub thinks that you have one. Ok. because -- I didn't say that. You made it up. Please stop assuming things if you don't understand how GRUB works. If the problem is that GRUB thinks fd0 is your bootdevice, then actually it seems that I understood the situation correctly. From your bug submission: It turns out that the file core.img does not contain the string normal. -- why does adding an fd0 entry to device.map not resolve this error? If (fd0) is an unknown device, then why doesn't (fd0) /dev/fd0 make it known? Because the file is called device.map Which means map linux devices to grub devices. I assume you don't know enough C to understand the whole sourcecode. You assume wrong. I still assume that, because you even failed to choose the right severity of this report. The Debian documentation about this is very clear. Honourly I don't have still any motivation at all for this report. Luckly I have already forwarded this to grub-devel and somebody had an idea. So now you can proof how much your C knowledge is and your understanding of GRUB sourcecode. please add to disk/lvm.c to the mod_init function: grub_errno = GRUB_ERR_NONE; please do not forgot to do grub-install /dev/sda or whatever the disk is you boot from, else the real GRUB isn't updated but of course you know that. -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#495049: why is (fd0) hard-coded into the grub image?
On Fri, 15 Aug 2008 18:36:49 +0200 Felix Zielcke [EMAIL PROTECTED] wrote: -- why does adding an fd0 entry to device.map not resolve this error? If (fd0) is an unknown device, then why doesn't (fd0) /dev/fd0 make it known? Because the file is called device.map Which means map linux devices to grub devices. -- which was my point. I appreciate that English is a second language for you, but perhaps if you were to review the distinction between does and does not, these questions would seem more sensible. I assume you don't know enough C to understand the whole sourcecode. You assume wrong. I still assume that, because you even failed to choose the right severity of this report. The Debian documentation about this is very clear. Yes, it says failure to boot == critical. That seems clear enough. But perhaps you have a different interpretation? Honourly I don't have still any motivation at all for this report. Luckly I have already forwarded this to grub-devel and somebody had an idea. Forget it, I'll fix it myself, and send the patch to upstream. So now you can proof how much your C knowledge is and your understanding of GRUB sourcecode. please add to disk/lvm.c to the mod_init function: grub_errno = GRUB_ERR_NONE; This does nothing to explain why grub is worried about (fd0), when none of its inputs mention any such device, as I pointed out several times already. But I suppose that your lofty arrogance prohibits you from addressing such mundane questions. -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#495049: why is (fd0) hard-coded into the grub image?
Am Freitag, den 15.08.2008, 10:51 -0700 schrieb [EMAIL PROTECTED]: Forget it, I'll fix it myself, and send the patch to upstream. Great, why didn't you do that first if you know everything better? This does nothing to explain why grub is worried about (fd0), when none of its inputs mention any such device, as I pointed out several times already. But I suppose that your lofty arrogance prohibits you from addressing such mundane questions. http://lists.gnu.org/archive/html/grub-devel/2008-08/msg00442.html Just like raid, lvm needs to scan all device. I think this is caused when it try to open (fd0), and fails. The grub_errno is not cleared, it's carried out and cause the rescue shell. I just tried to get you to confirm this for me. -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]