Low-level support for setting timeouts on I/O operations