Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 983
b: refs/heads/master
c: a31769e
h: refs/heads/master
i:
  981: 8795a5e
  979: f89bd67
  975: 04c4ac8
v: v3
  • Loading branch information
Al Viro authored and Linus Torvalds committed May 5, 2005
1 parent 24730ea commit 3388b44
Show file tree
Hide file tree
Showing 5 changed files with 77 additions and 1 deletion.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 6bae32d395b532959703462c21248fbeb9894e95
refs/heads/master: a31769ed3ee82198fd530cb1d79ee9c7f8eeb1d1
13 changes: 13 additions & 0 deletions trunk/arch/um/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -174,6 +174,19 @@ $(ARCH_DIR)/user-offsets.h: $(ARCH_DIR)/user-offsets.s

CLEAN_FILES += $(ARCH_DIR)/user-offsets.s $(ARCH_DIR)/user-offsets.h

$(ARCH_DIR)/kernel-offsets.s: $(ARCH_DIR)/sys-$(SUBARCH)/kernel-offsets.c \
$(ARCH_SYMLINKS) \
$(SYS_DIR)/sc.h \
include/asm include/linux/version.h \
include/config/MARKER \
$(ARCH_DIR)/include/user_constants.h
$(CC) $(CFLAGS) $(NOSTDINC_FLAGS) $(CPPFLAGS) -S -o $@ $<

$(ARCH_DIR)/kernel-offsets.h: $(ARCH_DIR)/kernel-offsets.s
$(call filechk,gen-asm-offsets)

CLEAN_FILES += $(ARCH_DIR)/kernel-offsets.s $(ARCH_DIR)/kernel-offsets.h

$(ARCH_DIR)/include/task.h: $(ARCH_DIR)/util/mk_task
$(call filechk,gen_header)

Expand Down
14 changes: 14 additions & 0 deletions trunk/arch/um/include/common-offsets.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
/* for use by sys-$SUBARCH/kernel-offsets.c */

OFFSET(TASK_REGS, task_struct, thread.regs);
OFFSET(TASK_PID, task_struct, pid);
DEFINE(UM_KERN_PAGE_SIZE, PAGE_SIZE);
DEFINE(UM_NSEC_PER_SEC, NSEC_PER_SEC);
DEFINE_STR(UM_KERN_EMERG, KERN_EMERG);
DEFINE_STR(UM_KERN_ALERT, KERN_ALERT);
DEFINE_STR(UM_KERN_CRIT, KERN_CRIT);
DEFINE_STR(UM_KERN_ERR, KERN_ERR);
DEFINE_STR(UM_KERN_WARNING, KERN_WARNING);
DEFINE_STR(UM_KERN_NOTICE, KERN_NOTICE);
DEFINE_STR(UM_KERN_INFO, KERN_INFO);
DEFINE_STR(UM_KERN_DEBUG, KERN_DEBUG);
25 changes: 25 additions & 0 deletions trunk/arch/um/sys-i386/kernel-offsets.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
#include <linux/config.h>
#include <linux/stddef.h>
#include <linux/sched.h>
#include <linux/time.h>
#include <asm/page.h>

#define DEFINE(sym, val) \
asm volatile("\n->" #sym " %0 " #val : : "i" (val))

#define STR(x) #x
#define DEFINE_STR(sym, val) asm volatile("\n->" #sym " " STR(val) " " #val: : )

#define BLANK() asm volatile("\n->" : : )

#define OFFSET(sym, str, mem) \
DEFINE(sym, offsetof(struct str, mem));

void foo(void)
{
OFFSET(TASK_DEBUGREGS, task_struct, thread.arch.debugregs);
#ifdef CONFIG_MODE_TT
OFFSET(TASK_EXTERN_PID, task_struct, thread.mode.tt.extern_pid);
#endif
#include <common-offsets.h>
}
24 changes: 24 additions & 0 deletions trunk/arch/um/sys-x86_64/kernel-offsets.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
#include <linux/config.h>
#include <linux/stddef.h>
#include <linux/sched.h>
#include <linux/time.h>
#include <asm/page.h>

#define DEFINE(sym, val) \
asm volatile("\n->" #sym " %0 " #val : : "i" (val))

#define DEFINE_STR1(x) #x
#define DEFINE_STR(sym, val) asm volatile("\n->" #sym " " DEFINE_STR1(val) " " #val: : )

#define BLANK() asm volatile("\n->" : : )

#define OFFSET(sym, str, mem) \
DEFINE(sym, offsetof(struct str, mem));

void foo(void)
{
#ifdef CONFIG_MODE_TT
OFFSET(TASK_EXTERN_PID, task_struct, thread.mode.tt.extern_pid);
#endif
#include <common-offsets.h>
}

0 comments on commit 3388b44

Please sign in to comment.