diff options
author | Markus Metzger <markus.t.metzger@intel.com> | 2009-04-03 10:43:46 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-04-07 07:36:28 -0400 |
commit | 2311f0de21c17b2a8b960677a9cccfbfa52beb35 (patch) | |
tree | bd1f12da337e4f88675f43e71fe6e06016fbc76c /arch/x86/include/asm/ds.h | |
parent | 3a68eef945b234f286406d96dc690fe17863c203 (diff) |
x86, ds: add leakage warning
Add a warning in case a debug store context is not removed before
the task it is attached to is freed.
Remove the old warning at thread exit. It is too early.
Declare the debug store context field in thread_struct unconditionally.
Remove ds_copy_thread() and ds_exit_thread() and do the work directly
in process*.c.
Signed-off-by: Markus Metzger <markus.t.metzger@intel.com>
Cc: roland@redhat.com
Cc: eranian@googlemail.com
Cc: oleg@redhat.com
Cc: juan.villacis@intel.com
Cc: ak@linux.jf.intel.com
LKML-Reference: <20090403144601.254472000@intel.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/include/asm/ds.h')
-rw-r--r-- | arch/x86/include/asm/ds.h | 9 |
1 files changed, 0 insertions, 9 deletions
diff --git a/arch/x86/include/asm/ds.h b/arch/x86/include/asm/ds.h index 413e127e567..149e5208e96 100644 --- a/arch/x86/include/asm/ds.h +++ b/arch/x86/include/asm/ds.h | |||
@@ -285,21 +285,12 @@ extern void __cpuinit ds_init_intel(struct cpuinfo_x86 *); | |||
285 | */ | 285 | */ |
286 | extern void ds_switch_to(struct task_struct *prev, struct task_struct *next); | 286 | extern void ds_switch_to(struct task_struct *prev, struct task_struct *next); |
287 | 287 | ||
288 | /* | ||
289 | * Task clone/init and cleanup work | ||
290 | */ | ||
291 | extern void ds_copy_thread(struct task_struct *tsk, struct task_struct *father); | ||
292 | extern void ds_exit_thread(struct task_struct *tsk); | ||
293 | |||
294 | #else /* CONFIG_X86_DS */ | 288 | #else /* CONFIG_X86_DS */ |
295 | 289 | ||
296 | struct cpuinfo_x86; | 290 | struct cpuinfo_x86; |
297 | static inline void __cpuinit ds_init_intel(struct cpuinfo_x86 *ignored) {} | 291 | static inline void __cpuinit ds_init_intel(struct cpuinfo_x86 *ignored) {} |
298 | static inline void ds_switch_to(struct task_struct *prev, | 292 | static inline void ds_switch_to(struct task_struct *prev, |
299 | struct task_struct *next) {} | 293 | struct task_struct *next) {} |
300 | static inline void ds_copy_thread(struct task_struct *tsk, | ||
301 | struct task_struct *father) {} | ||
302 | static inline void ds_exit_thread(struct task_struct *tsk) {} | ||
303 | 294 | ||
304 | #endif /* CONFIG_X86_DS */ | 295 | #endif /* CONFIG_X86_DS */ |
305 | #endif /* _ASM_X86_DS_H */ | 296 | #endif /* _ASM_X86_DS_H */ |