Re: [Nbd] [PATCH 2/2] NBD: allow hung network I/O to be cancelled
- To: Mike Snitzer <snitzer@...17...>
- Cc: nbd-general@lists.sourceforge.net, Paul Clements <paul.clements@...124...>
- Subject: Re: [Nbd] [PATCH 2/2] NBD: allow hung network I/O to be cancelled
- From: Wouter Verhelst <w@...112...>
- Date: Fri, 24 Aug 2007 23:49:48 +0200
- Message-id: <20070824214948.GA8247@...39...>
- In-reply-to: <170fa0d20708241113y31d2ba95xf30c83c7c4c98cd2@...18...>
- References: <46CF101F.4050603@...124...> <46CF1826.9050101@...124...> <170fa0d20708241113y31d2ba95xf30c83c7c4c98cd2@...18...>
On Fri, Aug 24, 2007 at 02:13:27PM -0400, Mike Snitzer wrote:
> On 8/24/07, Paul Clements <paul.clements@...124...> 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.
An ioctl isn't that hard ;)
I just committed a patch to the 2.9 branch that should theoretically
work. Since I don't have a kernel with that patch (yet), I didn't test
it, but it's pretty trivial.
Perhaps we might want to revisit how nbd-client parses it command line
some day, but this should work for now.
--
<Lo-lan-do> Home is where you have to wash the dishes.
-- #debian-devel, Freenode, 2004-09-22
Reply to: