]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/commitdiff
bitops: Revert cbe96375025e ("bitops: Add clear/set_bit32() to linux/bitops.h")
authorThomas Gleixner <tglx@linutronix.de>
Thu, 2 Nov 2017 12:30:03 +0000 (13:30 +0100)
committerKleber Sacilotto de Souza <kleber.souza@canonical.com>
Sat, 6 Jan 2018 12:22:58 +0000 (13:22 +0100)
CVE-2017-5754

These ops are not endian safe and may break on architectures which have
aligment requirements.

Reverts: cbe96375025e ("bitops: Add clear/set_bit32() to linux/bitops.h")
Reported-by: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Andi Kleen <ak@linux.intel.com>
(cherry picked from commit 1943dc07b45e347c52c1bfdd4a37e04a86e399aa)
Signed-off-by: Andy Whitcroft <apw@canonical.com>
Signed-off-by: Kleber Sacilotto de Souza <kleber.souza@canonical.com>
include/linux/bitops.h

index eb257a96db6d9f3831e107897ecb56ff39eb6ed9..a83c822c35c2424095b512dd04f95609cadfdaa0 100644 (file)
@@ -226,32 +226,6 @@ static inline unsigned long __ffs64(u64 word)
        return __ffs((unsigned long)word);
 }
 
-/*
- * clear_bit32 - Clear a bit in memory for u32 array
- * @nr: Bit to clear
- * @addr: u32 * address of bitmap
- *
- * Same as clear_bit, but avoids needing casts for u32 arrays.
- */
-
-static __always_inline void clear_bit32(long nr, volatile u32 *addr)
-{
-       clear_bit(nr, (volatile unsigned long *)addr);
-}
-
-/*
- * set_bit32 - Set a bit in memory for u32 array
- * @nr: Bit to clear
- * @addr: u32 * address of bitmap
- *
- * Same as set_bit, but avoids needing casts for u32 arrays.
- */
-
-static __always_inline void set_bit32(long nr, volatile u32 *addr)
-{
-       set_bit(nr, (volatile unsigned long *)addr);
-}
-
 #ifdef __KERNEL__
 
 #ifndef set_mask_bits