userspace markers initial code
[lttv.git] / markers-userspace / kernel-api.h
CommitLineData
99c5a086 1/*
2 * Kernel API extracted from Linux kernel headers.
3 */
4
5#ifndef __KERNEL_API
6#define __KERNEL_API
7
8#define DECLARE_IMV(type, name) extern __typeof__(type) name##__imv
9#define DEFINE_IMV(type, name) __typeof__(type) name##__imv
10
11#define likely(x) __builtin_expect(!!(x), 1)
12#define unlikely(x) __builtin_expect(!!(x), 0)
13
14/**
15 * imv_read - read immediate variable
16 * @name: immediate value name
17 *
18 * Reads the value of @name.
19 */
20#define imv_read(name) _imv_read(name)
21
22/**
23 * _imv_read - Read immediate value with standard memory load.
24 * @name: immediate value name
25 *
26 * Force a data read of the immediate value instead of the immediate value
27 * based mechanism. Useful for __init and __exit section data read.
28 */
29#define _imv_read(name) (name##__imv)
30
31#endif
This page took 0.022217 seconds and 4 git commands to generate.