>>>>> On Thu, 28 Apr 2005 18:06:53 +0200, "Kevin D. Kissell" <kevink@xxxxxxxx> said: kevink> The global variable thing was clearly not SMP safe - but then kevink> again, the 32-bit MIPS kernel we were working with wasn't SMP kevink> safe either, in those days. ;o) Also, IIRC, old FPU ownership management ("lazy fpu switch") was somewhat broken (or fragile at least) in those days. The current code is more robust (and simple, I suppose). kevink> But *if* - and it may not really (or no longer) be the case - kevink> there is an implicit assumption that some FCSR state is kevink> preserved on a context switch, it would be more correct to map kevink> the ieee754_csr symbol to a per-CPU variable than a per-thread kevink> variable. Thanks for your advise. I believe there is not a such assumption now. Any newly created process always start with CP1 disabled, and on the first CP1 unusable exception FCSR will be initialized to 0. --- Atsushi Nemoto