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 X-Spam-Level: X-Spam-Status: No, score=-19.4 required=3.0 tests=BAYES_00,DKIMWL_WL_MED, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, USER_IN_DEF_DKIM_WL autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7149EC433E7 for ; Thu, 15 Oct 2020 06:24:42 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 08AB92224A for ; Thu, 15 Oct 2020 06:24:41 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="YZbkD9vM" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729089AbgJOGYk (ORCPT ); Thu, 15 Oct 2020 02:24:40 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38554 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728662AbgJOGYk (ORCPT ); Thu, 15 Oct 2020 02:24:40 -0400 Received: from mail-wr1-x443.google.com (mail-wr1-x443.google.com [IPv6:2a00:1450:4864:20::443]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 3679AC061755 for ; Wed, 14 Oct 2020 23:24:40 -0700 (PDT) Received: by mail-wr1-x443.google.com with SMTP id h5so1876345wrv.7 for ; Wed, 14 Oct 2020 23:24:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=PXzy1d3ckMk0Ny0gHfuwHvgJ6RXIhGLeAUjxyUMOj74=; b=YZbkD9vMiz5BzYxugQodbY8GjIsUu9NZMMfVV6I+A0SuakkKwK87m8Mt6+3RgPHchE 8p0/mxoEh81CbftpKckrDFXk4zF+O3+fTs8kjsCiL+Prl6lFiAlEBVd3hnL1ELLihZu0 49zucOkSqjTj9l/Zb7mMAyvFgykwp+Dv25lOu4Qo5zkoCcNIL4GJlAu9mBS9LACtkNPe x6KzG7b1i5DJvl1hvDKGNZUBB9AtOuxVtfQpwnW1maOLeTKwTB/avP7sy6d6Y2Wh2a8m RP3+cr9MKuy/NLMQH+8nh+FtMT6g0DHF4ViKmATpr/SHP/V6CJZdTk7Gzq3BDX4/QMg0 D3hQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=PXzy1d3ckMk0Ny0gHfuwHvgJ6RXIhGLeAUjxyUMOj74=; b=EyQ9nsBL28a7r+I6VNvYeURrLXqLhrtrU30mwYesLI9sExfG2GBp2o3wUwLNlbUY2e zfyOENFqePWDXNrArtNtABsyTVTVCjHPNh+YVc4CfKSckHWq6ympSY/Nc3pJ11cb0dkq jgfeLov2U6yZzXegCDL/XhPT5UYtdvRCoGSjs275Kb9xp5YY/jKa+dYbB1fvqIcTTvs4 P9/sPe1eDA49C///0rjFpOsFUTlKsKvz2/WCTVxWUpx3ZdQ7qU7LHFwNzEt8uPZVeaon jvrZ54KlnTLkm2FqVRKYdDXd8oc4LIVcggAV5khToL54dT89Raqb86G43U4LUC3VSYF+ 6/Hw== X-Gm-Message-State: AOAM5315QkCPngFWMUaUanJ0M6TuMYc4qPmr3mdbLdzdq1iiHZHGVwsg dnadKd8phJsA3NC/E9v+6bl9vq4e58whTK6n05DOazwOtMfLZQ== X-Google-Smtp-Source: ABdhPJxBQX/QxK6pw7DKHu3C/wNzs8v0GZG0QDSdLbwtuGccZJwqO/VtMhCyAGnJcHarzcj3QQkcXqPhY9n4PXmtnIM= X-Received: by 2002:a5d:6407:: with SMTP id z7mr2524568wru.271.1602743078716; Wed, 14 Oct 2020 23:24:38 -0700 (PDT) MIME-Version: 1.0 References: <160208761921.7002.1321765913567405137.tip-bot2@tip-bot2> <20201009203822.GA2974@worktop.programming.kicks-ass.net> <20201009204921.GB21731@zn.tnic> <20201010174415.zwopoy6vpficoqlr@treble> <20201012091236.0f9a64bfedb8825732b65ea5@kernel.org> <20201012153949.jfwa7rgpzu5b7ld4@treble> <20201014162859.987d5f71f5e5456ffb812abc@kernel.org> In-Reply-To: <20201014162859.987d5f71f5e5456ffb812abc@kernel.org> From: Ian Rogers Date: Wed, 14 Oct 2020 23:24:26 -0700 Message-ID: Subject: Re: [tip: objtool/core] x86/insn: Support big endian cross-compiles To: Masami Hiramatsu Cc: Josh Poimboeuf , Borislav Petkov , Peter Zijlstra , LKML , linux-tip-commits@vger.kernel.org, Martin Schwidefsky , Vasily Gorbik , x86 Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Oct 14, 2020 at 12:29 AM Masami Hiramatsu wrote: > > On Mon, 12 Oct 2020 10:39:49 -0500 > Josh Poimboeuf wrote: > > > On Mon, Oct 12, 2020 at 09:12:36AM +0900, Masami Hiramatsu wrote: > > > On Sat, 10 Oct 2020 12:44:15 -0500 > > > Josh Poimboeuf wrote: > > > > > > > On Fri, Oct 09, 2020 at 10:49:21PM +0200, Borislav Petkov wrote: > > > > > On Fri, Oct 09, 2020 at 10:38:22PM +0200, Peter Zijlstra wrote: > > > > > > On Wed, Oct 07, 2020 at 04:20:19PM -0000, tip-bot2 for Martin Schwidefsky wrote: > > > > > > > The following commit has been merged into the objtool/core branch of tip: > > > > > > > > > > > > > > Commit-ID: 2a522b53c47051d3bf98748418f4f8e5f20d2c04 > > > > > > > Gitweb: https://git.kernel.org/tip/2a522b53c47051d3bf98748418f4f8e5f20d2c04 > > > > > > > Author: Martin Schwidefsky > > > > > > > AuthorDate: Mon, 05 Oct 2020 17:50:31 +02:00 > > > > > > > Committer: Josh Poimboeuf > > > > > > > CommitterDate: Tue, 06 Oct 2020 09:32:29 -05:00 > > > > > > > > > > > > > > x86/insn: Support big endian cross-compiles > > > > > > > > > > > > > > x86 instruction decoder code is shared across the kernel source and the > > > > > > > tools. Currently objtool seems to be the only tool from build tools needed > > > > > > > which breaks x86 cross compilation on big endian systems. Make the x86 > > > > > > > instruction decoder build host endianness agnostic to support x86 cross > > > > > > > compilation and enable objtool to implement endianness awareness for > > > > > > > big endian architectures support. > > > > > > > > > > > > > > Signed-off-by: Martin Schwidefsky > > > > > > > Co-developed-by: Vasily Gorbik > > > > > > > Signed-off-by: Vasily Gorbik > > > > > > > Acked-by: Masami Hiramatsu > > > > > > > Signed-off-by: Josh Poimboeuf > > > > > > > > > > > > This commit breaks the x86 build with CONFIG_X86_DECODER_SELFTEST=y. > > > > > > > > > > > > I've asked Boris to truncate tip/objtool/core. > > > > > > > > > > Yeah, top 4 are gone until this is resolved. > > > > > > > > Masami, I wonder if we even need these selftests anymore? Objtool > > > > already decodes the entire kernel. > > > > > > No, they have different roles. The selftest checks if the decoder > > > works correctly by comparing with the output of objdump. > > > > > > As far as I can see, the objtool relies on the sanity of the decoder > > > (it trusts the output of the decoder). > > > > Ok. I wonder if we should move the decoder selftest to the 'tools' > > subdirectory. > > It is in the arch/x86/tools, so it is already in a kind of tools :) > But yeah, it was considered to be used only on x86. But if someone > start trying to run it on non-x86, cross compiling, we need to > reconsider that. > > Thank you, > > -- > Masami Hiramatsu There is undefined behavior that is present in the x86 insn.c code as described in: https://lore.kernel.org/lkml/20190724184512.162887-4-nums@google.com/ I resent this patch fixing other potential undefined behavior: https://lore.kernel.org/lkml/20201015062148.1437894-1-irogers@google.com/T/#t The misaligned loads will likely break on anything non-x86. Thanks, Ian