From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752909Ab2B0JUr (ORCPT ); Mon, 27 Feb 2012 04:20:47 -0500 Received: from out5-smtp.messagingengine.com ([66.111.4.29]:39716 "EHLO out5-smtp.messagingengine.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751621Ab2B0JUp (ORCPT ); Mon, 27 Feb 2012 04:20:45 -0500 X-Sasl-enc: q77jollxcHvxjSNNWq0HSVnamOTmHbTYUlE8/WO/6Js3qIA8b8WdcuK4Rw 1330334444 Message-ID: <1330334440.2490.40.camel@perseus.themaw.net> Subject: Re: [PATCH] autofs4: fix compilation without CONFIG_COMPAT From: Ian Kent To: Christian Borntraeger Cc: Linus Torvalds , Andreas Schwab , David Miller , linux-kernel@vger.kernel.org, "H. Peter Anvin" , autofs@vger.kernel.org, Thomas Meyer , Al Viro , Heiko Carstens , Martin Schwidefsky Date: Mon, 27 Feb 2012 17:20:40 +0800 In-Reply-To: <4F4B30D5.6050305@de.ibm.com> References: <20120221.221609.218135609185671883.davem@davemloft.net> <1329889428.2193.45.camel@perseus.themaw.net> <1329890027.2193.48.camel@perseus.themaw.net> <1329890251.2193.50.camel@perseus.themaw.net> <4F4B30D5.6050305@de.ibm.com> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.2.3 (3.2.3-1.fc16) Content-Transfer-Encoding: 7bit Mime-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, 2012-02-27 at 08:29 +0100, Christian Borntraeger wrote: > On 26/02/12 02:31, Linus Torvalds wrote: > > > > +#else > > + > > +#define is_compat_task() (0) > > + > > Linus, > > this breaks 32bit builds of s390 (and maybe others), since several platforms already > define a is_compat_task. This macro then destroys the definition of the function > making It looks like s390 is the only arch that uses a #else (CONFIG_COMPAT) so maybe it is the only breakage. Perhaps using a function instead of a define in include/linux/compat.h and removing the else from arch/s390/include/asm/compat.h is the sensible thing to do here or maybe just removing the #else from arch/s390/include/asm/compat.h since it just returns 0 anyway? > > static inline int is_compat_task(void) > { > return 0; > } > > > into > > static inline int 0 > { > return 0; > } > > e.g. > > In file included from arch/s390/mm/fault.c:39:0: > /home/autobuild/BUILD/linux-3.3.0-rc5.00060.g203738e.49.x.20120227/arch/s390/include/asm/compat.h:177:38: error: macro "is_compat_task" passed 1 arguments, but takes just 0 > /home/autobuild/BUILD/linux-3.3.0-rc5.00060.g203738e.49.x.20120227/arch/s390/include/asm/compat.h:178:1: error: expected '=', ',', ';', 'asm' or '__attribute__' before '{' token > CC arch/s390/kernel/time.o > > > > > Christian >