Messages in this thread | | | Date | Wed, 9 May 2012 22:30:47 +0200 | From | Oleg Nesterov <> | Subject | Re: [PATCH 2/3] x86, xsave: remove thread_has_fpu() bug check in __sanitize_i387_state() |
| |
Hi Suresh,
I can't really comment this series, my understanding of this code is too limited.
But could you explain this patch? I am just curious.
On 05/08, Suresh Siddha wrote: > > BUG_ON() in __sanitize_i387_state() is checking that the fpu state > is not live any more. But for preempt kernels, task can be scheduled > out and in at any place and the preload_fpu logic during context switch > can make the fpu registers live again.
And? Do you see any particular scenario when this BUG_ON() is wrong?
Afaics, __sanitize_i387_state() should not be called if the task can be scheduled in with ->fpu_counter != 0.
> Similarly during core dump, thread dumping the core can schedule out > and in for page-allocations etc in non-preempt case.
Again, can't understand. The core-dumping thread does init_fpu() before it calls sanitize_i387_state().
Oleg.
| |