#4391: forkIO threads do not properly save/restore the floating point 
environment
---------------------------------+------------------------------------------
    Reporter:  draconx           |        Owner:              
        Type:  bug               |       Status:  new         
    Priority:  normal            |    Milestone:  7.2.1       
   Component:  Runtime System    |      Version:  6.12.3      
    Keywords:                    |     Testcase:              
   Blockedby:                    |   Difficulty:              
          Os:  Unknown/Multiple  |     Blocking:              
Architecture:  x86_64 (amd64)    |      Failure:  None/Unknown
---------------------------------+------------------------------------------

Comment(by draconx):

 The thing is, it _does_ affect "ordinary" floating point operations.

 Ordinary floating point operations can raise exceptions, which will then
 leak
 to other threads.  Similarly, ordinary floating point operations depend on
 the
 rounding mode, which is leaked from other threads.

 For example, if any unbound thread anywhere in the program does something
 innocuous like a single floating point addition, then any attempt to
 handle
 exceptions elsewhere in the program is subject to races with that unbound
 thread.

-- 
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/4391#comment:5>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs

Reply via email to