diff options
| author | Ingo Molnar <mingo@elte.hu> | 2009-03-30 23:53:32 +0200 | 
|---|---|---|
| committer | Ingo Molnar <mingo@elte.hu> | 2009-03-30 23:53:32 +0200 | 
| commit | 65fb0d23fcddd8697c871047b700c78817bdaa43 (patch) | |
| tree | 119e6e5f276622c4c862f6c9b6d795264ba1603a /arch/x86/kernel/process.c | |
| parent | 8c083f081d0014057901c68a0a3e0f8ca7ac8d23 (diff) | |
| parent | dfbbe89e197a77f2c8046a51c74e33e35f878080 (diff) | |
Merge branch 'linus' into cpumask-for-linus
Conflicts:
	arch/x86/kernel/cpu/common.c
Diffstat (limited to 'arch/x86/kernel/process.c')
| -rw-r--r-- | arch/x86/kernel/process.c | 5 | 
1 files changed, 3 insertions, 2 deletions
| diff --git a/arch/x86/kernel/process.c b/arch/x86/kernel/process.c index 78533a519d8f..25e28087a3ee 100644 --- a/arch/x86/kernel/process.c +++ b/arch/x86/kernel/process.c @@ -65,11 +65,11 @@ void exit_thread(void)  {  	struct task_struct *me = current;  	struct thread_struct *t = &me->thread; +	unsigned long *bp = t->io_bitmap_ptr; -	if (me->thread.io_bitmap_ptr) { +	if (bp) {  		struct tss_struct *tss = &per_cpu(init_tss, get_cpu()); -		kfree(t->io_bitmap_ptr);  		t->io_bitmap_ptr = NULL;  		clear_thread_flag(TIF_IO_BITMAP);  		/* @@ -78,6 +78,7 @@ void exit_thread(void)  		memset(tss->io_bitmap, 0xff, t->io_bitmap_max);  		t->io_bitmap_max = 0;  		put_cpu(); +		kfree(bp);  	}  	ds_exit_thread(current); | 
