Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

tools: Copy the bitsperlong.h files from the kernel

We use it in bitops/__ffs.h and bitops/atomic.h, that we also got from
the kernel, but were getting it from either newer systems that carry it
in /usr/include, or from the kernel sources, that we decided not to
touch from tools/ code. Fix it.

Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Wang Nan <wangnan0@huawei.com>
Link: http://lkml.kernel.org/n/tip-lwqvgbuitjmrdpjmjp6zqnyx@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>

+227
+8
tools/arch/alpha/include/uapi/asm/bitsperlong.h
··· 1 + #ifndef __ASM_ALPHA_BITSPERLONG_H 2 + #define __ASM_ALPHA_BITSPERLONG_H 3 + 4 + #define __BITS_PER_LONG 64 5 + 6 + #include <asm-generic/bitsperlong.h> 7 + 8 + #endif /* __ASM_ALPHA_BITSPERLONG_H */
+23
tools/arch/arm64/include/uapi/asm/bitsperlong.h
··· 1 + /* 2 + * Copyright (C) 2012 ARM Ltd. 3 + * 4 + * This program is free software; you can redistribute it and/or modify 5 + * it under the terms of the GNU General Public License version 2 as 6 + * published by the Free Software Foundation. 7 + * 8 + * This program is distributed in the hope that it will be useful, 9 + * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 + * GNU General Public License for more details. 12 + * 13 + * You should have received a copy of the GNU General Public License 14 + * along with this program. If not, see <http://www.gnu.org/licenses/>. 15 + */ 16 + #ifndef __ASM_BITSPERLONG_H 17 + #define __ASM_BITSPERLONG_H 18 + 19 + #define __BITS_PER_LONG 64 20 + 21 + #include <asm-generic/bitsperlong.h> 22 + 23 + #endif /* __ASM_BITSPERLONG_H */
+1
tools/arch/frv/include/uapi/asm/bitsperlong.h
··· 1 + #include <asm-generic/bitsperlong.h>
+14
tools/arch/h8300/include/asm/bitsperlong.h
··· 1 + #ifndef __ASM_H8300_BITS_PER_LONG 2 + #define __ASM_H8300_BITS_PER_LONG 3 + 4 + #include <asm-generic/bitsperlong.h> 5 + 6 + #if !defined(__ASSEMBLY__) 7 + /* h8300-unknown-linux required long */ 8 + #define __kernel_size_t __kernel_size_t 9 + typedef unsigned long __kernel_size_t; 10 + typedef long __kernel_ssize_t; 11 + typedef long __kernel_ptrdiff_t; 12 + #endif 13 + 14 + #endif /* __ASM_H8300_BITS_PER_LONG */
+26
tools/arch/hexagon/include/uapi/asm/bitsperlong.h
··· 1 + /* 2 + * Copyright (c) 2010-2011, The Linux Foundation. All rights reserved. 3 + * 4 + * This program is free software; you can redistribute it and/or modify 5 + * it under the terms of the GNU General Public License version 2 and 6 + * only version 2 as published by the Free Software Foundation. 7 + * 8 + * This program is distributed in the hope that it will be useful, 9 + * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 + * GNU General Public License for more details. 12 + * 13 + * You should have received a copy of the GNU General Public License 14 + * along with this program; if not, write to the Free Software 15 + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 16 + * 02110-1301, USA. 17 + */ 18 + 19 + #ifndef __ASM_HEXAGON_BITSPERLONG_H 20 + #define __ASM_HEXAGON_BITSPERLONG_H 21 + 22 + #define __BITS_PER_LONG 32 23 + 24 + #include <asm-generic/bitsperlong.h> 25 + 26 + #endif
+8
tools/arch/ia64/include/uapi/asm/bitsperlong.h
··· 1 + #ifndef __ASM_IA64_BITSPERLONG_H 2 + #define __ASM_IA64_BITSPERLONG_H 3 + 4 + #define __BITS_PER_LONG 64 5 + 6 + #include <asm-generic/bitsperlong.h> 7 + 8 + #endif /* __ASM_IA64_BITSPERLONG_H */
+1
tools/arch/m32r/include/uapi/asm/bitsperlong.h
··· 1 + #include <asm-generic/bitsperlong.h>
+1
tools/arch/microblaze/include/uapi/asm/bitsperlong.h
··· 1 + #include <asm-generic/bitsperlong.h>
+8
tools/arch/mips/include/uapi/asm/bitsperlong.h
··· 1 + #ifndef __ASM_MIPS_BITSPERLONG_H 2 + #define __ASM_MIPS_BITSPERLONG_H 3 + 4 + #define __BITS_PER_LONG _MIPS_SZLONG 5 + 6 + #include <asm-generic/bitsperlong.h> 7 + 8 + #endif /* __ASM_MIPS_BITSPERLONG_H */
+1
tools/arch/mn10300/include/uapi/asm/bitsperlong.h
··· 1 + #include <asm-generic/bitsperlong.h>
+14
tools/arch/parisc/include/uapi/asm/bitsperlong.h
··· 1 + #ifndef __ASM_PARISC_BITSPERLONG_H 2 + #define __ASM_PARISC_BITSPERLONG_H 3 + 4 + #if defined(__LP64__) 5 + #define __BITS_PER_LONG 64 6 + #define SHIFT_PER_LONG 6 7 + #else 8 + #define __BITS_PER_LONG 32 9 + #define SHIFT_PER_LONG 5 10 + #endif 11 + 12 + #include <asm-generic/bitsperlong.h> 13 + 14 + #endif /* __ASM_PARISC_BITSPERLONG_H */
+12
tools/arch/powerpc/include/uapi/asm/bitsperlong.h
··· 1 + #ifndef __ASM_POWERPC_BITSPERLONG_H 2 + #define __ASM_POWERPC_BITSPERLONG_H 3 + 4 + #if defined(__powerpc64__) 5 + # define __BITS_PER_LONG 64 6 + #else 7 + # define __BITS_PER_LONG 32 8 + #endif 9 + 10 + #include <asm-generic/bitsperlong.h> 11 + 12 + #endif /* __ASM_POWERPC_BITSPERLONG_H */
+12
tools/arch/s390/include/uapi/asm/bitsperlong.h
··· 1 + #ifndef __ASM_S390_BITSPERLONG_H 2 + #define __ASM_S390_BITSPERLONG_H 3 + 4 + #ifndef __s390x__ 5 + #define __BITS_PER_LONG 32 6 + #else 7 + #define __BITS_PER_LONG 64 8 + #endif 9 + 10 + #include <asm-generic/bitsperlong.h> 11 + 12 + #endif /* __ASM_S390_BITSPERLONG_H */
+6
tools/arch/score/include/uapi/asm/bitsperlong.h
··· 1 + #ifndef _ASM_SCORE_BITSPERLONG_H 2 + #define _ASM_SCORE_BITSPERLONG_H 3 + 4 + #include <asm-generic/bitsperlong.h> 5 + 6 + #endif /* _ASM_SCORE_BITSPERLONG_H */
+12
tools/arch/sparc/include/uapi/asm/bitsperlong.h
··· 1 + #ifndef __ASM_ALPHA_BITSPERLONG_H 2 + #define __ASM_ALPHA_BITSPERLONG_H 3 + 4 + #if defined(__sparc__) && defined(__arch64__) 5 + #define __BITS_PER_LONG 64 6 + #else 7 + #define __BITS_PER_LONG 32 8 + #endif 9 + 10 + #include <asm-generic/bitsperlong.h> 11 + 12 + #endif /* __ASM_ALPHA_BITSPERLONG_H */
+26
tools/arch/tile/include/uapi/asm/bitsperlong.h
··· 1 + /* 2 + * Copyright 2010 Tilera Corporation. All Rights Reserved. 3 + * 4 + * This program is free software; you can redistribute it and/or 5 + * modify it under the terms of the GNU General Public License 6 + * as published by the Free Software Foundation, version 2. 7 + * 8 + * This program is distributed in the hope that it will be useful, but 9 + * WITHOUT ANY WARRANTY; without even the implied warranty of 10 + * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, GOOD TITLE or 11 + * NON INFRINGEMENT. See the GNU General Public License for 12 + * more details. 13 + */ 14 + 15 + #ifndef _ASM_TILE_BITSPERLONG_H 16 + #define _ASM_TILE_BITSPERLONG_H 17 + 18 + #ifdef __LP64__ 19 + # define __BITS_PER_LONG 64 20 + #else 21 + # define __BITS_PER_LONG 32 22 + #endif 23 + 24 + #include <asm-generic/bitsperlong.h> 25 + 26 + #endif /* _ASM_TILE_BITSPERLONG_H */
+12
tools/arch/x86/include/uapi/asm/bitsperlong.h
··· 1 + #ifndef __ASM_X86_BITSPERLONG_H 2 + #define __ASM_X86_BITSPERLONG_H 3 + 4 + #if defined(__x86_64__) && !defined(__ILP32__) 5 + # define __BITS_PER_LONG 64 6 + #else 7 + # define __BITS_PER_LONG 32 8 + #endif 9 + 10 + #include <asm-generic/bitsperlong.h> 11 + 12 + #endif /* __ASM_X86_BITSPERLONG_H */
+1
tools/include/asm-generic/bitops/__ffs.h
··· 2 2 #define _TOOLS_LINUX_ASM_GENERIC_BITOPS___FFS_H_ 3 3 4 4 #include <asm/types.h> 5 + #include <asm/bitsperlong.h> 5 6 6 7 /** 7 8 * __ffs - find first bit in word.
+1
tools/include/asm-generic/bitops/atomic.h
··· 2 2 #define _TOOLS_LINUX_ASM_GENERIC_BITOPS_ATOMIC_H_ 3 3 4 4 #include <asm/types.h> 5 + #include <asm/bitsperlong.h> 5 6 6 7 static inline void set_bit(int nr, unsigned long *addr) 7 8 {
+25
tools/include/asm-generic/bitsperlong.h
··· 1 + #ifndef __ASM_GENERIC_BITS_PER_LONG 2 + #define __ASM_GENERIC_BITS_PER_LONG 3 + 4 + #include <uapi/asm-generic/bitsperlong.h> 5 + 6 + 7 + #ifdef CONFIG_64BIT 8 + #define BITS_PER_LONG 64 9 + #else 10 + #define BITS_PER_LONG 32 11 + #endif /* CONFIG_64BIT */ 12 + 13 + /* 14 + * FIXME: The check currently breaks x86-64 build, so it's 15 + * temporarily disabled. Please fix x86-64 and reenable 16 + */ 17 + #if 0 && BITS_PER_LONG != __BITS_PER_LONG 18 + #error Inconsistent word size. Check asm/bitsperlong.h 19 + #endif 20 + 21 + #ifndef BITS_PER_LONG_LONG 22 + #define BITS_PER_LONG_LONG 64 23 + #endif 24 + 25 + #endif /* __ASM_GENERIC_BITS_PER_LONG */
+15
tools/include/uapi/asm-generic/bitsperlong.h
··· 1 + #ifndef _UAPI__ASM_GENERIC_BITS_PER_LONG 2 + #define _UAPI__ASM_GENERIC_BITS_PER_LONG 3 + 4 + /* 5 + * There seems to be no way of detecting this automatically from user 6 + * space, so 64 bit architectures should override this in their 7 + * bitsperlong.h. In particular, an architecture that supports 8 + * both 32 and 64 bit user space must not rely on CONFIG_64BIT 9 + * to decide it, but rather check a compiler provided macro. 10 + */ 11 + #ifndef __BITS_PER_LONG 12 + #define __BITS_PER_LONG 32 13 + #endif 14 + 15 + #endif /* _UAPI__ASM_GENERIC_BITS_PER_LONG */