X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=include%2Flinux%2Felf.h;h=bad1b16ec49a73f432ed27a0c97131205f726c29;hb=02539d71fa98d5737bb668b02286c76241e4bac9;hp=8b17ffe222c462c8133cb507e3e90767f53b80ab;hpb=ba7cc09c9c9e29a57045dc5bbf843ac1cfad3283;p=linux-2.6 diff --git a/include/linux/elf.h b/include/linux/elf.h index 8b17ffe222..bad1b16ec4 100644 --- a/include/linux/elf.h +++ b/include/linux/elf.h @@ -2,9 +2,10 @@ #define _LINUX_ELF_H #include -#include #include +#ifdef __KERNEL__ #include +#endif struct file; @@ -355,6 +356,9 @@ typedef struct elf64_shdr { #define NT_TASKSTRUCT 4 #define NT_AUXV 6 #define NT_PRXFPREG 0x46e62b7f /* copied from gdb5.1/include/elf/common.h */ +#define NT_PPC_VMX 0x100 /* PowerPC Altivec/VMX registers */ +#define NT_PPC_SPE 0x101 /* PowerPC SPE/EVR registers */ +#define NT_386_TLS 0x200 /* i386 TLS slots (struct user_desc) */ /* Note header in a PT_NOTE section */ @@ -389,12 +393,14 @@ extern Elf64_Dyn _DYNAMIC []; #endif +/* Optional callbacks to write extra ELF notes. */ #ifndef ARCH_HAVE_EXTRA_ELF_NOTES -static inline int arch_notes_size(void) { return 0; } -static inline void arch_write_notes(struct file *file) { } - -#define ELF_CORE_EXTRA_NOTES_SIZE arch_notes_size() -#define ELF_CORE_WRITE_EXTRA_NOTES arch_write_notes(file) -#endif /* ARCH_HAVE_EXTRA_ELF_NOTES */ +static inline int elf_coredump_extra_notes_size(void) { return 0; } +static inline int elf_coredump_extra_notes_write(struct file *file, + loff_t *foffset) { return 0; } +#else +extern int elf_coredump_extra_notes_size(void); +extern int elf_coredump_extra_notes_write(struct file *file, loff_t *foffset); +#endif #endif /* _LINUX_ELF_H */