mirror of https://gitee.com/openkylin/linux.git
perf tools: Update types definitions for Android
Some type definitions are missing from Android or are already defined in bionic and lead to redefinition errors. Android defines in types.h __le32. Since perf is wrapping <linux/types.h> with a local version, we need to define this constant in the local version too. Error in Android: In file included from bionic/libc/include/unistd.h:36:0, from external/perf/tools/perf/util/util.h:46, from external/perf/tools/perf/util/cache.h:5, from external/perf/tools/perf/util/abspath.c:1: bionic/libc/kernel/common/linux/capability.h:60:2: error: unknown type name '__le32' roundup() definition is missing: util/symbol.c: In function 'symbols__fixup_end': util/symbol.c:106: warning: implicit declaration of function 'roundup' util/symbol.c:106: warning: nested extern declaration of 'roundup' __force macro defined in perf is also defined in libc which leads to redefinition errors. In order to avoid these, we guard these definition with Signed-off-by: Irina Tirdea <irina.tirdea@intel.com> Acked-by: Pekka Enberg <penberg@kernel.org> Cc: David Ahern <dsahern@gmail.com> Cc: Ingo Molnar <mingo@redhat.com> Cc: Irina Tirdea <irina.tirdea@intel.com> Cc: Namhyung Kim <namhyung.kim@lge.com> Cc: Paul Mackerras <paulus@samba.org> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Steven Rostedt <rostedt@goodmis.org> Link: http://lkml.kernel.org/r/1347315303-29906-3-git-send-email-irina.tirdea@intel.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
parent
fe392c5356
commit
86d5a70c1e
|
@ -12,4 +12,8 @@
|
|||
#define __used __attribute__((__unused__))
|
||||
#define __packed __attribute__((__packed__))
|
||||
|
||||
#ifndef __force
|
||||
#define __force
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
|
|
@ -46,6 +46,15 @@
|
|||
_min1 < _min2 ? _min1 : _min2; })
|
||||
#endif
|
||||
|
||||
#ifndef roundup
|
||||
#define roundup(x, y) ( \
|
||||
{ \
|
||||
const typeof(y) __y = y; \
|
||||
(((x) + (__y - 1)) / __y) * __y; \
|
||||
} \
|
||||
)
|
||||
#endif
|
||||
|
||||
#ifndef BUG_ON
|
||||
#ifdef NDEBUG
|
||||
#define BUG_ON(cond) do { if (cond) {} } while (0)
|
||||
|
|
|
@ -3,6 +3,14 @@
|
|||
|
||||
#include <asm/types.h>
|
||||
|
||||
#ifndef __bitwise
|
||||
#define __bitwise
|
||||
#endif
|
||||
|
||||
#ifndef __le32
|
||||
typedef __u32 __bitwise __le32;
|
||||
#endif
|
||||
|
||||
#define DECLARE_BITMAP(name,bits) \
|
||||
unsigned long name[BITS_TO_LONGS(bits)]
|
||||
|
||||
|
|
Loading…
Reference in New Issue