kern/fs: The grub_fs_probe() should dprint errors from filesystems

When filesystem detection fails, all that's currently debug-logged is
a series of messages like:

    grub-core/kern/fs.c:56:fs: Detecting ntfs...
    grub-core/kern/fs.c:76:fs: ntfs detection failed.

repeated for each filesystem. Any messages provided to grub_error() by
the filesystem are lost, and one has to break out gdb to figure out what
went wrong.

With this change, one instead sees:

    grub-core/kern/fs.c:56:fs: Detecting fat...
    grub-core/osdep/hostdisk.c:357:hostdisk: reusing open device
    `/path/to/device'
    grub-core/kern/fs.c:77:fs: error: invalid modification timestamp for /.
    grub-core/kern/fs.c:79:fs: fat detection failed.

in the debug prints.

Signed-off-by: Robbie Harwood <rharwood@redhat.com>
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
This commit is contained in:
Robbie Harwood 2022-07-15 16:13:01 -04:00 committed by Daniel Kiper
parent 9b6f16501a
commit 92005be6d8

View File

@ -75,6 +75,8 @@ grub_fs_probe (grub_device_t device)
return p;
grub_error_push ();
/* The grub_error_push() does not touch grub_errmsg. */
grub_dprintf ("fs", _("error: %s.\n"), grub_errmsg);
grub_dprintf ("fs", "%s detection failed.\n", p->name);
grub_error_pop ();