Often the main reason for sleeping in uninterruptible state during these
periods is because the difficulty of performing a sane cleanup exceeds the
boredom threshold of the programmer. There are plenty of places where
TASK_UNINTERRUPTIBLE is used just because people have been lazy.
I'm guilty of it too - I use TASK_UNINTERRUPTIBLE for anything which can be
called from jffs2_read_inode() because I was too lazy to chase through a
mechanism by which ->read_inode() may return -ERESTARTSYS without creating a
permanent bad inode. But we're working on it, and this should get fixed in
2.5.
-- dwmw2
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/