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

Commit 75da736f authored by David Woodhouse's avatar David Woodhouse Committed by Linus Torvalds
Browse files

[PATCH] Fix 'make headers_check' on x86_64



On Tue, 2006-09-12 at 17:44 +0100, David Woodhouse wrote:
> asm-x86_64/elf.h requires asm/processor.h, which does not exist
> asm-x86_64/signal.h requires linux/linkage.h, which does not exist
> asm-x86_64/unistd.h requires linux/linkage.h, which does not exist
> asm-x86_64/vsyscall.h requires linux/seqlock.h, which does not exist

Again, move stuff which shouldn't be visible inside (mostly already existing)
#ifdef __KERNEL__.

This fixes a bunch of mislabelled and unlabelled #endifs in unistd.h and also
cleans that up to conform with what's visible on other architectures, since
the minimal fix for the error reported about would have involved a more
intrusive patch, renesting other ifdefs.

Signed-off-by: default avatarDavid Woodhouse <dwmw2@infradead.org>
Cc: Sam Ravnborg <sam@ravnborg.org>
Cc: Andi Kleen <ak@suse.de>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent e5fa6d70
Loading
Loading
Loading
Loading
+11 −9
Original line number Diff line number Diff line
@@ -7,8 +7,6 @@

#include <asm/ptrace.h>
#include <asm/user.h>
#include <asm/processor.h>
#include <asm/compat.h>

/* x86-64 relocation types */
#define R_X86_64_NONE		0	/* No reloc */
@@ -38,12 +36,6 @@ typedef elf_greg_t elf_gregset_t[ELF_NGREG];

typedef struct user_i387_struct elf_fpregset_t;

/*
 * This is used to ensure we don't load something for the wrong architecture.
 */
#define elf_check_arch(x) \
	((x)->e_machine == EM_X86_64)

/*
 * These are used to set parameters in the core dumps.
 */
@@ -51,6 +43,17 @@ typedef struct user_i387_struct elf_fpregset_t;
#define ELF_DATA	ELFDATA2LSB
#define ELF_ARCH	EM_X86_64

#ifdef __KERNEL__
#include <asm/processor.h>
#include <asm/compat.h>

/*
 * This is used to ensure we don't load something for the wrong architecture.
 */
#define elf_check_arch(x) \
	((x)->e_machine == EM_X86_64)


/* SVR4/i386 ABI (pages 3-31, 3-32) says that when the program starts %edx
   contains a pointer to a function which might be registered using `atexit'.
   This provides a mean for the dynamic linker to call DT_FINI functions for
@@ -141,7 +144,6 @@ typedef struct user_i387_struct elf_fpregset_t;
/* I'm not sure if we can use '-' here */
#define ELF_PLATFORM  ("x86_64")

#ifdef __KERNEL__
extern void set_personality_64bit(void);
#define SET_PERSONALITY(ex, ibcs2) set_personality_64bit()
/*
+1 −1
Original line number Diff line number Diff line
@@ -3,13 +3,13 @@

#ifndef __ASSEMBLY__
#include <linux/types.h>
#include <linux/linkage.h>
#include <linux/time.h>

/* Avoid too many header ordering problems.  */
struct siginfo;

#ifdef __KERNEL__
#include <linux/linkage.h>
/* Most things should be clean enough to redefine this at will, if care
   is taken to make libc match.  */

+8 −8
Original line number Diff line number Diff line
@@ -620,6 +620,8 @@ __SYSCALL(__NR_vmsplice, sys_vmsplice)
#define __NR_move_pages		279
__SYSCALL(__NR_move_pages, sys_move_pages)

#ifdef __KERNEL__

#define __NR_syscall_max __NR_move_pages

#ifndef __NO_STUBS
@@ -744,8 +746,6 @@ __syscall_return(type,__res); \

#else /* __KERNEL_SYSCALLS__ */

#ifdef __KERNEL__

#include <linux/syscalls.h>
#include <asm/ptrace.h>

@@ -821,8 +821,6 @@ asmlinkage long sys_fork(struct pt_regs regs);
asmlinkage long sys_vfork(struct pt_regs regs);
asmlinkage long sys_pipe(int *fildes);

#endif /* __KERNEL_SYSCALLS__ */

#ifndef __ASSEMBLY__

#include <linux/linkage.h>
@@ -838,9 +836,9 @@ asmlinkage long sys_rt_sigaction(int sig,
				struct sigaction __user *oact,
				size_t sigsetsize);

#endif
#endif  /* __ASSEMBLY__ */

#endif
#endif /* __KERNEL_SYSCALLS__ */

/*
 * "Conditional" syscalls
@@ -850,6 +848,8 @@ asmlinkage long sys_rt_sigaction(int sig,
 */
#define cond_syscall(x) asm(".weak\t" #x "\n\t.set\t" #x ",sys_ni_syscall")

#endif
#endif /* __NO_STUBS */

#endif
#endif /* __KERNEL__ */

#endif /* _ASM_X86_64_UNISTD_H_ */
+1 −2
Original line number Diff line number Diff line
#ifndef _ASM_X86_64_VSYSCALL_H_
#define _ASM_X86_64_VSYSCALL_H_

#include <linux/seqlock.h>

enum vsyscall_num {
	__NR_vgettimeofday,
	__NR_vtime,
@@ -14,6 +12,7 @@ enum vsyscall_num {
#define VSYSCALL_ADDR(vsyscall_nr) (VSYSCALL_START+VSYSCALL_SIZE*(vsyscall_nr))

#ifdef __KERNEL__
#include <linux/seqlock.h>

#define __section_vxtime __attribute__ ((unused, __section__ (".vxtime"), aligned(16)))
#define __section_wall_jiffies __attribute__ ((unused, __section__ (".wall_jiffies"), aligned(16)))