} else {
if ((unsigned long)_start < ei.memsize)
fatal("Insufficient memory for kernel at address 0!"
- " (_start=%lx)\n\r", _start);
+ " (_start=%p)\n\r", _start);
}
/* Finally, gunzip the kernel */
/* discard up to the actual load data */
gunzip_discard(&gzstate, ei.elfoffset - sizeof(elfheader));
len = gunzip_finish(&gzstate, addr, ei.memsize);
- printf("done 0x%lx bytes\n\r", len);
+ printf("done 0x%x bytes\n\r", len);
flush_cache(addr, ei.loadsize);
if (! initrd_addr)
fatal("Can't allocate memory for initial "
"ramdisk !\n\r");
- printf("Relocating initrd 0x%p <- 0x%p (0x%lx bytes)\n\r",
+ printf("Relocating initrd 0x%lx <- 0x%p (0x%lx bytes)\n\r",
initrd_addr, old_addr, initrd_size);
memmove((void *)initrd_addr, old_addr, initrd_size);
}
#define EINVAL 22 /* Invalid argument */
#define ENOSPC 28 /* No space left on device */
-extern int printf(const char *fmt, ...);
+extern int printf(const char *fmt, ...) __attribute__((format(printf, 1, 2)));
#define fprintf(fmt, args...) printf(args)
-extern int sprintf(char *buf, const char *fmt, ...);
+extern int sprintf(char *buf, const char *fmt, ...)
+ __attribute__((format(printf, 2, 3)));
extern int vsprintf(char *buf, const char *fmt, va_list args);