Patchworkβ kernel building regression on 32-rc5 kernel

login
register
about
Submitter Jens Axboe
Date 2009-11-03 18:32:36
Message ID <20091103183235.GD8742@kernel.dk>
Download mbox | patch
Permalink /patch/57350/
State New
Headers show

Comments

Jens Axboe - 2009-11-03 18:32:36
On Tue, Nov 03 2009, Shi, Alex wrote:
> I found the kernel building will have about 20%~ 30% regressions on
> our NHM machines. My kernel build do the following things 15 times:
> 
> make mrproper; echo \"3\">/proc/sys/vm/drop_caches; make defconfig;
> make -j${2timescpunumbers}
> 
> 
> 
> Bisect found it is due to the commitment:
> 
> commit a6151c3a5c8e1ff5a28450bc8d6a99a2a0add0a7

I looked over that commit and found one typo, can you check with this
patch applied?
alex.shi - 2009-11-04 01:21:30
Yes, the performance recovered with this patch on 32-rc6 kernel. 


On Wed, 2009-11-04 at 02:32 +0800, Jens Axboe wrote:
> On Tue, Nov 03 2009, Shi, Alex wrote:
> > I found the kernel building will have about 20%~ 30% regressions on
> > our NHM machines. My kernel build do the following things 15 times:
> > 
> > make mrproper; echo \"3\">/proc/sys/vm/drop_caches; make defconfig;
> > make -j${2timescpunumbers}
> > 
> > 
> > 
> > Bisect found it is due to the commitment:
> > 
> > commit a6151c3a5c8e1ff5a28450bc8d6a99a2a0add0a7
> 
> I looked over that commit and found one typo, can you check with this
> patch applied?
> 
> diff --git a/block/cfq-iosched.c b/block/cfq-iosched.c
> index 069a610..5802e32 100644
> --- a/block/cfq-iosched.c
> +++ b/block/cfq-iosched.c
> @@ -2051,7 +2051,7 @@ cfq_should_preempt(struct cfq_data *cfqd, struct cfq_queue *new_cfqq,
>  	 * it's a metadata request and the current queue is doing regular IO.
>  	 */
>  	if (rq_is_meta(rq) && !cfqq->meta_pending)
> -		return false;
> +		return true;
>  
>  	/*
>  	 * Allow an RT request to pre-empt an ongoing non-RT cfqq timeslice.
> 

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/
Jens Axboe - 2009-11-04 07:40:48
On Wed, Nov 04 2009, Alex Shi wrote:
> On Wed, 2009-11-04 at 02:32 +0800, Jens Axboe wrote:
> > On Tue, Nov 03 2009, Shi, Alex wrote:
> > > I found the kernel building will have about 20%~ 30% regressions on
> > > our NHM machines. My kernel build do the following things 15 times:
> > > 
> > > make mrproper; echo \"3\">/proc/sys/vm/drop_caches; make defconfig;
> > > make -j${2timescpunumbers}
> > > 
> > > 
> > > 
> > > Bisect found it is due to the commitment:
> > > 
> > > commit a6151c3a5c8e1ff5a28450bc8d6a99a2a0add0a7
> > 
> > I looked over that commit and found one typo, can you check with this
> > patch applied?
> > 
> > diff --git a/block/cfq-iosched.c b/block/cfq-iosched.c
> > index 069a610..5802e32 100644
> > --- a/block/cfq-iosched.c
> > +++ b/block/cfq-iosched.c
> > @@ -2051,7 +2051,7 @@ cfq_should_preempt(struct cfq_data *cfqd, struct cfq_queue *new_cfqq,
> >  	 * it's a metadata request and the current queue is doing regular IO.
> >  	 */
> >  	if (rq_is_meta(rq) && !cfqq->meta_pending)
> > -		return false;
> > +		return true;
> >  
> >  	/*
> >  	 * Allow an RT request to pre-empt an ongoing non-RT cfqq timeslice.
>
> Yes, the performance recovered with this patch on 32-rc6 kernel. 

Great! The patch just missed -rc6, as I had already queued it up and
asked for a pull. It's in current -git. Thanks a lot for reporting!

Patch

diff --git a/block/cfq-iosched.c b/block/cfq-iosched.c
index 069a610..5802e32 100644
--- a/block/cfq-iosched.c
+++ b/block/cfq-iosched.c
@@ -2051,7 +2051,7 @@  cfq_should_preempt(struct cfq_data *cfqd, struct cfq_queue *new_cfqq,
 	 * it's a metadata request and the current queue is doing regular IO.
 	 */
 	if (rq_is_meta(rq) && !cfqq->meta_pending)
-		return false;
+		return true;
 
 	/*
 	 * Allow an RT request to pre-empt an ongoing non-RT cfqq timeslice.