Re: [PATCH] Re: Shared memory shmat/dt not working well in 2.5.x

Duncan Sands
2002-10-08T15:20:36Z

> > Hmmm, are you using ext3? Changes to the meaning of yield sometimes
> > make fsync go very slowly. This problem has been around since 2.5.28,
> > and hasn't yet been fixed (As for a fix, Andrew Morton said "I'll sit
> > tight for the while, see where shed_yield() behaviour ends up").
>
> Yes, it's an ext3 partition, ordered mode. I don't have ext2 compiled
> into kernel anymore. :)
>
> Hm, if it's a problem with fsync() then that could explain slight
> Oracle slowdown, too, as I think that Oracle is a heavy user of
> fsync. But I don't know that for sure. I'll investigate further..

Andrew Morton made this suggestion to me:

>Please try replacing the yield() in fs/jbd/transaction.c
>with
>
> set_current_state(TASK_RUNNING);
> schedule();

and indeed it cured my problems.

All the best,

Duncan.