Received: by 2002:a05:6a10:6744:0:0:0:0 with SMTP id w4csp984717pxu; Fri, 23 Oct 2020 19:38:39 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxCMEzQG9UvA/4/ts8mzGxRBxJ2gVrznAYhnW9DgX8hhtfkRTdqNxL7X/R1NBZTWEzAApC8 X-Received: by 2002:a50:8745:: with SMTP id 5mr5099173edv.49.1603507118929; Fri, 23 Oct 2020 19:38:38 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1603507118; cv=none; d=google.com; s=arc-20160816; b=QK8ZDxDuWMROHyhai/RfVmaaZ0OEeWdQQ6UA4eYI1M4S54oGjDaNh7P5oeLRi0pMYT j02kJEC46tPX2LnugCe/yoZYoKz30Ps/wooM/9yafczkev31A7LlMbDAhEnsFeQ9KE4N OapLcvLsRMOQFUUmoclpFlzCICRhWBXLFoF94r1LkpnoE6UrA2NRYmdED+6QTWQXFG2J uOGftrLVP+NfDSdfwA21We6pEgogDKxfDB/06H0Rm/XPU7xyDDf2WrYM/Uh2wNZ0lp/5 c8Pi3WODmG27A87emptGKMr4NtpR5cXcXB4Qs3SHn1Mbn1vpS17tkV6QUctuYW7W9oP5 04sQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:cc:to:subject :message-id:date:from:mime-version:dkim-signature; bh=0Ujqe4ZUZFtu/lYhqxeeV/BQscYr5R12aTQxmFkXZqQ=; b=yvWmUDJyIlwvM7RI+s/TNZUSgQY3ToWWhNN5l/wp1fwD1lFHSx9AsSnvbkDBY4ohsn ftUcZZ9/F0nJx0iOhrpikTfL88ecY1K33eJ3cO/BlXXi/zHtWE0TPx3CyD3p+RvgcPsW CK3Qj9BGxMkpiMg5pF8SU6QktSFUCWCl5wzb/RvL9d4afntFfRGi0gd7oUrpJfsf2kCu Lh9hAyx/XD2H/t2GGESNhBr2+i9pLj9eOVWtBjKOuz3IcNOi6GyQZAoGMxYX1M2y/9Qq P9SwK7LkS342tJKSSZf7bUA5y3OqO/lbnqtTqgtYXHl/MiPdjmjd6tazsB3E6n8c2NCI Snzw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=RnL9+h3M; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id g23si2138309ejr.397.2020.10.23.19.38.15; Fri, 23 Oct 2020 19:38:38 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=RnL9+h3M; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756949AbgJXCNd (ORCPT + 99 others); Fri, 23 Oct 2020 22:13:33 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54262 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756727AbgJXCNd (ORCPT ); Fri, 23 Oct 2020 22:13:33 -0400 Received: from mail-oi1-x243.google.com (mail-oi1-x243.google.com [IPv6:2607:f8b0:4864:20::243]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 461E2C0613CE for ; Fri, 23 Oct 2020 19:13:33 -0700 (PDT) Received: by mail-oi1-x243.google.com with SMTP id f8so4009439oij.10 for ; Fri, 23 Oct 2020 19:13:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=mime-version:from:date:message-id:subject:to:cc :content-transfer-encoding; bh=0Ujqe4ZUZFtu/lYhqxeeV/BQscYr5R12aTQxmFkXZqQ=; b=RnL9+h3MHknkfWyccUeUFg+CuFhAHssEBLufs1jVN8iAXg7+elkF2mZSLEjRLAAp4I Fvqus6nnfgFlkX4FYfdqgPqe+/nAutGI8c2G1IAdi/kIvXRrWugrguUi/VM3oDI3vl8+ goY8Nlvmw4piK+AIlMpVqTtOwhsyAMrr0mbOwoXLTHbLFIxdJSWNPGgr4CfzfL8FzC4q idUW6u00cHwfjTxnQV6srSNOVhvFWN+T4KkTf+Gpq9NrT41O0nGwROc/o4DJlHgTO4GZ yQ66Ic9cXdxyQPXL8d7f4fkuyLxbIxUd1Vmxx/PK1uMiLUU8efwDmznSvLQ0hOvUSFiX AZWg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to:cc :content-transfer-encoding; bh=0Ujqe4ZUZFtu/lYhqxeeV/BQscYr5R12aTQxmFkXZqQ=; b=pWhL5xSAOrBr+/5oLdt8AocYwdShilR0CdAqEgOvQlLPdSxy1URO6ouwURyGIaIgrQ f+070ecbv14uy9HQPHoA4ZrnRb3wO0GjAuNappGcIQ0S3T9sIkaRqqQc1UFNwnV8Rt7B fF5obDy0YK2FPlKjSt7VU5plC02uFCW5/dD2TZrEBuDoJU95X50pL/HFt/XnlS4/Dbke AP6YyMXX8nN8aptgulL7gBFsIntTGK8Gaa8bzPfwqmnmxERUlLijFybpDPURiQe/tNDf J0ceWo1AQbOuTZDAUr0au58i8IntQ7qHiQxuqtSVRzuYmIknJk5grw5jAPrNMIV6DkoR RPiA== X-Gm-Message-State: AOAM533iai0cf7ofnV05v7cynhqs0qOvcrVkbQ5KpH1iPo3p9w8/znJM 3puCeLQYdurjryf0OfPWwIu2DrcpEP8FJLQmpB5clA== X-Received: by 2002:a05:6808:605:: with SMTP id y5mr4332428oih.172.1603505612450; Fri, 23 Oct 2020 19:13:32 -0700 (PDT) MIME-Version: 1.0 From: =?UTF-8?B?RGFuaWVsIETDrWF6?= Date: Fri, 23 Oct 2020 21:13:21 -0500 Message-ID: Subject: kvm: x86-32 fails to link with tdp_mmu To: Ben Gardon Cc: Paolo Bonzini , Sean Christopherson , Vitaly Kuznetsov , Wanpeng Li , Jim Mattson , Joerg Roedel , Thomas Gleixner , Ingo Molnar , Borislav Petkov , X86 ML , "H. Peter Anvin" , kvm list , open list Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hello! We found the following problem building torvalds/master, which recently merged the for-linus tag from the KVM tree, when building with gcc 7.3.0 and glibc 2.27 for x86 32-bits under OpenEmbedded: | LD vmlinux.o | MODPOST vmlinux.symvers | MODINFO modules.builtin.modinfo | GEN modules.builtin | LD .tmp_vmlinux.kallsyms1 | arch/x86/kvm/mmu/tdp_mmu.o: In function `__handle_changed_spte': | tdp_mmu.c:(.text+0x78a): undefined reference to `__umoddi3' | /srv/oe/build/tmp-lkft-glibc/work-shared/intel-core2-32/kernel-source/Mak= efile:1164: recipe for target 'vmlinux' failed | make[1]: *** [vmlinux] Error 1 | /srv/oe/build/tmp-lkft-glibc/work-shared/intel-core2-32/kernel-source/Mak= efile:185: recipe for target '__sub-make' failed | make: *** [__sub-make] Error 2 This builds fine for x86 (64 bits) and arm (32/64 bits) with the same toolchain. This also builds correctly (outside OpenEmbedded) with gcc-8, gcc-9 and gcc-10 for: x86 (32/64 bits), arm (32/64 bits), MIPS, and RISCV; and gcc-8 and gcc-9 for ARC. We first noticed this when 0adc313c4f20 was pushed, but reverting f9a705ad1c07 ("Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm") brought it back into building. A follow-up bisection led to faaf05b00aec ("kvm: x86/mmu: Support zapping SPTEs in the TDP MMU"). In that commit, the problematic code was: handle_changed_spte(kvm, as_id, iter->gfn, iter->old_spte, new_spte= , iter->level); which was later changed by f8e144971c68 ("kvm: x86/mmu: Add access tracking for tdp_mmu") to: __handle_changed_spte(kvm, as_id, iter->gfn, iter->old_spte, new_sp= te, iter->level); Greetings! Daniel D=C3=ADaz daniel.diaz@linaro.org