Subject: mmc: core: complete/wait_for_completion performance

From: [email-masked] (Jörg Krause)
Date: Sun, 20 Nov 2016 20:10:34 +0100

On Sun, 2016-11-20 at 16:44 +0100, Stefan Wahren wrote:
> > J?rg Krause <[email-masked]> hat am 20. November 2016
> > um 15:42
> > geschrieben:
> > 
> > 
> > Hi Stefan,
> > 
> > On Sun, 2016-11-20 at 14:28 +0100, Stefan Wahren wrote:
> > > Hi J?rg,
> > > 
> > > > J?rg Krause <[email-masked]> hat am 20. November
> > > > 2016
> > > > um 13:27
> > > > geschrieben:
> > > > 
> > > > 
> > > > Hi,
> > > > 
> > > > I started the discussion on this mailing list in another thread
> > > > [1],
> > > > but I'd like to move it to a new thread, because it might be
> > > > mmc
> > > > specific.
> > > > 
> > > > The issue is that I am noticed low wifi network throughput on
> > > > an
> > > > i.MX28
> > > > board with the mainline kernel (v4.7.10, about 6 Mbps) compared
> > > > to
> > > > the
> > > > vendor kernel (Freescale v2.6.35.3, about 20 Mbps). The wifi
> > > > chip
> > > > is
> > > > attached using the SDIO interface.
> > > > 
> > > > I started investigation where the bottleneck in the mainline
> > > > kernel?might come from. Therefore I checked that the configs
> > > > and
> > > > settings for the interfaces and drivers are the same. They are.
> > > 
> > > so you're not using the mxs_defconfig settings anymore?
> > 
> > No, I changed the settings.
> > 
> 
> What happens to performance to if you change the following settings
> to the same
> like in mxs_defconfig?
> 
> CONFIG_PREEMPT_VOLUNTARY=y
> CONFIG_DEFAULT_IOSCHED="noop"

No much change at all. The time difference between complete() and
wait_for_complete() decreases in best case to 110 us, but also varies
to above 130 us.