Fix double declaration of getauxval() for FreeBSD PPC

The extern declaration is only for Linux, move this line
into the right #ifdef section.

Reviewed-by: Richard Yao <richard.yao@alumni.stonybrook.edu>
Reviewed-by: Ryan Moeller <ryan@iXsystems.com>
Co-authored-by: Martin Matuska <mm@FreeBSD.org>
Signed-off-by: Tino Reichardt <milky-zfs@mcmilk.de>
Closes #13934
Closes #13936
This commit is contained in:
Tino Reichardt
2022-09-26 19:32:22 +02:00
committed by GitHub
parent ebe1d03616
commit bf5b42f9c8
2 changed files with 6 additions and 3 deletions
+3 -2
View File
@@ -453,12 +453,12 @@ zfs_avx512vbmi_available(void)
#elif defined(__powerpc__)
/* including <sys/auxv.h> clashes with AT_UID and others */
extern unsigned long getauxval(unsigned long type);
#if defined(__FreeBSD__)
#define AT_HWCAP 25 /* CPU feature flags. */
#define AT_HWCAP2 26 /* CPU feature flags 2. */
extern int elf_aux_info(int aux, void *buf, int buflen);
static unsigned long getauxval(unsigned long key)
static inline unsigned long
getauxval(unsigned long key)
{
unsigned long val = 0UL;
@@ -470,6 +470,7 @@ static unsigned long getauxval(unsigned long key)
#elif defined(__linux__)
#define AT_HWCAP 16 /* CPU feature flags. */
#define AT_HWCAP2 26 /* CPU feature flags 2. */
extern unsigned long getauxval(unsigned long type);
#endif
#define kfpu_allowed() 1