internal error: getMBlock: mmap: Bad file number
I cut and paste the code from http://blog.moertel.com/articles/2004/03/13/concurrent-port-scanner-in-haskell
And compiled the resulting portscan.hs with both ghc-6.8.2 and ghc-6.6.1 on a host with Sun-Sparc [SunOS 5.10].
The following error occurred when the code was invoked.
portscan a_remote_sun_sparc_machine 1 1000 portscan: internal error: getMBlock: mmap: Bad file number (GHC version 6.6.1 for sparc_sun_solaris2) Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug Abort
[ note: same result for 6.8.2 ]
[ note: if the remote machine is a linux machine, then the code works. ]