[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [Bug 1317090] Re: qemu fails on ELF files with no secti
From: |
Peter Maydell |
Subject: |
Re: [Qemu-devel] [Bug 1317090] Re: qemu fails on ELF files with no section headers |
Date: |
Wed, 7 May 2014 15:53:38 +0100 |
On 7 May 2014 15:48, Peter Maydell <address@hidden> wrote:
> On 7 May 2014 15:34, Paul Jimenez <address@hidden> wrote:
>> Bug description:
>> Using the latest version of qemu-user-static from trusty, 2.0.0+dfsg-
>> 2ubuntu1.
>>
>> Reported to qemu and patch submitted long ago by the guy who wrote
>> http://www.devttys0.com/2011/12/qemu-vs-sstrip/
>> but apparently dropped on the floor - at least, I can't find it in any
>> qemu bug tracker anywhere. It's now keeping me from running openwrt
>> binaries under qemu-arm-static (because the openwrt guys strip section
>> headers to save space on their teeny embedded boxes). It's a one-line
>> patch, reproduced here:
>>
>> --- qemu/linux-user/elfload.c 2011-12-02 15:16:07.637541215 -0500
>> +++ qemu-patched/linux-user/elfload.c 2011-12-02 15:27:24.061522798 -0500
>> @@ -1068,7 +1068,6 @@ static bool elf_check_ehdr(struct elfhdr
>> return (elf_check_arch(ehdr->e_machine)
>> && ehdr->e_ehsize == sizeof(struct elfhdr)
>> && ehdr->e_phentsize == sizeof(struct elf_phdr)
>> - && ehdr->e_shentsize == sizeof(struct elf_shdr)
>> && (ehdr->e_type == ET_EXEC || ehdr->e_type == ET_DYN));
>> }
>
> Yeah; the equivalent kernel code:
> http://lxr.linux.no/#linux+v3.14.3/fs/binfmt_elf.c#L595
> doesn't check the section header size, and nor should QEMU.
Original 2011 patch:
http://lists.gnu.org/archive/html/qemu-trivial/2011-12/msg00025.html
(hitting the 'reply' button gets us back the original email
address to fix up the signed-off-by line with, so we can
credit the fix to Craig properly.)
thanks
-- PMM