:I know that various signal handlers used floating point and the issues
:reported fall into the category of "likely overwritten FPU state".
:
:Joerg
    
    Should we start saving and restoring the FP context?  The ucontext
    structure does have enough space reserved for it.  During the LWP
    work we expanded the FP save space to 512 bytes.

    Basically code would have to be added to sendsig() and sigreturn().

    sendsig():
        * Check if the FP is used by the process.  If not, nothing to do.
        * If it is, but it isn't active, copy the saved state to the ucontext
        * If it is, and it is currently active, save the current state tp the
          ucontext.
        * Set flags in ucontext appropriately to indicate that the FP state
          has been saved.

    sigreturn():
        * If ucontext has flagged that it holds FP state, restore the FP state
          from the ucontext.

                                        -Matt
                                        Matthew Dillon 
                                        <[EMAIL PROTECTED]>

Reply via email to