4 ms·
> Mayne usermode processes shouldn't have uninterruptible I/O access. This isn't something userspace processes opt into. It's just how blocking read and write
by scottlamb 5y ago
> Mayne usermode processes shouldn't have uninterruptible I/O access.
This isn't something userspace processes opt into. It's just how blocking read and write syscalls on filesystems work [1]. If you ever hit a bad block, you may notice that threads that touch it through the fs just hang and you can't recover or kill them. This is how it's always been on Linux and other Unix systems. I of course absolutely hate this and am 100% behind you if you're suggesting changing it.
[1] With the exception of nfs if you set the "intr" mount option.
- neolog 5y agoThis also happens to mounted sshfs when the network goes down.
- phendrenad2 5y agoSo how do high-reliability Linux systems get around this? Find bad blocks before a process does? Or use non-blocking I/O? (How does Windows/VMS handle it, is another interesting question)
- monocasa 5y agoWindows NT is async at it's core, so it's handled more or less as Linux non-blocking I/O is, but across at least anything in the realm of the VFS rather being opt in by a FS implementation like Linux's non-blocking support.