1#include <linux/stddef.h> 2#include <linux/sched.h> 3#include <linux/elf.h> 4#include <linux/crypto.h> 5#include <asm/mman.h> 6 7#define DEFINE(sym, val) \ 8 asm volatile("\n->" #sym " %0 " #val : : "i" (val)) 9 10#define STR(x) #x 11#define DEFINE_STR(sym, val) asm volatile("\n->" #sym " " STR(val) " " #val: : ) 12 13#define BLANK() asm volatile("\n->" : : ) 14 15#define OFFSET(sym, str, mem) \ 16 DEFINE(sym, offsetof(struct str, mem)); 17 18void foo(void) 19{ 20#include <common-offsets.h> 21} 22