Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S262670AbVDHDki (ORCPT ); Thu, 7 Apr 2005 23:40:38 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S262669AbVDHDki (ORCPT ); Thu, 7 Apr 2005 23:40:38 -0400 Received: from bay-bridge.veritas.com ([143.127.3.10]:48891 "EHLO MTVMIME03.enterprise.veritas.com") by vger.kernel.org with ESMTP id S262670AbVDHDkQ (ORCPT ); Thu, 7 Apr 2005 23:40:16 -0400 Date: Fri, 8 Apr 2005 04:40:18 +0100 (BST) From: Hugh Dickins X-X-Sender: hugh@goblin.wat.veritas.com To: Nick Piggin cc: David Howells , Andrew Morton , Russell King , linux-kernel@vger.kernel.org Subject: Re: [PATCH 2/6] freepgt2: sys_mincore ignore FIRST_USER_PGD_NR In-Reply-To: <42554448.6080809@yahoo.com.au> Message-ID: References: <19283.1112868864@redhat.com> <42554448.6080809@yahoo.com.au> 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 Content-Length: 1574 Lines: 38 On Fri, 8 Apr 2005, Nick Piggin wrote: > David Howells wrote: > > Hugh Dickins wrote: > > > > > Remove use of FIRST_USER_PGD_NR from sys_mincore: it's inconsistent > > > (no > > > other syscall refers to it), unnecessary (sys_mincore loops over vmas > > > further down) and incorrect (misses user addresses in ARM's first > > > pgd). > > > > You should make it use FIRST_USER_ADDRESS instead. This check allows NULL > > pointers and suchlike to be weeded out before having to take the > > semaphore. > > I'm not sure whether it is worth keeping the singular special > case here to slightly speed up what would probably be a bug in > a userspace program. Well put - though you're more diffident about it than I would be! Furthermore, it only allows NULL pointers and suchlike to be weeded out on the ARM (and ARM26) architecture, no other. I'm not averse to optimizing ARM and ARM26, but it's much too insignificant an optimization to warrant reference to such an architectural detail. And it breaks the (peculiar) sys_mincore convention of doing all the work while returning -ENOMEM, if there were any holes in the address range. David's check stops it from doing any work in that case. FIRST_USER_ADDRESS should be used in the very few places it is necessary, and not spread around beyond them. Hugh - 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/