From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-out.m-online.net (mail-out.m-online.net [212.18.0.9]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id BFACF2C008B for ; Thu, 2 Aug 2012 08:19:40 +1000 (EST) From: Andreas Schwab To: Jiri Kosina Subject: Re: [PATCH] powerpc: fix personality handling in ppc64_personality() References: Date: Thu, 02 Aug 2012 00:19:27 +0200 In-Reply-To: (Jiri Kosina's message of "Wed, 1 Aug 2012 22:03:42 +0200 (CEST)") Message-ID: MIME-Version: 1.0 Content-Type: text/plain Cc: Paul Mackerras , linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Jiri Kosina writes: > if (personality(current->personality) == PER_LINUX32 > - && personality == PER_LINUX) > - personality = PER_LINUX32; > + && personality(personality) == PER_LINUX) > + personality &= ~PER_LINUX | PER_LINUX32; That doesn't work. ~PER_LINUX is -1, so this is a no-op. > ret = sys_personality(personality); > - if (ret == PER_LINUX32) > - ret = PER_LINUX; > + if (personality(ret) == PER_LINUX32) > + ret &= ~PER_LINUX32 | PER_LINUX; That only "works" because PER_LINUX is 0. Andreas. -- Andreas Schwab, schwab@linux-m68k.org GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5 "And now for something completely different."