| 1 | /* SPDX-License-Identifier: GPL-2.0 */ | 
|---|
| 2 | #ifndef __VDSO_ALIGN_H | 
|---|
| 3 | #define __VDSO_ALIGN_H | 
|---|
| 4 |  | 
|---|
| 5 | #include <vdso/const.h> | 
|---|
| 6 |  | 
|---|
| 7 | /* @a is a power of 2 value */ | 
|---|
| 8 | #define ALIGN(x, a)		__ALIGN_KERNEL((x), (a)) | 
|---|
| 9 | #define ALIGN_DOWN(x, a)	__ALIGN_KERNEL((x) - ((a) - 1), (a)) | 
|---|
| 10 | #define __ALIGN_MASK(x, mask)	__ALIGN_KERNEL_MASK((x), (mask)) | 
|---|
| 11 | #define PTR_ALIGN(p, a)		((typeof(p))ALIGN((unsigned long)(p), (a))) | 
|---|
| 12 | #define PTR_ALIGN_DOWN(p, a)	((typeof(p))ALIGN_DOWN((unsigned long)(p), (a))) | 
|---|
| 13 | #define IS_ALIGNED(x, a)		(((x) & ((typeof(x))(a) - 1)) == 0) | 
|---|
| 14 |  | 
|---|
| 15 | #endif	/* __VDSO_ALIGN_H */ | 
|---|
| 16 |  | 
|---|