Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit fae59c39 authored by David Gibson's avatar David Gibson Committed by Paul Mackerras
Browse files

[POWERPC] Add gcc format warnings to zImage printf()



This patch adds the correct attributes to the zImage's versions of
printf to make gcc generate format string mismatch warnings.  It also
corrects several minor problems with format strings in the zImage thus
discovered.

Signed-off-by: default avatarDavid Gibson <david@gibson.dropbear.id.au>
Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
parent 9da82a6d
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -136,7 +136,7 @@ static struct addr_range prep_kernel(void)
	} 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 */
@@ -145,7 +145,7 @@ static struct addr_range prep_kernel(void)
	/* 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);

@@ -189,7 +189,7 @@ static struct addr_range prep_initrd(struct addr_range vmlinux,
		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);
	}
+3 −2
Original line number Diff line number Diff line
@@ -7,11 +7,12 @@
#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);