UPSTREAM: linux/bits.h: Extract common header for vDSO

The vDSO library should only include the necessary headers required for
a userspace library (UAPI and a minimal set of kernel headers). To make
this possible it is necessary to isolate from the kernel headers the
common parts that are strictly necessary to build the library.

Split bits.h into linux and common headers to make the latter suitable
for inclusion in the vDSO library.

Signed-off-by: Vincenzo Frascino <vincenzo.frascino@arm.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Link: https://lkml.kernel.org/r/20200320145351.32292-3-vincenzo.frascino@arm.com
(cherry picked from commit 3945ff37d2f48d39fd1751d282c80176654049e4)
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 154668398
Change-Id: I0c162a012e930398c657a0b6e32f15037130a7b3
This commit is contained in:
Vincenzo Frascino 2020-03-20 14:53:27 +00:00 committed by Alistair Delva
parent cb55b5fbb8
commit 91da4ec2e7
2 changed files with 10 additions and 1 deletions

View file

@ -3,9 +3,9 @@
#define __LINUX_BITS_H
#include <linux/const.h>
#include <vdso/bits.h>
#include <asm/bitsperlong.h>
#define BIT(nr) (UL(1) << (nr))
#define BIT_ULL(nr) (ULL(1) << (nr))
#define BIT_MASK(nr) (UL(1) << ((nr) % BITS_PER_LONG))
#define BIT_WORD(nr) ((nr) / BITS_PER_LONG)

9
include/vdso/bits.h Normal file
View file

@ -0,0 +1,9 @@
/* SPDX-License-Identifier: GPL-2.0 */
#ifndef __VDSO_BITS_H
#define __VDSO_BITS_H
#include <vdso/const.h>
#define BIT(nr) (UL(1) << (nr))
#endif /* __VDSO_BITS_H */