Re: [PATCH] Significant performace improvements on reiserfs systems

Andrea Arcangeli
2001-09-20T22:38:01Z

On Thu, Sep 20, 2001 at 06:24:48PM -0400, Robert Love wrote:
> On Thu, 2001-09-20 at 17:11, Dieter Nützel wrote:
> > > I am putting together a conditional scheduling patch to fix some of the
> > > worst cases, for use in conjunction with the preemption patch, and this
> > > might be useful.
> >
> > The conditional_schedule() function hampered me from running it already.
>
> hrm, i didnt notice that conditional_schedule wasnt defined in that
> patch. you will need to do it, but do something more like
>
> if (current->need_resched && current->lock_depth == 0) {
> unlock_kernel();
> lock_kernel();
> }
>
> like Andrew wrote.

nitpicking: the above is fine but it isn't complete, it may work for
most cases but for a generic function it would be better implemented
similarly to release_kernel_lock_save/restore so you take care of
lock_depth > 0 too:

ftp://ftp.us.kernel.org/pub/linux/kernel/people/andrea/kernels/v2.2/2.2.20pre10aa1/72_copy-user-unlock-1

Andrea