|
@@ -15,12 +15,16 @@
|
|
|
#include <asm/segment.h>
|
|
|
#include <asm/thread_info.h>
|
|
|
#include <asm/ia32.h>
|
|
|
+#include <asm/bootparam.h>
|
|
|
|
|
|
#define DEFINE(sym, val) \
|
|
|
asm volatile("\n->" #sym " %0 " #val : : "i" (val))
|
|
|
|
|
|
#define BLANK() asm volatile("\n->" : : )
|
|
|
|
|
|
+#define OFFSET(sym, str, mem) \
|
|
|
+ DEFINE(sym, offsetof(struct str, mem))
|
|
|
+
|
|
|
#define __NO_STUBS 1
|
|
|
#undef __SYSCALL
|
|
|
#undef _ASM_X86_64_UNISTD_H_
|
|
@@ -109,5 +113,11 @@ int main(void)
|
|
|
DEFINE(crypto_tfm_ctx_offset, offsetof(struct crypto_tfm, __crt_ctx));
|
|
|
BLANK();
|
|
|
DEFINE(__NR_syscall_max, sizeof(syscalls) - 1);
|
|
|
+
|
|
|
+ BLANK();
|
|
|
+ OFFSET(BP_scratch, boot_params, scratch);
|
|
|
+ OFFSET(BP_loadflags, boot_params, hdr.loadflags);
|
|
|
+ OFFSET(BP_hardware_subarch, boot_params, hdr.hardware_subarch);
|
|
|
+ OFFSET(BP_version, boot_params, hdr.version);
|
|
|
return 0;
|
|
|
}
|