Skip to content

Commit

Permalink
UML - Fix boot crash
Browse files Browse the repository at this point in the history
My copying of linux/init.h didn't go far enough.  The definition of
__used singled out gcc minor version 3, but didn't care what the major
version was.  This broke when unit-at-a-time was added and gcc started
throwing out initcalls.

This results in an early boot crash when ptrace tries to initialize a
process with an empty, uninitialized register set.

Signed-off-by: Jeff Dike <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
  • Loading branch information
cfd-36 authored and torvalds committed Jul 23, 2008
1 parent 4d8f54d commit 7c1fed0
Showing 1 changed file with 8 additions and 0 deletions.
8 changes: 8 additions & 0 deletions arch/um/include/init.h
Original file line number Diff line number Diff line change
Expand Up @@ -45,12 +45,20 @@ typedef void (*exitcall_t)(void);
# define __section(S) __attribute__ ((__section__(#S)))
#endif

#if __GNUC__ == 3

#if __GNUC_MINOR__ >= 3
# define __used __attribute__((__used__))
#else
# define __used __attribute__((__unused__))
#endif

#else
#if __GNUC__ == 4
# define __used __attribute__((__used__))
#endif
#endif

#else
#include <linux/compiler.h>
#endif
Expand Down

0 comments on commit 7c1fed0

Please sign in to comment.