[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: fpintr: FPU not belonging to anyone!
From: |
Igor Khavkine |
Subject: |
Re: fpintr: FPU not belonging to anyone! |
Date: |
Wed, 22 Aug 2001 00:37:03 -0400 |
User-agent: |
Mutt/1.3.20i |
On Tue, Aug 21, 2001 at 09:51:14PM -0400, Roland McGrath wrote:
> The point is that fpintr should not be happening in a state where fp_thread
> is null. That suggests that the FPU state switching might have failed to
> operate. Any FPU operation should generate the FPU not-present fault and
> get to fpnoextflt, which is what switches the thread's FPU state back into
> the hardware after a context switch. If this didn't happen, then it's
> possible that the current thread has been running for a while and using the
> FPU (before it generated the interrupt that got to fpintr) but never had
> its proper PFU state swapped in before it started using the FPU.
Ok, I see the situation more clearly now. The FPU not-present fault
occurs every time a thread that has not yet used the FPU executes
an ESC or WAIT instruction. I've checked that under normal
circumstances fp_thread is initialized properly, and then cleared
when the thread is swapped out.
Marcus, can you provide a test-case? If so I can try to debug
what's actually going on in the kernel.
Igor