Hi Laurent,

[ ... ]

>> +int zImage_ppc64_unzip(struct mem_ehdr *ehdr, void **buf, int *len)
>> +{
>> +    struct mem_shdr *shdr;
>> +    void *vmlinuz_addr;
>> +    unsigned long vmlinuz_size;
>> +    unsigned int *vmlinux_sizep;
>> +
>> +    void *vmlinux_addr;
>> +    int vmlinux_size;
>> +
>> +    shdr = elf_rel_find_section(ehdr, ".kernel:vmlinux.strip");
>> +    if (!shdr)
>> +            return -1;
>> +
>> +    vmlinuz_addr = (void *) shdr->sh_data;
>> +    vmlinuz_size = shdr->sh_size;
>> +
>> +     /* The size of the uncompressed file is stored in the last 4
>> +      * bytes. The vmlinux size should be less than 4G ... */
>> +    vmlinux_sizep = (vmlinuz_addr + vmlinuz_size) - 4;
>> +
>> +    fprintf(stderr, "Found vmlinuz at %p, unzipping %d bytes\n",
>> +            vmlinuz_addr, *vmlinux_sizep);
> 
> Hi Cédric,
> 
> I'd rather use dbgprintf instead of directly call fprintf here.

Sure. Thanks for the review. I have a new version of this patch which 
also fixes the way the uncompressed size is read, as it is stored as 
a little endian uint.

Simon, do you want a resend of the patchset or a fix on top of it ? 

Cheers, 

C.


_______________________________________________
kexec mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/kexec

Reply via email to