Re: [PATCH 2/2] NBD: allow hung network I/O to be cancelled

From: Paul Clements
Date: Fri Aug 24 2007 - 15:09:27 EST


Mike Snitzer wrote:
On 8/24/07, Paul Clements <paul.clements@xxxxxxxxxxxx> wrote:
This patch allows NBD I/O to be cancelled when a network outage occurs.
Previously, I/O would just hang, and if enough I/O was hung in nbd, the
system (at least user-level) would completely hang until a TCP timeout
(default, 15 minutes) occurred.

The patch introduces a new ioctl NBD_SET_TIMEOUT that allows a transmit
timeout value (in seconds) to be specified. Any network send that
exceeds the timeout will be cancelled and the nbd connection will be
shut down. I've tested with various timeout values and 6 seconds seems
to be a good choice for the timeout. If the NBD_SET_TIMEOUT ioctl is not
called, you get the old (I/O hang) behavior.

Hi Paul,

Thanks for implementing this! Do you happen to have an associated
nbd-client patch for userspace? If not I'd be happy to coordinate
with you and Wouter on a patch.

No, I don't. I just basically hardcoded my nbd-client to do a 6 second timeout by default, but Wouter will probably want to do something a little less hackish for the official nbd-client.

--
Paul
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/