Write performance issue with cfi_cmdset_0001.c
jdub at us.ibm.com
Fri Oct 28 17:50:20 EDT 2005
On Fri, 2005-10-28 at 17:34 -0400, Nicolas Pitre wrote:
> On Fri, 28 Oct 2005, Josh Boyer wrote:
> > I'll preface this with a disclaimer that we saw this on 2.4, however the
> > same general issue still seems to be present in MTD CVS.
> For 2.6.x? Are you sure?
> In 2.6 there is no schedule_timeout() anywhere in the MTD code.
Yeah, nevermind. I forgot that cfi_udelay no longer does that. In our
kernel, cfi_udelay has:
Seems current CVS no longer does that in cfi_udelay.
> > For a fix, we added a conditional reschedule in the loop that calls
> > do_write_buffer in the cfi_intelext_write_buffers function. This made
> > write times of 256KiB go from 20-50 seconds to 1-6 seconds on average.
> I still can't figure out the linear sequence of events that can lead to
> the behavior you're seeing.
> Mind re-doing your explanation in pseudocode-like form to help my poor
> brain please?
I could if you'd like, but since I just realized the code doesn't have
the problem it's probably not worth it. Sorry for the false alarm.
More information about the linux-mtd