On Tue, Apr 12, 2016 at 02:24:12PM +0800, Michael Chang wrote: > In grub_file_open the file handle returned by file filters has no file->name > set which leads to segmentation fault later referenced by grub_elf_file. This > patch tries to fix the problem. > > gdb --args ./grub-file --is-x86_64-xen-domu /boot/vmlinux-4.1.12-1-default.gz > > (gdb) bt > #0 0x000000000047597e in grub_strlen (s=0x0) at ../grub-core/kern/misc.c:558 > #1 0x00000000004757e2 in grub_strdup (s=0x0) at ../grub-core/kern/misc.c:463 > #2 0x0000000000406418 in grub_elf_file (file=0x6dfb50, filename=0x0) at > ../grub-core/kern/elf.c:89 > #3 0x00000000004043b3 in grub_xen_file (file=0x6dfb50) at > ../grub-core/loader/i386/xen_file.c:29 > #4 0x0000000000403930 in grub_cmd_file (ctxt=0x7fffffffe120, argc=1, > args=0x6dfa00) at ../grub-core/commands/file.c:425 > #5 0x000000000047e178 in grub_extcmd_dispatcher (cmd=0x6df730, argc=2, > args=0x6ddfb0, script=0x0) at ../grub-core/commands/extcmd.c:54 > #6 0x000000000047e1d7 in grub_extcmd_dispatch (cmd=0x6df730, argc=2, > args=0x6ddfb0) at ../grub-core/commands/extcmd.c:67 > #7 0x0000000000402945 in main (argc=3, argv=0x7fffffffe2e8) at > ../util/grub-file.c:102 > (gdb) frame 3 > #3 0x00000000004043b3 in grub_xen_file (file=0x6dfb50) at > ../grub-core/loader/i386/xen_file.c:29 > 29 elf = grub_elf_file (file, file->name); > > v2: Keep the file->name in file io handle for filters as it would be fetched > by > progress and used modules, according to the review by Andrei Borzenkov.
Vladimir, Andrei, could you take care of it? Daniel _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel