Received: by 2002:a05:6a10:17d3:0:0:0:0 with SMTP id hz19csp555972pxb; Thu, 15 Apr 2021 00:38:22 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwvcyc0LgIzOvuc740akuuXS7SpCoVgtnlVbw7csczRmBNeKtlAxCFXqPeYfbFK/XH7kL4U X-Received: by 2002:a05:6402:438f:: with SMTP id o15mr2478079edc.123.1618472302487; Thu, 15 Apr 2021 00:38:22 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1618472302; cv=none; d=google.com; s=arc-20160816; b=AlCd9GHNrMZP1n3rls6/eZbPTO1Ium+DuwdjiwPmx+SOhzOA15Fby7qnjD66/fTm80 VSw1HFJHcGM9CZmSJNMPfqKvG5nwoJwwyU6NtnzcK5cuK/WwAdAZ1NdTWcpqmsbEWJNZ l/aJoxwmfUmGNo4WNnjugxKxbh/m0YIC/a5NmGSK+PtNpu8eGXHQ1nxV+WqcJgTK0z7a ODyvp4AIiVHDj2dLUVMAbIq1qctSebdCwKGnhTq77a3rPsnG9gz6y/2yKkTmp2tNZd4r 114OA4S6S82XsuK/voOXUT4x4HniERpAbF80FkzSffxxPeCA5VVdOaAC0S3E0ByjT2wi ZrxA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature:dkim-filter; bh=OD3UH9B00q+oHiwfctNQok660hdenl+h06KhhwWImE4=; b=pKXR26LQpzK67PxxFqzb+D0A6dg+vjWnGyiT/cGNUDWT9tpnh7Kg1SY+bZdhOhB23K kq+i+R2plWUnTRSNL1e7/VP5X8H+ojuJ9JsFIljc/5EbTD+QmJWA8hk5Z7tK8JlSMrqw Qc/QLVYLG5/5EOI6roorFsXtPRPBPiPIevgUDgfF7KhxgozkcrRmQEfvZjwNgSMZMIy1 5GX5nmWU1PjNokDq1tYsqb/D8SyZLtMEz8L5Kx7mossV083gxtPSDhq3lyEi9c5nRfru 5Qgr5EDC3g4ZaM6Lsj34317OW3WOz1mwn4sL3ZEjTd0ceF13AyKF+pr4wignKeWgdw/5 WHvg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@nifty.com header.s=dec2015msa header.b=2ZRJZV3P; 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=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id y5si1634932eda.385.2021.04.15.00.37.58; Thu, 15 Apr 2021 00:38:22 -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=@nifty.com header.s=dec2015msa header.b=2ZRJZV3P; 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=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231357AbhDOHfb (ORCPT + 99 others); Thu, 15 Apr 2021 03:35:31 -0400 Received: from conssluserg-01.nifty.com ([210.131.2.80]:47603 "EHLO conssluserg-01.nifty.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230090AbhDOHfa (ORCPT ); Thu, 15 Apr 2021 03:35:30 -0400 Received: from mail-pl1-f171.google.com (mail-pl1-f171.google.com [209.85.214.171]) (authenticated) by conssluserg-01.nifty.com with ESMTP id 13F7Ysge006199; Thu, 15 Apr 2021 16:34:55 +0900 DKIM-Filter: OpenDKIM Filter v2.10.3 conssluserg-01.nifty.com 13F7Ysge006199 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nifty.com; s=dec2015msa; t=1618472095; bh=OD3UH9B00q+oHiwfctNQok660hdenl+h06KhhwWImE4=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=2ZRJZV3P2+7LuX6FUG/vyFLoTTmX4f3gIShVelb8Ub9i9Sl1F8ycDIc36CVKPWOtT GjDeK1QhJpskypXZyLQUmEDEF9SYYnUd43cY5pH54Owaxq1gldQhpc1iGViBzwki9S dAnuNKWIM7Ev5u4+a7XGZpwdJCczS5p7irZdwuOFI9/ZRgSHHgbKHUDlciBnPwIS2l JPfRVUD2J4a+HbwT21ia5VsTpzwcPrlwS6zMTox823cZRf/HX4m6cbLT920PjRb2Gb 9aDW55h6x+oO0EPwr/GOr8EV0YH7qu3WYEwe6LqVrBIh33Kq9GWN3jajFDYeLKtGjD Dpcoz5NYUWtvQ== X-Nifty-SrcIP: [209.85.214.171] Received: by mail-pl1-f171.google.com with SMTP id j7so11579681plx.2; Thu, 15 Apr 2021 00:34:55 -0700 (PDT) X-Gm-Message-State: AOAM530KMVZL62j5ITsQPzngyKeFCv2n1we0RvjxlaUQOBPM5w7JOPUJ rmghu0TcmZWzh5XAlHkBB24Pki81vW1RZ66xMOA= X-Received: by 2002:a17:902:d645:b029:e8:ec90:d097 with SMTP id y5-20020a170902d645b02900e8ec90d097mr2325772plh.47.1618472094311; Thu, 15 Apr 2021 00:34:54 -0700 (PDT) MIME-Version: 1.0 References: <20210228061028.239459-1-masahiroy@kernel.org> <20210228061028.239459-3-masahiroy@kernel.org> <86dadf33-70f7-a5ac-cb8c-64966d2f45a1@linux.ibm.com> <395d2db1-b860-0da2-a859-d1d840508a46@de.ibm.com> In-Reply-To: <395d2db1-b860-0da2-a859-d1d840508a46@de.ibm.com> From: Masahiro Yamada Date: Thu, 15 Apr 2021 16:34:17 +0900 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH 3/4] kbuild: spilt cc-option and friends to scripts/Makefile.compiler To: Christian Borntraeger Cc: Janosch Frank , Linux Kbuild mailing list , Linux Kernel Mailing List , Michal Marek , Marc Hartmayer , Heiko Carstens Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Apr 13, 2021 at 10:11 PM Christian Borntraeger wrote: > > > > On 13.04.21 14:51, Janosch Frank wrote: > > On 2/28/21 7:10 AM, Masahiro Yamada wrote: > >> scripts/Kbuild.include is included everywhere, but macros such as > >> cc-option are needed by build targets only. > >> > >> For example, when 'make clean' traverses the tree, it does not need > >> to evaluate $(call cc-option,). > >> > >> Split cc-option, ld-option, etc. to scripts/Makefile.compiler, which > >> is only included from the top Makefile and scripts/Makefile.build. > >> > >> Signed-off-by: Masahiro Yamada > > > > This commit broke the KVM selftest compilation under s390 in linux-next > > for me. Funny enough the compilation is only broken on Ubuntu, under > > Fedora the test fails with an assertion. > > > > FEDORA: > > [root@fedora kvm]# ./set_memory_region_test > > Allowed number of memory slots: 32767 > > ==== Test Assertion Failure ==== > > lib/kvm_util.c:142: vm->fd >= 0 > > pid=1541645 tid=1541645 - Invalid argument > > 1 0x0000000001002f4b: vm_open at kvm_util.c:142 > > 2 (inlined by) vm_create at kvm_util.c:258 > > 3 0x00000000010015ef: test_add_max_memory_regions at > > set_memory_region_test.c:351 > > 4 (inlined by) main at set_memory_region_test.c:397 > > 5 0x000003ffa3d2bb89: ?? ??:0 > > 6 0x00000000010017ad: .annobin_abi_note.c.hot at crt1.o:? > > KVM_CREATE_VM ioctl failed, rc: -1 errno: 22 > > > > > > Ubuntu: > > make[1]: Leaving directory '/mnt/dev/linux' > > gcc -Wall -Wstrict-prototypes -Wuninitialized -O2 -g -std=gnu99 > > -fno-stack-protector -fno-PIE -I../../../../tools/include > > -I../../../../tools/arch/s390/include -I../../../../usr/include/ > > -Iinclude -Ilib -Iinclude/s390x -I.. -c lib/sparsebit.c -o > > /mnt/dev/linux/tools/testing/selftests/kvm/lib/sparsebit.o > > gcc -Wall -Wstrict-prototypes -Wuninitialized -O2 -g -std=gnu99 > > -fno-stack-protector -fno-PIE -I../../../../tools/include > > -I../../../../tools/arch/s390/include -I../../../../usr/include/ > > -Iinclude -Ilib -Iinclude/s390x -I.. -c lib/kvm_util.c -o > > /mnt/dev/linux/tools/testing/selftests/kvm/lib/kvm_util.o > > gcc -Wall -Wstrict-prototypes -Wuninitialized -O2 -g -std=gnu99 > > -fno-stack-protector -fno-PIE -I../../../../tools/include > > -I../../../../tools/arch/s390/include -I../../../../usr/include/ > > -Iinclude -Ilib/s390x -Iinclude/s390x -I.. -c > > lib/s390x/diag318_test_handler.c -o > > /mnt/dev/linux/tools/testing/selftests/kvm/lib/s390x/diag318_test_handler.o > > ar crs /mnt/dev/linux/tools/testing/selftests/kvm/libkvm.a > > /mnt/dev/linux/tools/testing/selftests/kvm/lib/assert.o > > /mnt/dev/linux/tools/testing/selftests/kvm/lib/elf.o > > /mnt/dev/linux/tools/testing/selftests/kvm/lib/io.o > > /mnt/dev/linux/tools/testing/selftests/kvm/lib/kvm_util.o > > /mnt/dev/linux/tools/testing/selftests/kvm/lib/sparsebit.o > > /mnt/dev/linux/tools/testing/selftests/kvm/lib/test_util.o > > /mnt/dev/linux/tools/testing/selftests/kvm/lib/guest_modes.o > > /mnt/dev/linux/tools/testing/selftests/kvm/lib/perf_test_util.o > > /mnt/dev/linux/tools/testing/selftests/kvm/lib/s390x/processor.o > > /mnt/dev/linux/tools/testing/selftests/kvm/lib/s390x/ucall.o > > /mnt/dev/linux/tools/testing/selftests/kvm/lib/s390x/diag318_test_handler.o > > gcc -Wall -Wstrict-prototypes -Wuninitialized -O2 -g -std=gnu99 > > -fno-stack-protector -fno-PIE -I../../../../tools/include > > -I../../../../tools/arch/s390/include -I../../../../usr/include/ > > -Iinclude -Is390x -Iinclude/s390x -I.. -pthread s390x/memop.c > > /mnt/dev/linux/tools/testing/selftests/kvm/libkvm.a -o > > /mnt/dev/linux/tools/testing/selftests/kvm/s390x/memop > > /usr/bin/ld: /tmp/ccFU8WYF.o: `stdout@@GLIBC_2.2' non-PLT reloc for > > symbol defined in shared library and accessed from executable (rebuild > > file with -fPIC ?) > > /usr/bin/ld: final link failed: bad value > > collect2: error: ld returned 1 exit status > > make: *** [../lib.mk:139: > > /mnt/dev/linux/tools/testing/selftests/kvm/s390x/memop] Error 1 > > > > > > It looks like that from tools/testing/selftests/kvm/Makefile > additional linker flags are being ignored with this patch. > > no-pie-option := $(call try-run, echo 'int main() { return 0; }' | \ > $(CC) -Werror -no-pie -x c - -o "$$TMP", -no-pie) > > # On s390, build the testcases KVM-enabled > pgste-option = $(call try-run, echo 'int main() { return 0; }' | \ > $(CC) -Werror -Wl$(comma)--s390-pgste -x c - -o "$$TMP",-Wl$(comma)--s390-pgste) > > > LDFLAGS += -pthread $(no-pie-option) $(pgste-option) > Thanks. I will separate Kbuild and the tool build system. https://patchwork.kernel.org/project/linux-kbuild/patch/20210415072700.147125-2-masahiroy@kernel.org/ I do not want to be bothered by the can of worms. -- Best Regards Masahiro Yamada