File: kernel.h

package info (click to toggle)
tarantool 2.6.0-1.2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 85,396 kB
  • sloc: ansic: 513,775; cpp: 69,493; sh: 25,650; python: 19,190; perl: 14,973; makefile: 4,176; yacc: 1,329; sql: 1,074; pascal: 620; ruby: 190; awk: 18; lisp: 7
file content (16 lines) | stat: -rw-r--r-- 690 bytes parent folder | download | duplicates (9)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#ifndef LINUX_KERNEL_H_
#define LINUX_KERNEL_H_

#define ALIGN(x, a) ({                                                         \
    typeof(x) const __xe = (x);                                                \
    typeof(a) const __ae = (a);                                                \
    typeof(a) const __m = __ae - 1;                                            \
    typeof(x) const __r = __xe & __m;                                          \
    __xe + (__r ? (__ae - __r) : 0);                                           \
  })

#define PTR_ALIGN(p, a) (typeof(p))ALIGN((unsigned long long)(p), (a))

#define current Something that doesn't compile :)

#endif // LINUX_KERNEL_H_