Re: [PATCH] Re: [bug] infinite loop in generic_make_request()

2000-11-30 Thread Andrea Arcangeli
On Thu, Nov 30, 2000 at 02:54:19PM -0700, Andreas Dilger wrote: > Andrea writes: > > On Thu, Nov 30, 2000 at 01:05:53PM -0700, Andreas Dilger wrote: > > > the RAID and LVM make_request functions should be changed to do that > > > instead (i.e. 0 on success, -ve on error, and maybe "1" if they do t

Re: [PATCH] Re: [bug] infinite loop in generic_make_request()

2000-11-30 Thread Andreas Dilger
Andrea writes: > On Thu, Nov 30, 2000 at 01:05:53PM -0700, Andreas Dilger wrote: > > the RAID and LVM make_request functions should be changed to do that > > instead (i.e. 0 on success, -ve on error, and maybe "1" if they do their > > own recursion to break the loop)? > > We preferred to let the

Re: [PATCH] Re: [bug] infinite loop in generic_make_request()

2000-11-30 Thread Andrea Arcangeli
On Thu, Nov 30, 2000 at 01:05:53PM -0700, Andreas Dilger wrote: > the RAID and LVM make_request functions should be changed to do that > instead (i.e. 0 on success, -ve on error, and maybe "1" if they do their > own recursion to break the loop)? We preferred to let the lowlevel drivers to handle

Re: [PATCH] Re: [bug] infinite loop in generic_make_request()

2000-11-30 Thread Andreas Dilger
Neil Brown write: > On Thursday November 30, [EMAIL PROTECTED] wrote: > > in generic_make_request(), the following code handles stacking: > > > > do { > >q = blk_get_queue(bh->b_rdev); > >if (!q) { > > printk(...) > > buffer_IO_error

[PATCH] Re: [bug] infinite loop in generic_make_request()

2000-11-30 Thread Neil Brown
On Thursday November 30, [EMAIL PROTECTED] wrote: > [cc'ed to maintainers of md and lvm] > > hi, > in generic_make_request(), the following code handles stacking: > > do { >q = blk_get_queue(bh->b_rdev); >if (!q) { > printk(...) > b

[bug] infinite loop in generic_make_request()

2000-11-29 Thread V Ganesh
[cc'ed to maintainers of md and lvm] hi, in generic_make_request(), the following code handles stacking: do { q = blk_get_queue(bh->b_rdev); if (!q) { printk(...) buffer_IO_error(bh); break; } } while (q