All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC]cfq-iosched: fix a kbuild regression
@ 2010-03-16  2:56 Shaohua Li
  2010-03-17 13:30 ` Jens Axboe
  0 siblings, 1 reply; 6+ messages in thread
From: Shaohua Li @ 2010-03-16  2:56 UTC (permalink / raw)
  To: linux-kernel
  Cc: jens.axboe, czoccolo, vgoyal, jmoyer, guijianfeng, alex.shi, shaohua.li

Alex Shi reported a kbuild regression which is about 10% performance lost.
He bisected to this commit: 3dde36ddea3e07dd025c4c1ba47edec91606fec0.
The reason is cfqq_close() can't find close cooperator. If we store the seek
distance to the value before the commit like below, the regression fully goes
away. If this is too invasive, just changing the cfq_rq_close() for the
!for_preempt is ok too.

Reported-by: Alex Shi <alex.shi@intel.com>
Signed-off-by: Shaohua Li <shaohua.li@intel.com>

diff --git a/block/cfq-iosched.c b/block/cfq-iosched.c
index dee9d93..fcae456 100644
--- a/block/cfq-iosched.c
+++ b/block/cfq-iosched.c
@@ -46,7 +46,7 @@ static const int cfq_hist_divisor = 4;
 #define CFQ_HW_QUEUE_MIN	(5)
 #define CFQ_SERVICE_SHIFT       12
 
-#define CFQQ_SEEK_THR		(sector_t)(8 * 100)
+#define CFQQ_SEEK_THR		(sector_t)(8 * 1024)
 #define CFQQ_SECT_THR_NONROT	(sector_t)(2 * 32)
 #define CFQQ_SEEKY(cfqq)	(hweight32(cfqq->seek_history) > 32/8)
 

^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2010-03-19  7:57 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-03-16  2:56 [RFC]cfq-iosched: fix a kbuild regression Shaohua Li
2010-03-17 13:30 ` Jens Axboe
2010-03-17 18:24   ` Corrado Zoccolo
2010-03-18  1:05     ` Shaohua Li
2010-03-18 16:55       ` Corrado Zoccolo
2010-03-19  7:57       ` Jens Axboe

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.