Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1759441AbcKCRUa (ORCPT ); Thu, 3 Nov 2016 13:20:30 -0400 Received: from mail-pf0-f169.google.com ([209.85.192.169]:33699 "EHLO mail-pf0-f169.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1759190AbcKCRU3 (ORCPT ); Thu, 3 Nov 2016 13:20:29 -0400 Subject: Re: [PATCH] arm64: errata: Check for --fix-cortex-a53-843419 and --fix-cortex-a53 To: Will Deacon References: <20161031194414.61287-1-code@mmayer.net> <20161102210331.GJ22791@arm.com> <20161102212747.GL22791@arm.com> <2d72cbbb-df03-267c-53b0-e3083a746175@gmail.com> <20161103141559.GQ22791@arm.com> Cc: Markus Mayer , Markus Mayer , Catalin Marinas , Linux Kernel Mailing List , ARM Kernel Mailing List From: Florian Fainelli Message-ID: Date: Thu, 3 Nov 2016 10:20:26 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0 MIME-Version: 1.0 In-Reply-To: <20161103141559.GQ22791@arm.com> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2751 Lines: 56 On 11/03/2016 07:16 AM, Will Deacon wrote: > On Wed, Nov 02, 2016 at 02:57:26PM -0700, Florian Fainelli wrote: >> On 11/02/2016 02:41 PM, Markus Mayer wrote: >>> On 2 November 2016 at 14:27, Will Deacon wrote: >>>> On Wed, Nov 02, 2016 at 02:07:17PM -0700, Markus Mayer wrote: >>>>> The question I am asking is: What do we have to lose by supporting both options? >>>> >>>> We end up passing "--fix-cortex-a53" to the linker, without knowing what it >>>> might do in the future. >>> >>> It seems highly unlikely that such a generic option would be added in >>> the future, both, because the precedent has been set for topic >>> specific options, and because they know it has been used in the past, >>> so they wouldn't add a previously used option to do something >>> completely different. (And if they really did, then that would be a >>> huge binutils bug.) >>> >>> So, we have a trade-off between a real world problem that does >>> currently exist and avoiding a theoretical issue that may never >>> materialize. >> >> Agreed, also the way Markus' patch is designed makes it such that we >> first try the full and current option name, and if not supported, try >> the second (and earlier, now obsolete) option name, so I really don't >> see a lot of room for things to go wrong here... > > It's not beyond the realms of possibility that ld will grow a > "fix-cortex-a53" option in the future, that enables all of the a53 > workarounds. Since ld is the linker supported by the kernel and gold isn't, > I don't want to pass this option down. No it's entirely reasonable to think this may happen, although: - this has not happened yet, so once this happens, you will need to cook a patch for this anyway, and you will be able to gate this catch all linker option by an appropriate version check presumably - you would supposedly want a fine grained set of linker options that are specific to workarounds you have to have enabled, instead of a catch all "enable all Cortex A53" workarounds > > If you can't change toolchain and you want this worked around, why can't you > either build gold with it enabled by default, or pass the extra flag on the > command line to the kernel build system? Because that creates a distribution problem and now we have to document this for people who want to build a kernel on their own, without necessarily understanding if this is something they might need, or why this is needed, and why the kernel is not taking care of that on its own? So yes, this comes down to who is responsible for what, in that case the kernel's Makefile is the best place where to put such knowledge as to which workaround needs to be enabled by the linker and it simplifies things a lot for people. -- Florian