From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matthew Wilcox Subject: Re: AIM7 40% regression with 2.6.26-rc1 Date: Wed, 7 May 2008 10:38:12 -0600 Message-ID: <20080507163811.GY19219@parisc-linux.org> References: <1210052904.3453.30.camel@ymzhang> <20080506114449.GC32591@elte.hu> <20080506120934.GH19219@parisc-linux.org> <20080506162332.GI19219@parisc-linux.org> <20080506102153.5484c6ac.akpm@linux-foundation.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Ingo Molnar , "J. Bruce Fields" , "Zhang, Yanmin" , LKML , Alexander Viro , Linus Torvalds , linux-fsdevel@vger.kernel.org To: Andrew Morton Return-path: Received: from palinux.external.hp.com ([192.25.206.14]:46438 "EHLO mail.parisc-linux.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751975AbYEGQi3 (ORCPT ); Wed, 7 May 2008 12:38:29 -0400 Content-Disposition: inline In-Reply-To: <20080506102153.5484c6ac.akpm@linux-foundation.org> Sender: linux-fsdevel-owner@vger.kernel.org List-ID: On Tue, May 06, 2008 at 10:21:53AM -0700, Andrew Morton wrote: > up() seems to be doing wake-one, FIFO which is nice. Did the > implementation which we just removed also do that? Was it perhaps > accidentally doing LIFO or something like that? If heavily contended, it could do this. up() would increment sem->count and cal __up() which would call wake_up() down() would decrement sem->count. The unlucky task woken by __up would lose the race and go back to sleep. -- Intel are signing my paycheques ... these opinions are still mine "Bill, look, we understand that you're interested in selling us this operating system, but compare it to ours. We can't possibly take such a retrograde step."