Bug#495049: why is (fd0) hard-coded into the grub image?

2008-08-16 Thread Felix Zielcke
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?

2008-08-15 Thread ian_bruce
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?

2008-08-15 Thread Felix Zielcke
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?

2008-08-15 Thread ian_bruce
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?

2008-08-15 Thread Felix Zielcke
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?

2008-08-15 Thread ian_bruce
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?

2008-08-15 Thread Felix Zielcke
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]