From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.ozlabs.org (lists.ozlabs.org [112.213.38.117]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 10034C433EF for ; Fri, 25 Feb 2022 10:52:52 +0000 (UTC) Received: from boromir.ozlabs.org (localhost [IPv6:::1]) by lists.ozlabs.org (Postfix) with ESMTP id 4K4mnt47rxz3cNP for ; Fri, 25 Feb 2022 21:52:50 +1100 (AEDT) Authentication-Results: lists.ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20210112 header.b=V5B+L7kk; dkim-atps=neutral Authentication-Results: lists.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=gmail.com (client-ip=2607:f8b0:4864:20::529; helo=mail-pg1-x529.google.com; envelope-from=npiggin@gmail.com; receiver=) Authentication-Results: lists.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20210112 header.b=V5B+L7kk; dkim-atps=neutral Received: from mail-pg1-x529.google.com (mail-pg1-x529.google.com [IPv6:2607:f8b0:4864:20::529]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 4K4mn672q0z2yJw for ; Fri, 25 Feb 2022 21:52:08 +1100 (AEDT) Received: by mail-pg1-x529.google.com with SMTP id 12so4368242pgd.0 for ; Fri, 25 Feb 2022 02:52:09 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=date:from:subject:to:cc:references:in-reply-to:mime-version :message-id:content-transfer-encoding; bh=lOPOPfTT4jvu98yCK4rpV6Lqqj8jf8x3i39DL5jIpco=; b=V5B+L7kkmOLNwj2gCGdaorIBzmt8oiMQhtgWPxwrvRkvEFR7f+5APv/FvxoYjgErTf ANTG3PR8iDx9n+Qah2R682GxFBWXV0HwfVyNAfa7oY08KBNLDcL28ZO98CmJAdeJ7A/T NRjzJ+xWm1qOW9WHfNoJnQE0tLzb75gxC82Qbcm/4BVbE3AIJE6I5eKzK5OOsblW0Ue+ VY+VISqz+doRzyzG6VX8o5uXgIvb28TSs782rKyn3pzGkts23LVgUFLu+0EYAibXcffm xGQD8xv/J2F5Ccs6HJF3hwv+cksPeOrEvtg+VcssicUaGZUA/VGak4E82ATQ+heUcyUn CZEg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:date:from:subject:to:cc:references:in-reply-to :mime-version:message-id:content-transfer-encoding; bh=lOPOPfTT4jvu98yCK4rpV6Lqqj8jf8x3i39DL5jIpco=; b=MM7ZwFd53et2L1zPGhf566i9VbioTucQnjQWUFqH/FBpWu2sKYJADKc8voat+mUuw8 1UMp+XyFZ64xvPg/+fwcQHZOQpbG8iJQExh175+1PqrR9bE/QaJQ+k6yxPFQbf25lZSm 5SwqPU410f8AM3dF1P5+KioRhoXlz3wNNfkoJbHWh4UtEAY07G2w40m7D7cVAbmuAeGj mF+ovmf3op4OzgjmJuzxIDD3RuJEbp+JerjVWpqEjmYt7IHUD4wdCh+mFoziZrdnLCDV ifzC033zGmpSAdqcNa1lS5TbjrqytxV4fLOh+go8gSpQ6L8uzzTymX4Xi7xveE65Ohsr MbVQ== X-Gm-Message-State: AOAM532+b3QuVXwzgWQfTCmkEagX+07Otx2GpdEIZH7HpaZdvJNLLFJY wvYcWMXK3XPigT20jy49lNA= X-Google-Smtp-Source: ABdhPJw1p3JpylPzwdPP9TEVvKcOyG6aC0IjbCbljtAOdMk1Nof42N6/33RGILbpNFCQaprbTYZTYA== X-Received: by 2002:a63:e54d:0:b0:375:5987:af5d with SMTP id z13-20020a63e54d000000b003755987af5dmr5750991pgj.14.1645786325457; Fri, 25 Feb 2022 02:52:05 -0800 (PST) Received: from localhost (118-208-203-92.tpgi.com.au. [118.208.203.92]) by smtp.gmail.com with ESMTPSA id d14-20020a056a0024ce00b004f3c87df62bsm2729639pfv.81.2022.02.25.02.52.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 25 Feb 2022 02:52:04 -0800 (PST) Date: Fri, 25 Feb 2022 20:51:59 +1000 From: Nicholas Piggin Subject: Re: [PATCH 2/3] powerpc: fix build errors To: Arnd Bergmann References: <20220223135820.2252470-1-anders.roxell@linaro.org> <20220223135820.2252470-2-anders.roxell@linaro.org> <1645670923.t0z533n7uu.astroid@bobo.none> <1645678884.dsm10mudmp.astroid@bobo.none> <20220224171207.GM614@gate.crashing.org> <1645748601.idp48wexp9.astroid@bobo.none> In-Reply-To: MIME-Version: 1.0 Message-Id: <1645786002.lvhr18b39u.astroid@bobo.none> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Anders Roxell , Linux Kernel Mailing List , "# 3.4.x" , linuxppc-dev Errors-To: linuxppc-dev-bounces+linuxppc-dev=archiver.kernel.org@lists.ozlabs.org Sender: "Linuxppc-dev" Excerpts from Arnd Bergmann's message of February 25, 2022 6:33 pm: > On Fri, Feb 25, 2022 at 1:32 AM Nicholas Piggin wrote= : >> Excerpts from Segher Boessenkool's message of February 25, 2022 3:12 am: >> >> +#ifdef CONFIG_CC_IS_GCC >> >> +#if (GCC_VERSION >=3D 100000) >> >> +#if (CONFIG_AS_VERSION =3D=3D 23800) >> >> +asm(".machine any"); >> >> +#endif >> >> +#endif >> >> +#endif >> >> +#endif /* __ASSEMBLY__ */ >> > >> > Abusing toplevel asm like this is broken and you *will* end up with >> > unhappiness all around. >> >> It actually unbreaks things and reduces my unhappiness. It's only done >> for broken compiler versions and only where as does not have the >> workaround for the breakage. >=20 > It doesn't work with clang, which always passes explicit .machine > statements around each inline asm, and it's also fundamentally > incompatible with LTO builds. Generally speaking, you can't expect > a top-level asm statement to have any effect inside of another > function. You have misunderstood my patch. It is not supposed to "work" with clang and it explicitly is complied out of clang. It's not intended to have any implementation independent meaning. It's working around a very specific issue with specific versions of gcc, and that's what it does. It's also not intended to be the final solution, it's a workaround hack. We will move away from -many of course. I will post it as a series since which hopefully will make it less confusing to people. Thanks, Nick From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 35625C433F5 for ; Fri, 25 Feb 2022 10:52:11 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239834AbiBYKwl (ORCPT ); Fri, 25 Feb 2022 05:52:41 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60000 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233510AbiBYKwj (ORCPT ); Fri, 25 Feb 2022 05:52:39 -0500 Received: from mail-pf1-x436.google.com (mail-pf1-x436.google.com [IPv6:2607:f8b0:4864:20::436]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1282417AEF8; Fri, 25 Feb 2022 02:52:06 -0800 (PST) Received: by mail-pf1-x436.google.com with SMTP id i21so4312970pfd.13; Fri, 25 Feb 2022 02:52:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=date:from:subject:to:cc:references:in-reply-to:mime-version :message-id:content-transfer-encoding; bh=lOPOPfTT4jvu98yCK4rpV6Lqqj8jf8x3i39DL5jIpco=; b=V5B+L7kkmOLNwj2gCGdaorIBzmt8oiMQhtgWPxwrvRkvEFR7f+5APv/FvxoYjgErTf ANTG3PR8iDx9n+Qah2R682GxFBWXV0HwfVyNAfa7oY08KBNLDcL28ZO98CmJAdeJ7A/T NRjzJ+xWm1qOW9WHfNoJnQE0tLzb75gxC82Qbcm/4BVbE3AIJE6I5eKzK5OOsblW0Ue+ VY+VISqz+doRzyzG6VX8o5uXgIvb28TSs782rKyn3pzGkts23LVgUFLu+0EYAibXcffm xGQD8xv/J2F5Ccs6HJF3hwv+cksPeOrEvtg+VcssicUaGZUA/VGak4E82ATQ+heUcyUn CZEg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:date:from:subject:to:cc:references:in-reply-to :mime-version:message-id:content-transfer-encoding; bh=lOPOPfTT4jvu98yCK4rpV6Lqqj8jf8x3i39DL5jIpco=; b=qPOo7UckIC57bFQoCQFZNL0T5uDARcLV4bmsYYte5D+JpR/PERYBHNEDAqhMSEtf6S H2j+KhEASZ+cO7Iiw1cZxmzJnsyA2TDesNdsnApsEqOp1QdozxpxtODevhN5ysuUOOB0 NoV+XdMfmRozFvYwEd62w+MAjtkkuoTkTs5pdR4+pO2jeY8pbgE0gC7mbg8KP8E3rxmQ TY1A82SWBW5xD0160MiYxZm/wr5yTBUAfQCQCasg0EP6Ffs4awOc1+iRG+gTDrKlNNVt O3ZwWni6GSUNrK/1oWIZTZ5sCZJgEIF0/HqbR3pxLQAZisaVfaMneMWbPdtJwMl9PGQE NEAg== X-Gm-Message-State: AOAM532oR8AYMwL8qkCZvSpXUFBStTM7u9cD8wfYpG5QSURSMFVPOh6r 56jDaqk+WEG6yjixocR7J2ndiBcnXVN2aA== X-Google-Smtp-Source: ABdhPJw1p3JpylPzwdPP9TEVvKcOyG6aC0IjbCbljtAOdMk1Nof42N6/33RGILbpNFCQaprbTYZTYA== X-Received: by 2002:a63:e54d:0:b0:375:5987:af5d with SMTP id z13-20020a63e54d000000b003755987af5dmr5750991pgj.14.1645786325457; Fri, 25 Feb 2022 02:52:05 -0800 (PST) Received: from localhost (118-208-203-92.tpgi.com.au. [118.208.203.92]) by smtp.gmail.com with ESMTPSA id d14-20020a056a0024ce00b004f3c87df62bsm2729639pfv.81.2022.02.25.02.52.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 25 Feb 2022 02:52:04 -0800 (PST) Date: Fri, 25 Feb 2022 20:51:59 +1000 From: Nicholas Piggin Subject: Re: [PATCH 2/3] powerpc: fix build errors To: Arnd Bergmann Cc: Anders Roxell , Linux Kernel Mailing List , linuxppc-dev , Michael Ellerman , Segher Boessenkool , "# 3.4.x" References: <20220223135820.2252470-1-anders.roxell@linaro.org> <20220223135820.2252470-2-anders.roxell@linaro.org> <1645670923.t0z533n7uu.astroid@bobo.none> <1645678884.dsm10mudmp.astroid@bobo.none> <20220224171207.GM614@gate.crashing.org> <1645748601.idp48wexp9.astroid@bobo.none> In-Reply-To: MIME-Version: 1.0 Message-Id: <1645786002.lvhr18b39u.astroid@bobo.none> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Excerpts from Arnd Bergmann's message of February 25, 2022 6:33 pm: > On Fri, Feb 25, 2022 at 1:32 AM Nicholas Piggin wrote= : >> Excerpts from Segher Boessenkool's message of February 25, 2022 3:12 am: >> >> +#ifdef CONFIG_CC_IS_GCC >> >> +#if (GCC_VERSION >=3D 100000) >> >> +#if (CONFIG_AS_VERSION =3D=3D 23800) >> >> +asm(".machine any"); >> >> +#endif >> >> +#endif >> >> +#endif >> >> +#endif /* __ASSEMBLY__ */ >> > >> > Abusing toplevel asm like this is broken and you *will* end up with >> > unhappiness all around. >> >> It actually unbreaks things and reduces my unhappiness. It's only done >> for broken compiler versions and only where as does not have the >> workaround for the breakage. >=20 > It doesn't work with clang, which always passes explicit .machine > statements around each inline asm, and it's also fundamentally > incompatible with LTO builds. Generally speaking, you can't expect > a top-level asm statement to have any effect inside of another > function. You have misunderstood my patch. It is not supposed to "work" with clang and it explicitly is complied out of clang. It's not intended to have any implementation independent meaning. It's working around a very specific issue with specific versions of gcc, and that's what it does. It's also not intended to be the final solution, it's a workaround hack. We will move away from -many of course. I will post it as a series since which hopefully will make it less confusing to people. Thanks, Nick