From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753943AbcLFQj4 (ORCPT ); Tue, 6 Dec 2016 11:39:56 -0500 Received: from mail-io0-f194.google.com ([209.85.223.194]:36243 "EHLO mail-io0-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751799AbcLFQjy (ORCPT ); Tue, 6 Dec 2016 11:39:54 -0500 MIME-Version: 1.0 In-Reply-To: <20161206134454.GA13814@angband.pl> References: <2124400518.2319293.1481030523351.JavaMail.zimbra@redhat.com> <656276734.2322009.1481031061742.JavaMail.zimbra@redhat.com> <20161206134454.GA13814@angband.pl> From: Linus Torvalds Date: Tue, 6 Dec 2016 08:39:53 -0800 X-Google-Sender-Auth: l9CLurq6S5jFRVXQCMDR3DVlNEI Message-ID: Subject: Re: unable to load modules with CONFIG_MODVERSIONS=y after commit 8ab2ae655b To: Adam Borowski Cc: Jan Stancek , Linux Kernel Mailing List , Arnd Bergmann Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Dec 6, 2016 at 5:44 AM, Adam Borowski wrote: > On Tue, Dec 06, 2016 at 08:31:01AM -0500, Jan Stancek wrote: >> Starting with 4.9-rc8 / commit 8ab2ae655b ("default exported asm symbols to zero") >> I'm running into issue with kernel built with CONFIG_MODVERSIONS=y >> and (older) binutils (binutils-2.25.1-20.base.el7.ppc64le). >> >> Modules fail to load, for example: >> >> [ 3.163646] Found checksum 0 vs module 4829A47E >> [ 3.163787] dm_mod: disagrees about version of symbol memcpy >> [ 3.163862] dm_mod: Unknown symbol memcpy (err -22) >> >> Bisect led me to 8ab2ae655b, reverting it allows boot to >> progress as before. > > powerpc happens to be the only arch that actually followed the plan and > implemented asm-prototypes.h (not including Debian which applied my patch to > do so on x86, that patch is not in mainline). > > Could you try reverting commits that add exports to that file? Let's not do this. Let's just assume that "checksum=0" matches anything. Because it's too late to play games with this any more, and it's too damn fragile. In fact, I think I'll just revert Arnd's patch, and just rely on commit faaae2a58143 ("Re-enable CONFIG_MODVERSIONS in a slightly weaker form") for 4.9. Because Arnd's patch did explain what was going on, but it also broke alpha, due to ".set" apparently meaning something else than "set value" there. So I like Arnd's patch even if it gets reverted, just because of the "explain things" part. Or would people prefer just an explicit "zero in the crc tables means that it never got filled in correctly, so let's match it"? Arnd, comments? Linus