Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933906Ab2EWTPV (ORCPT ); Wed, 23 May 2012 15:15:21 -0400 Received: from caramon.arm.linux.org.uk ([78.32.30.218]:48850 "EHLO caramon.arm.linux.org.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933028Ab2EWTPT (ORCPT ); Wed, 23 May 2012 15:15:19 -0400 Date: Wed, 23 May 2012 20:14:39 +0100 From: Russell King - ARM Linux To: Will Drewry Cc: wade_farnsworth@mentor.com, stevenrwalter@gmail.com, will.deacon@arm.com, Alexander Viro , Olof Johansson , LKML Subject: Re: New ARM asm/syscall.h incompatible? (commit bf2c9f9866928df60157bc4f1ab39f93a32c754e) Message-ID: <20120523191439.GC6908@n2100.arm.linux.org.uk> References: <20120523185610.GB6908@n2100.arm.linux.org.uk> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.19 (2009-01-05) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1140 Lines: 21 On Wed, May 23, 2012 at 02:04:20PM -0500, Will Drewry wrote: > I'm still curious if it wouldn't make more sense to handle the > sys_syscall special case prior to any cross-arch (slowpath) code > involvement rather than truncating the 7th parameter making > sys_syscall a second class citizen for those cross-arch paths. It would mean making sys_syscall an explicit special case in the fast path of syscall entry, which we really don't want to do. It _is_ a standard syscall, it just happens to have 7 arguments which are rewritten back to what the syscall actually expects. As I say, the alternative would be to explicitly test for the syscall number in the fast path of system call entry and branch away to deal with it. Adding unnecessary instructions to this fast path for such a special case when there's already a perfectly reasonable alternative solution doesn't fill me with any joy. -- 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/