From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756110AbcI0Ry4 (ORCPT ); Tue, 27 Sep 2016 13:54:56 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:58652 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753345AbcI0Rys (ORCPT ); Tue, 27 Sep 2016 13:54:48 -0400 From: Akshay Adiga To: Michael Ellerman , linux-kernel@vger.kernel.org, linuxppc-dev@lists.ozlabs.org Cc: anton@samba.org Subject: Re: [PATCH] Work around for enabling CONFIG_CMDLINE on ppc64le References: <1474525245-10739-1-git-send-email-akshay.adiga@linux.vnet.ibm.com> <87d1jw8cba.fsf@concordia.ellerman.id.au> <57E4AC5C.5010803@linux.vnet.ibm.com> Date: Tue, 27 Sep 2016 23:24:34 +0530 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.6.0 MIME-Version: 1.0 In-Reply-To: <57E4AC5C.5010803@linux.vnet.ibm.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-TM-AS-MML: disable X-Content-Scanned: Fidelis XPS MAILER x-cbid: 16092717-0052-0000-0000-0000030E8A6F X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 16092717-0053-0000-0000-00000EF53366 Message-Id: <57EAB25A.3040802@linux.vnet.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:,, definitions=2016-09-27_08:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 suspectscore=0 malwarescore=0 phishscore=0 adultscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1609020000 definitions=main-1609270322 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Michael, Here is the link to the bug raised on launchpad. https://bugs.launchpad.net/ubuntu/+source/gcc-5/+bug/1628207 On 09/23/2016 09:45 AM, Akshay Adiga wrote: > Hi Michael, > > Anton found this bug and raised it against gcc v7.0 and a fix is > available > in upstream gcc. > > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71709 > > Currently, gcc v5.4.0 and v6.1.1 shipped with Ubuntu 16.04 and 16.10 > respectively, > are hitting this problem. > > I have also raised bug against Ubuntu for fixing gcc for 16.04. > > https://bugzilla.linux.ibm.com/show_bug.cgi?id=146668 > > > On 09/22/2016 03:51 PM, Michael Ellerman wrote: >> Akshay Adiga writes: >> >>> Observed that boot arguments (passed as CONFIG_CMDLINE) are not being >>> picked up by kernel while using gcc-ppc64-linux-gnu v5.4.0 and v6.1.1. >>> While it works as expected with v5.3.1 . >>> >>> Found that in init/main.c in setup_command_line() the pointers >>> passed to >>> strcpy() is messed up. >> Hi Akshay, >> >> Thanks for debugging this. >> >>> The problem goes away when compiler optimization is restricted to -O1. >>> diff --git a/init/main.c b/init/main.c >>> index a8a58e2..4259c42 100644 >>> --- a/init/main.c >>> +++ b/init/main.c >>> @@ -358,7 +358,13 @@ static inline void smp_prepare_cpus(unsigned >>> int maxcpus) { } >>> * parsing is performed in place, and we should allow a component to >>> * store reference of name/value for future reference. >>> */ >>> -static void __init setup_command_line(char *command_line) >>> +static void __init >>> +#ifdef CONFIG_PPC64 >>> + #if GCC_VERSION > 50301 >>> + __attribute__((optimize("-O1"))) >>> + #endif >>> +#endif >>> + setup_command_line(char *command_line) >>> { >>> saved_command_line = >>> memblock_virt_alloc(strlen(boot_command_line) + 1, 0); >> But I can't merge that patch. >> >> Our options are one or both of: >> - get GCC fixed and backport the fix to the compilers we care about. >> - blacklist the broken compiler versions. >> >> Is there a GCC bug filed for this? >> >> cheers >> >