Re: Putrid Elevator Behavior 2.4.18/19

Jeff V. Merkey
2002-03-27T23:04:06Z

On Wed, Mar 27, 2002 at 08:03:25AM +0100, Jens Axboe wrote:
> On Tue, Mar 26 2002, Jeff V. Merkey wrote:
> > >
> > > That's good news.
> > >
> > > Are you still working on the A/B list patch? I'd imagine that it could make
> > > several problems easier to fix in the block layer.
> > >
> >
> > Yes. I am asking Darren Major, who wrote the A/B implementation
> > in NetWare to review the patch before we submit it. It may affect
> > some drivers. We are verifying that the change I instrumented
> > will not break anything.
>
> I'm curious how you are doing this cleanly in 2.4. There are lots of
> places in the kernel that do direct list management on the queue_head.
> Are you adding two separate hidden lists and splicing content to the
> queue_head?

Correct. I am still reviewing drivers and kernel code to ascertain
whether I am not leaving any holes. I have spliced it as a non-obtrusive
implementation that preserves the existing code with no changes.

Some of the drivers may have problems if they cache the head address
of the current list.

>
> 2.5 has this done much more cleanly (of course I'm very biased). See the
> deadline I/O scheduler patch I've posted before, stuff like this can be
> done a lot cleaner there. Internal I/O scheduler structures are
> completely hidden from drivers.
>

2.5 would be nice, but 2.4.X needs it too and this is the kernel we are
using for our development and testing, so we will need it there.

Jeff