Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F135556451
D12290.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
5 KB
Referenced Files
None
Subscribers
None
D12290.diff
View Options
Index: head/sys/arm/include/elf.h
===================================================================
--- head/sys/arm/include/elf.h
+++ head/sys/arm/include/elf.h
@@ -85,8 +85,9 @@
#define AT_TIMEKEEP 22 /* Pointer to timehands. */
#define AT_STACKPROT 23 /* Initial stack protection. */
#define AT_EHDRFLAGS 24 /* e_flags field from elf hdr */
+#define AT_HWCAP 25 /* CPU feature flags. */
-#define AT_COUNT 25 /* Count of defined aux entry types. */
+#define AT_COUNT 26 /* Count of defined aux entry types. */
#define R_ARM_COUNT 33 /* Count of defined relocation types. */
Index: head/sys/arm64/include/elf.h
===================================================================
--- head/sys/arm64/include/elf.h
+++ head/sys/arm64/include/elf.h
@@ -90,8 +90,10 @@
#define AT_PAGESIZESLEN 21 /* Number of pagesizes. */
#define AT_TIMEKEEP 22 /* Pointer to timehands. */
#define AT_STACKPROT 23 /* Initial stack protection. */
+#define AT_EHDRFLAGS 24 /* e_flags field from elf hdr */
+#define AT_HWCAP 25 /* CPU feature flags. */
-#define AT_COUNT 24 /* Count of defined aux entry types. */
+#define AT_COUNT 26 /* Count of defined aux entry types. */
/* Define "machine" characteristics */
#define ELF_TARG_CLASS ELFCLASS64
Index: head/sys/kern/imgact_elf.c
===================================================================
--- head/sys/kern/imgact_elf.c
+++ head/sys/kern/imgact_elf.c
@@ -1110,9 +1110,7 @@
AUXARGS_ENTRY(pos, AT_FLAGS, args->flags);
AUXARGS_ENTRY(pos, AT_ENTRY, args->entry);
AUXARGS_ENTRY(pos, AT_BASE, args->base);
-#ifdef AT_EHDRFLAGS
AUXARGS_ENTRY(pos, AT_EHDRFLAGS, args->hdr_eflags);
-#endif
if (imgp->execpathp != 0)
AUXARGS_ENTRY(pos, AT_EXECPATH, imgp->execpathp);
AUXARGS_ENTRY(pos, AT_OSRELDATE,
@@ -1133,6 +1131,8 @@
AUXARGS_ENTRY(pos, AT_STACKPROT, imgp->sysent->sv_shared_page_obj
!= NULL && imgp->stack_prot != 0 ? imgp->stack_prot :
imgp->sysent->sv_stackprot);
+ if (imgp->sysent->sv_hwcap != NULL)
+ AUXARGS_ENTRY(pos, AT_HWCAP, *imgp->sysent->sv_hwcap);
AUXARGS_ENTRY(pos, AT_NULL, 0);
free(imgp->auxargs, M_TEMP);
Index: head/sys/mips/include/elf.h
===================================================================
--- head/sys/mips/include/elf.h
+++ head/sys/mips/include/elf.h
@@ -144,8 +144,10 @@
#define AT_PAGESIZESLEN 21 /* Number of pagesizes. */
#define AT_TIMEKEEP 22 /* Pointer to timehands. */
#define AT_STACKPROT 23 /* Initial stack protection. */
+#define AT_EHDRFLAGS 24 /* e_flags field from elf hdr */
+#define AT_HWCAP 25 /* CPU feature flags. */
-#define AT_COUNT 24 /* Count of defined aux entry types. */
+#define AT_COUNT 26 /* Count of defined aux entry types. */
#define ET_DYN_LOAD_ADDR 0x0120000
Index: head/sys/powerpc/include/elf.h
===================================================================
--- head/sys/powerpc/include/elf.h
+++ head/sys/powerpc/include/elf.h
@@ -107,8 +107,10 @@
#define AT_PAGESIZESLEN 19 /* Number of pagesizes. */
#define AT_STACKPROT 21 /* Initial stack protection. */
#define AT_TIMEKEEP 22 /* Pointer to timehands. */
+#define AT_EHDRFLAGS 24 /* e_flags field from elf hdr */
+#define AT_HWCAP 25 /* CPU feature flags. */
-#define AT_COUNT 23 /* Count of defined aux entry types. */
+#define AT_COUNT 26 /* Count of defined aux entry types. */
/*
* Relocation types.
Index: head/sys/riscv/include/elf.h
===================================================================
--- head/sys/riscv/include/elf.h
+++ head/sys/riscv/include/elf.h
@@ -90,8 +90,10 @@
#define AT_PAGESIZESLEN 21 /* Number of pagesizes. */
#define AT_TIMEKEEP 22 /* Pointer to timehands. */
#define AT_STACKPROT 23 /* Initial stack protection. */
+#define AT_EHDRFLAGS 24 /* e_flags field from elf hdr */
+#define AT_HWCAP 25 /* CPU feature flags. */
-#define AT_COUNT 24 /* Count of defined aux entry types. */
+#define AT_COUNT 26 /* Count of defined aux entry types. */
/* Define "machine" characteristics */
#define ELF_TARG_CLASS ELFCLASS64
Index: head/sys/sparc64/include/elf.h
===================================================================
--- head/sys/sparc64/include/elf.h
+++ head/sys/sparc64/include/elf.h
@@ -92,8 +92,10 @@
#define AT_PAGESIZESLEN 21 /* Number of pagesizes. */
#define AT_TIMEKEEP 22 /* Pointer to timehands. */
#define AT_STACKPROT 23 /* Initial stack protection. */
+#define AT_EHDRFLAGS 24 /* e_flags field from elf hdr */
+#define AT_HWCAP 25 /* CPU feature flags. */
-#define AT_COUNT 24 /* Count of defined aux entry types. */
+#define AT_COUNT 26 /* Count of defined aux entry types. */
/* Define "machine" characteristics */
#if __ELF_WORD_SIZE == 32
Index: head/sys/sys/sysent.h
===================================================================
--- head/sys/sys/sysent.h
+++ head/sys/sys/sysent.h
@@ -129,6 +129,7 @@
void (*sv_schedtail)(struct thread *);
void (*sv_thread_detach)(struct thread *);
int (*sv_trap)(struct thread *);
+ u_long *sv_hwcap; /* Value passed in AT_HWCAP. */
};
#define SV_ILP32 0x000100 /* 32-bit executable. */
Index: head/sys/x86/include/elf.h
===================================================================
--- head/sys/x86/include/elf.h
+++ head/sys/x86/include/elf.h
@@ -100,8 +100,10 @@
#define AT_PAGESIZESLEN 21 /* Number of pagesizes. */
#define AT_TIMEKEEP 22 /* Pointer to timehands. */
#define AT_STACKPROT 23 /* Initial stack protection. */
+#define AT_EHDRFLAGS 24 /* e_flags field from elf hdr */
+#define AT_HWCAP 25 /* CPU feature flags. */
-#define AT_COUNT 24 /* Count of defined aux entry types. */
+#define AT_COUNT 26 /* Count of defined aux entry types. */
/*
* Relocation types.
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Tue, Nov 11, 7:10 PM (17 m, 37 s)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
25173326
Default Alt Text
D12290.diff (5 KB)
Attached To
Mode
D12290: Add AT_HWCAP and AT_EHDRFLAGS on all platforms.
Attached
Detach File
Event Timeline
Log In to Comment