Received: by 2002:a25:ef43:0:0:0:0:0 with SMTP id w3csp600616ybm; Thu, 28 May 2020 10:23:30 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzz5r5yiNLofUKHl6qVFD7WEJqN/z7tRQwbhjWWRNDmr+PfwhxIkW/9hxwdMjFgu1P00jww X-Received: by 2002:a17:906:17d1:: with SMTP id u17mr3942187eje.242.1590686610759; Thu, 28 May 2020 10:23:30 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1590686610; cv=none; d=google.com; s=arc-20160816; b=TAZm3u/+T5TQIplOHdkt9EzTkt/fPnS2XEXZW5jmLdZm3+IZwU6fBNSUempTbhwcw2 VptEDKKvev6B5d20FmUDd8fS6xqINu39zAxtqNZ+f4CH9TkXIV+JsHGDynhd3JQHWeg2 yvRPXcfVcKF6JEQK5H+8QlLqEcwnxS2QQry/iJXuiy9vk0XekPeH3EymFQH7HiQbfbt7 mkNJHxAvKEUFR6gusDcqHVvWG7+WhO9+Jq9oxED/TwQxlQGTMMjd/QjE11tKEOnLf6uX 0CZWWcPZHblLFq1OlqiFdLyf3HQdsbZ9JBpy4d5R/wGY/gISfVmxyBpciHuiX9eZw18x 9MPg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:from:subject:mime-version :message-id:date:dkim-signature; bh=0xESSglLWrwf3x8cJUVzOxtDGHF6QQgQ1x5DUGqwYW8=; b=iNuF4t/Kz8ZYugzOgNbCj7s4jlbGoBgOhO80+itKiCfRUL1B9I+5CRuUXFaPYxdLFv gUFXjMuHcomeDYzoyuB6c88IBj/5NSgMdZARKs2K0oCuxkVIY2wphMikZ31h6BDIo6pT zbQfPNfkw4cODUM/V+ARMe5XRx33dD1OyjgqQSOgqvjYEB4adSRKyIHH5vfozdMhIpnc yop3St3La9uUeVU9vFE1iXJG4tPlD4Q/TipIi+Edz3vosUwpWgE/ynN/aoRQbDiuqzU0 BaJ/8Zj8wiUjCBDNbONrQfv+dxuhuxqUz3O0rFuVUoUtqSkSXt83ADQFtS6l18LUIr1K l2XQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=cxS6qz7n; 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=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id lv27si133357ejb.651.2020.05.28.10.23.07; Thu, 28 May 2020 10:23:30 -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=@google.com header.s=20161025 header.b=cxS6qz7n; 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=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2405527AbgE1RUh (ORCPT + 99 others); Thu, 28 May 2020 13:20:37 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40558 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2405353AbgE1RUe (ORCPT ); Thu, 28 May 2020 13:20:34 -0400 Received: from mail-qv1-xf4a.google.com (mail-qv1-xf4a.google.com [IPv6:2607:f8b0:4864:20::f4a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 61253C08C5C6 for ; Thu, 28 May 2020 10:20:34 -0700 (PDT) Received: by mail-qv1-xf4a.google.com with SMTP id dh11so8738067qvb.22 for ; Thu, 28 May 2020 10:20:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=date:message-id:mime-version:subject:from:to:cc; bh=0xESSglLWrwf3x8cJUVzOxtDGHF6QQgQ1x5DUGqwYW8=; b=cxS6qz7n7nK73o0Lj+qJGFAhUn+UOhTx6ZA+eY+Sg2neSU9N5rTgx2cQotnSgqWiOf 03ok3uW7ESY94XpGrPatKYoKP0//btqhv2svqBYYeaLe4r2x99BBSIZ7WxImPQBYIP7y McCoCNjghMl+YGwgLyhEX8ZUIhXcEavFNjBq1UT8Y0FQ2Fes+WtrVkqCnwEO7kin8dRx kPjVfxBMsM0LRUcNtKA6NVJyNhDRWABotgLHqR/tzEju5e/KzbVV0fsA1XaLMpg7xZZc dqgxovGf7WprQk1BYrPge2Ch9VfYI+350LZRf3nB9xaz9Uh5DV0Tl0w1UbhtXkdbOTOs 1Yfw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:message-id:mime-version:subject:from:to:cc; bh=0xESSglLWrwf3x8cJUVzOxtDGHF6QQgQ1x5DUGqwYW8=; b=kgr/4CkRyVNdVrYK5/b8TgKEG0Yr1hejTA8UvpuQeTC21AeODtxSIFlWetfnu+T31A yZO/Td56UUekFnA89jw+8shX2K7ciy5lTSEy2idEbq0ytRqvrPvJzjPTBDHftyrw1OIP ySOFWUQl3fZxgjxXg1WpS/SBjAEK7Lc55/Wsy1g0cwU45UNzWqdBoPfWT+bne538DTkT Sao1DtK1mAg3NSk6nfFVo9oz1IfNrrR+Ggn8weqWhdac1mIVYZu6YEtnV8iqJiYUaxKJ 292VxjlSDNgkIeCDHyYdYZvnCAcfL1T98t5FkQgC/zDDQP5zvrEowLKL0p5omkcrV4Pw 08kA== X-Gm-Message-State: AOAM530De/z51EeqSu/edBPcni2D4wuI7dF1tFQUosro9HhAoYxQb045 OSS0EWRYwKIUvAvxCj1K2SpxMUHu+SAiBntL X-Received: by 2002:a0c:c3cf:: with SMTP id p15mr4264539qvi.10.1590686432904; Thu, 28 May 2020 10:20:32 -0700 (PDT) Date: Thu, 28 May 2020 19:20:29 +0200 Message-Id: Mime-Version: 1.0 X-Mailer: git-send-email 2.27.0.rc0.183.gde8f92d652-goog Subject: [PATCH] kasan: fix clang compilation warning due to stack protector From: Andrey Konovalov To: Andrew Morton , Andrey Ryabinin Cc: Alexander Potapenko , Dmitry Vyukov , kasan-dev@googlegroups.com, linux-mm@kvack.org, linux-kernel@vger.kernel.org, Qian Cai , Andrey Konovalov Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org KASAN uses a single cc-option invocation to disable both conserve-stack and stack-protector flags. The former flag is not present in Clang, which causes cc-option to fail, and results in stack-protector being enabled. Fix by using separate cc-option calls for each flag. Also collect all flags in a variable to avoid calling cc-option multiple times for different files. Reported-by: Qian Cai Signed-off-by: Andrey Konovalov --- mm/kasan/Makefile | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/mm/kasan/Makefile b/mm/kasan/Makefile index de3121848ddf..bf6f7b1f6b18 100644 --- a/mm/kasan/Makefile +++ b/mm/kasan/Makefile @@ -15,14 +15,19 @@ CFLAGS_REMOVE_tags_report.o = $(CC_FLAGS_FTRACE) # Function splitter causes unnecessary splits in __asan_load1/__asan_store1 # see: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63533 -CFLAGS_common.o := $(call cc-option, -fno-conserve-stack -fno-stack-protector) -DDISABLE_BRANCH_PROFILING -CFLAGS_generic.o := $(call cc-option, -fno-conserve-stack -fno-stack-protector) -DDISABLE_BRANCH_PROFILING -CFLAGS_generic_report.o := $(call cc-option, -fno-conserve-stack -fno-stack-protector) -DDISABLE_BRANCH_PROFILING -CFLAGS_init.o := $(call cc-option, -fno-conserve-stack -fno-stack-protector) -DDISABLE_BRANCH_PROFILING -CFLAGS_quarantine.o := $(call cc-option, -fno-conserve-stack -fno-stack-protector) -DDISABLE_BRANCH_PROFILING -CFLAGS_report.o := $(call cc-option, -fno-conserve-stack -fno-stack-protector) -DDISABLE_BRANCH_PROFILING -CFLAGS_tags.o := $(call cc-option, -fno-conserve-stack -fno-stack-protector) -DDISABLE_BRANCH_PROFILING -CFLAGS_tags_report.o := $(call cc-option, -fno-conserve-stack -fno-stack-protector) -DDISABLE_BRANCH_PROFILING +CC_FLAGS_KASAN_CONFLICT := $(call cc-option, -fno-conserve-stack) +CC_FLAGS_KASAN_CONFLICT += $(call cc-option, -fno-stack-protector) +# Disable branch tracing to avoid recursion. +CC_FLAGS_KASAN_CONFLICT += -DDISABLE_BRANCH_PROFILING + +CFLAGS_common.o := $(CC_FLAGS_KASAN_CONFLICT) +CFLAGS_generic.o := $(CC_FLAGS_KASAN_CONFLICT) +CFLAGS_generic_report.o := $(CC_FLAGS_KASAN_CONFLICT) +CFLAGS_init.o := $(CC_FLAGS_KASAN_CONFLICT) +CFLAGS_quarantine.o := $(CC_FLAGS_KASAN_CONFLICT) +CFLAGS_report.o := $(CC_FLAGS_KASAN_CONFLICT) +CFLAGS_tags.o := $(CC_FLAGS_KASAN_CONFLICT) +CFLAGS_tags_report.o := $(CC_FLAGS_KASAN_CONFLICT) obj-$(CONFIG_KASAN) := common.o init.o report.o obj-$(CONFIG_KASAN_GENERIC) += generic.o generic_report.o quarantine.o -- 2.27.0.rc0.183.gde8f92d652-goog