From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id ; Sat, 28 Sep 2002 00:42:15 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id ; Sat, 28 Sep 2002 00:40:34 -0400 Received: from ns.commfireservices.com ([216.6.9.162]:46862 "HELO hemi.commfireservices.com") by vger.kernel.org with SMTP id ; Sat, 28 Sep 2002 00:31:16 -0400 Date: Sat, 28 Sep 2002 00:35:30 -0400 (EDT) From: Zwane Mwaikambo X-X-Sender: zwane@montezuma.mastecende.com To: Dipankar Sarma Cc: William Lee Irwin III , Andrew Morton , lkml , "linux-mm@kvack.org" Subject: Re: 2.5.38-mm3 In-Reply-To: <20020927152833.D25021@in.ibm.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org On Fri, 27 Sep 2002, Dipankar Sarma wrote: > The counts are off by one. > > With a UP kernel, I see that fget() cost is negligible. > So it is most likely the atomic operations for rwlock acquisition/release > in fget() that is adding to its cost. Unless of course my sampling > is too less. Mine is a UP box not an SMP kernel, although preempt is enabled; 0xc013d370 : push %ebx 0xc013d371 : mov %eax,%ecx 0xc013d373 : mov $0xffffe000,%edx 0xc013d378 : and %esp,%edx 0xc013d37a : incl 0x4(%edx) 0xc013d37d : xor %ebx,%ebx 0xc013d37f : mov 0x554(%edx),%eax 0xc013d385 : cmp 0x8(%eax),%ecx 0xc013d388 : jae 0xc013d390 0xc013d38a : mov 0x14(%eax),%eax 0xc013d38d : mov (%eax,%ecx,4),%ebx 0xc013d390 : test %ebx,%ebx 0xc013d392 : je 0xc013d397 0xc013d394 : incl 0x14(%ebx) 0xc013d397 : decl 0x4(%edx) 0xc013d39a : mov 0x14(%edx),%eax 0xc013d39d : cmp %eax,0x4(%edx) 0xc013d3a0 : jge 0xc013d3a7 0xc013d3a2 : call 0xc01179b0 0xc013d3a7 : mov %ebx,%eax 0xc013d3a9 : pop %ebx 0xc013d3aa : ret 0xc013d3ab : nop 0xc013d3ac : lea 0x0(%esi,1),%esi > Please try running the files_struct_rcu patch where fget() is lockfree > and let me know what you see. Lock acquisition/release should be painless on this system no? Zwane -- function.linuxpower.ca