[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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



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: