the saving isnt the problem. the kernel already flushes the fp registers
to the process fpsave area on notify. its just that we do *not* copy
the registers to the user stack, but save them in the process fpsave
area.

as theres just just one fpsave area in the process, and not one for
notes and one for normal code, note handler is forbitten to use fp again.

its not for the sake of movou. its for the sake of the process interrupted
by the note.

say, you have a programm that gets just interrupted by note while in
that omgoptimized sse memmove() where it just loaded some chunks into
XMM0 register, and then the note fires.

then the note handler does memmove itself modifying XMM0 itself loading
it with something completely different. then note handler finishes
continuing the original programm, then XMM0 would contain the garbage
from the note handler! it would look for the program like if registers
randomly change under it!

--
cinap

Reply via email to