On Tue, Nov 21, 2017 at 03:24:38PM -0700, Eric Snowberg wrote: > > On Nov 21, 2017, at 6:20 AM, Daniel Kiper <[email protected]> wrote: > > On Mon, Nov 13, 2017 at 08:27:28AM -0800, Eric Snowberg wrote: > >> Prevent a double open. This can cause problems with some ieee1275 > >> devices, causing the system to hang. The double open can occur > >> as follows: > >> > >> grub_ls_list_files (char *dirname, int longlist, int all, int human) > >> dev = grub_device_open (device_name); > >> dev remains open while: > >> grub_normal_print_device_info (device_name); > >> dev = grub_device_open (name); > >> > >> Signed-off-by: Eric Snowberg <[email protected]> > >> --- > >> changes from v1: > >> - Added comment > >> --- > >> grub-core/commands/ls.c | 4 ++++ > >> 1 files changed, 4 insertions(+), 0 deletions(-) > >> > >> diff --git a/grub-core/commands/ls.c b/grub-core/commands/ls.c > >> index 0eaf836..fcbb3da 100644 > >> --- a/grub-core/commands/ls.c > >> +++ b/grub-core/commands/ls.c > >> @@ -201,6 +201,10 @@ grub_ls_list_files (char *dirname, int longlist, int > >> all, int human) > >> if (grub_errno == GRUB_ERR_UNKNOWN_FS) > >> grub_errno = GRUB_ERR_NONE; > >> > >> + /* Close device to prevent a double open in > >> + grub_normal_print_device_info. */ > >> + grub_device_close (dev); > >> + dev = NULL; > > > > Are you OK if I put above between "#ifdef GRUB_MACHINE_IEEE1275" and > > "#endif”? > > I suppose you could add that.
Great! > Is this patch causing problems on a different platform? Nope, but I would like to be on safe side. So, I will add it and push. Daniel _______________________________________________ Grub-devel mailing list [email protected] https://lists.gnu.org/mailman/listinfo/grub-devel
