On Sun, Nov 23, 2014 at 9:53 PM, Simon Marlow <marlowsd@gmail.com> wrote:
- cleanup that might block in an unkillable way

This does make me wonder... while the example I am going to use is somewhat obsolete, it's an extreme example of something that can still happen.

Somewhat infamously, if you do not use a no-rewind device, close() blocks unkillably in the kernel until the tape is rewound. What happens if this occurs during finalization in the garbage collector?

--
brandon s allbery kf8nh                               sine nomine associates
allbery.b@gmail.com                                  ballbery@sinenomine.net
unix, openafs, kerberos, infrastructure, xmonad        http://sinenomine.net