Hello,

it occurred to me that as far as userland is concerned, the FPU/SEE
thread state only consists of i386_fp_save & i386_fp_regs, and
userland simply uses frstor to restore it when sigreturning. It seems
that gnumach has grown better support for the fancier SSE registers in
its internal state tracking (i386_fpsave_state / i386_xfp_save), but
this doesn't seem to be exported to userland.

I don't know much about SSE and those registers and fxsave/fxrstor and
xsave/xrstor, but it seems clear enough that this will result in
string operations breaking after a thread receives a signal (assuming
gnumach does things correctly -- otherwise, after any context switch).

Let's do something about this.

Sergey

Reply via email to