diff options
author | Dima Zavin <dima@android.com> | 2010-02-12 20:29:39 -0800 |
---|---|---|
committer | Dima Zavin <dima@android.com> | 2010-02-12 20:29:39 -0800 |
commit | 8bc1f67f75fa6ce4164e324539017e81af2e70fc (patch) | |
tree | 41ab3a4c154e9b33d883ca1d12cc75f0e2f3e7de | |
parent | a636e3e4265d8a77502bca9c9222d51d622bc6a0 (diff) | |
download | lk-8bc1f67f75fa6ce4164e324539017e81af2e70fc.tar.gz |
aboot: correctly use page_size when booting an image from memory
Signed-off-by: Dima Zavin <dima@android.com>
-rwxr-xr-x | app/aboot/aboot.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/app/aboot/aboot.c b/app/aboot/aboot.c index 5a45e707..94dfcdea 100755 --- a/app/aboot/aboot.c +++ b/app/aboot/aboot.c @@ -294,13 +294,14 @@ void cmd_boot(const char *arg, void *data, unsigned sz) kernel_actual = ROUND_TO_PAGE(hdr.kernel_size, page_mask); ramdisk_actual = ROUND_TO_PAGE(hdr.ramdisk_size, page_mask); - if (2048 + kernel_actual + ramdisk_actual < sz) { + if (page_size + kernel_actual + ramdisk_actual < sz) { fastboot_fail("incomplete bootimage"); return; } - memmove((void*) KERNEL_ADDR, ptr + 2048, hdr.kernel_size); - memmove((void*) RAMDISK_ADDR, ptr + 2048 + kernel_actual, hdr.ramdisk_size); + memmove((void*) KERNEL_ADDR, ptr + page_size, hdr.kernel_size); + memmove((void*) RAMDISK_ADDR, ptr + page_size + kernel_actual, + hdr.ramdisk_size); fastboot_okay(""); udc_stop(); |