Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9858c60c authored by Arnd Bergmann's avatar Arnd Bergmann Committed by Arnd Bergmann
Browse files

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: default avatarRemis Lima Baima <remis.developer@googlemail.com>
Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
parent d7c4f1b7
Loading
Loading
Loading
Loading
+18 −6
Original line number Diff line number Diff line
#ifndef _ASM_GENERIC_BITOPS_H_
#define _ASM_GENERIC_BITOPS_H_
#ifndef __ASM_GENERIC_BITOPS_H
#define __ASM_GENERIC_BITOPS_H

/*
 * For the benefit of those who are trying to port Linux to another
@@ -9,11 +9,21 @@
 * C language equivalents written by Theodore Ts'o, 9/26/92
 */

#include <asm-generic/bitops/atomic.h>
#include <asm-generic/bitops/non-atomic.h>
#include <linux/irqflags.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/ffz.h>
#include <asm-generic/bitops/fls.h>
#include <asm-generic/bitops/__fls.h>
#include <asm-generic/bitops/fls64.h>
#include <asm-generic/bitops/find.h>

@@ -26,8 +36,10 @@
#include <asm-generic/bitops/hweight.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-atomic.h>
#include <asm-generic/bitops/minix.h>

#endif /* _ASM_GENERIC_BITOPS_H */
#endif /* __ASM_GENERIC_BITOPS_H */