提交 9858c60c 编写于 作者: A Arnd Bergmann 提交者: Arnd Bergmann

asm-generic: make bitops.h usable

bitops.h apparently suffered from some level of bitrot, it
was missing the smp_mb__{before,after}_clear_bit functions,
and included other headers in an invalid order.

This changes the file so that new architectures can use
it out of the box.
Signed-off-by: NRemis Lima Baima <remis.developer@googlemail.com>
Signed-off-by: NArnd Bergmann <arnd@arndb.de>
上级 d7c4f1b7
#ifndef _ASM_GENERIC_BITOPS_H_ #ifndef __ASM_GENERIC_BITOPS_H
#define _ASM_GENERIC_BITOPS_H_ #define __ASM_GENERIC_BITOPS_H
/* /*
* For the benefit of those who are trying to port Linux to another * For the benefit of those who are trying to port Linux to another
...@@ -9,11 +9,21 @@ ...@@ -9,11 +9,21 @@
* C language equivalents written by Theodore Ts'o, 9/26/92 * C language equivalents written by Theodore Ts'o, 9/26/92
*/ */
#include <asm-generic/bitops/atomic.h> #include <linux/irqflags.h>
#include <asm-generic/bitops/non-atomic.h> #include <linux/compiler.h>
/*
* clear_bit may not imply a memory barrier
*/
#ifndef smp_mb__before_clear_bit
#define smp_mb__before_clear_bit() smp_mb()
#define smp_mb__after_clear_bit() smp_mb()
#endif
#include <asm-generic/bitops/__ffs.h> #include <asm-generic/bitops/__ffs.h>
#include <asm-generic/bitops/ffz.h> #include <asm-generic/bitops/ffz.h>
#include <asm-generic/bitops/fls.h> #include <asm-generic/bitops/fls.h>
#include <asm-generic/bitops/__fls.h>
#include <asm-generic/bitops/fls64.h> #include <asm-generic/bitops/fls64.h>
#include <asm-generic/bitops/find.h> #include <asm-generic/bitops/find.h>
...@@ -26,8 +36,10 @@ ...@@ -26,8 +36,10 @@
#include <asm-generic/bitops/hweight.h> #include <asm-generic/bitops/hweight.h>
#include <asm-generic/bitops/lock.h> #include <asm-generic/bitops/lock.h>
#include <asm-generic/bitops/atomic.h>
#include <asm-generic/bitops/non-atomic.h>
#include <asm-generic/bitops/ext2-non-atomic.h> #include <asm-generic/bitops/ext2-non-atomic.h>
#include <asm-generic/bitops/ext2-atomic.h> #include <asm-generic/bitops/ext2-atomic.h>
#include <asm-generic/bitops/minix.h> #include <asm-generic/bitops/minix.h>
#endif /* _ASM_GENERIC_BITOPS_H */ #endif /* __ASM_GENERIC_BITOPS_H */
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册