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

Commit 89003ebf authored by Paul Mackerras's avatar Paul Mackerras
Browse files

powerpc: Fix BUG/WARN macros for 64-bit



The bug_entry struct had an int in the middle of pointers and unsigned
longs, and the inline asm that generated the bug table entries didn't
insert the necessary padding, so the fields following it didn't get
initialized properly and an oops resulted.  This changes the int field
(the line number) to a long so that all the fields are the same size
and no padding is required.

Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
parent a0e60b20
Loading
Loading
Loading
Loading
+2 −2
Original line number Original line Diff line number Diff line
@@ -13,7 +13,7 @@


#ifdef __powerpc64__
#ifdef __powerpc64__
#define BUG_TABLE_ENTRY(label, line, file, func) \
#define BUG_TABLE_ENTRY(label, line, file, func) \
	".llong " #label "\n .long " #line "\n .llong " #file ", " #func "\n"
	".llong " #label ", " #line ", " #file ", " #func "\n"
#define TRAP_OP(ra, rb) "1: tdnei " #ra ", " #rb "\n"
#define TRAP_OP(ra, rb) "1: tdnei " #ra ", " #rb "\n"
#define DATA_TYPE long long
#define DATA_TYPE long long
#else 
#else 
@@ -25,7 +25,7 @@


struct bug_entry {
struct bug_entry {
	unsigned long	bug_addr;
	unsigned long	bug_addr;
	int		line;
	long		line;
	const char	*file;
	const char	*file;
	const char	*function;
	const char	*function;
};
};