Hi all.
In arch/x86/boot/compressed/head_32.S
before the call of decompress_kernel()
it load the address of z_extract_offset_negative(%ebx) as the output address
and actually the output_len of the decompressed kernel is larger than extract_offset
so the decompressed data will override the uncompressed data begin at input_data
Is that the case?
How does it worked as the the input buffer is covered by the output buffer while uncompressing?
It confused me a lot.
or I'd made some misunderstanding on the decompressing routine?
Thanks.
2011-08-27
jiangtao.jit