From patchwork Fri Nov 23 07:57:21 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Masahiro Yamada X-Patchwork-Id: 151841 Delivered-To: patch@linaro.org Received: by 2002:a2e:299d:0:0:0:0:0 with SMTP id p29-v6csp1755206ljp; Thu, 22 Nov 2018 23:57:56 -0800 (PST) X-Google-Smtp-Source: AFSGD/UMxbWdpsqaiNWJYoROXFVSRT171Ujt/3is0W+lBg+f1a6rfZI31Dux+bMgwE7kH3ylHZU/ X-Received: by 2002:a17:902:1008:: with SMTP id b8mr5171974pla.252.1542959876183; Thu, 22 Nov 2018 23:57:56 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1542959876; cv=none; d=google.com; s=arc-20160816; b=scMoFHf97BeRv6Iy4ESXnWpc1vFlmU0b4u/Hl8Wb53y8ZXWBBQ/PVuYn8VZS+CyOWU nyL0AgImyMYxBhK7RzwJ2uoyxm3zXLot+zWuVgbubTrR4PLhL3xjX7ajt1IHtc3PBKM1 zXSFsx97pc3l3YLFYJKVv/x5LN+ZKI2eg3ObRO99HRteSSZVuDlTdxqy0/VIy4E8vOFX 5yS1zmCUL+cMsQ1znZw/7oWm0hreix3vVVqOLy6M17LNGJYXtnQQAnAyC4QeNk+OKQdg 8Z/d/wH+7/qlP2saS9z5TCrSmLHhn9RtHpWhXJiQ21UsppAF9OsD/EtFk+WL0/YTayOg jQ4w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :dkim-signature:dkim-filter; bh=Yqsi8EZdGJBsAxM6FldKbnl+rKoATI9SGx36ZNkWo0I=; b=ui7IbyrnCnx44SsvlHTxCmZMjkJt87K+s4d70gkeP8ull3C5R1S9Nf13Ldlrv4w8gR dDTjX1mGAp1npupIuaSXmCd7inR9rp5spK/kS33I/xWK1kKOAqdnX+VvI265gborqY1q AQ4qxuHAF671iScl6WR1Admn+TZmsXg2U7nGs3t1ivtLZWYjx7aBIJ24HL8FtsrjH4Mx XnJpbZiBKajxIZVYBSNEyWTNtnYS6yOKe3ZDpyRX/YTs4m+0QRE1+LPzTxueaFxJZ7/x 72JEeiclPtcWgbf6tvIQCx7zVlmHGxu++QlTJciX7XsXsjBn43TpDM+pe0J/kAPVSX0B Zfog== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@nifty.com header.s=dec2015msa header.b=EZAV4q3k; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id p64si77663pfa.94.2018.11.22.23.57.55; Thu, 22 Nov 2018 23:57:56 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@nifty.com header.s=dec2015msa header.b=EZAV4q3k; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2408322AbeKWSlA (ORCPT + 32 others); Fri, 23 Nov 2018 13:41:00 -0500 Received: from conuserg-08.nifty.com ([210.131.2.75]:55963 "EHLO conuserg-08.nifty.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729827AbeKWSk6 (ORCPT ); Fri, 23 Nov 2018 13:40:58 -0500 Received: from grover.tkatk1.zaq.ne.jp (zaqdadce369.zaq.ne.jp [218.220.227.105]) (authenticated) by conuserg-08.nifty.com with ESMTP id wAN7vWj2021058; Fri, 23 Nov 2018 16:57:32 +0900 DKIM-Filter: OpenDKIM Filter v2.10.3 conuserg-08.nifty.com wAN7vWj2021058 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nifty.com; s=dec2015msa; t=1542959853; bh=Yqsi8EZdGJBsAxM6FldKbnl+rKoATI9SGx36ZNkWo0I=; h=From:To:Cc:Subject:Date:From; b=EZAV4q3kvX6yt4jMhdJkdkg9skzM/pxbCmde4J0CR1m5o7ScQoLTLihbIYSexMNXb tv8x552dge70Jc1KeLZI/+118oZAGE3uvud2q0Qam9a9UtI9CRRe33w8IAfPmvgyRc Py3ZRpsFZscD1/zexeWJ7ED78diijkwsfMsDnVuJLI8XqbJR8MLim5YvCNgaMper3E UC4VRZRW42U/FVBfZvlUN6zCmf5KR7HwRRTrwPztfUQCRs31mz4GHvxcUlDpWnx6EM tiGfei6Zcq1zor3XGMgRL+IQ1gUIHguIHweSH/Eo77svVLmIyhDZDcWBP+/kn5BUxW RcX7oni/JSkQQ== X-Nifty-SrcIP: [218.220.227.105] From: Masahiro Yamada To: linux-kbuild@vger.kernel.org Cc: Leonardo Bras , Masahiro Yamada , Michal Marek , linux-kernel@vger.kernel.org Subject: [PATCH 1/3] modpost: refactor seen flag clearing in add_depends() Date: Fri, 23 Nov 2018 16:57:21 +0900 Message-Id: <1542959843-16145-1-git-send-email-yamada.masahiro@socionext.com> X-Mailer: git-send-email 2.7.4 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org You do not need to iterate over all modules for resetting ->seen flag because add_depends() is only interested in modules that export symbols referenced from the given 'mod'. This also avoids shadowing the 'modules' parameter of add_depends(). Signed-off-by: Masahiro Yamada --- scripts/mod/modpost.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) -- 2.7.4 diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c index c64066d..39432c2 100644 --- a/scripts/mod/modpost.c +++ b/scripts/mod/modpost.c @@ -2229,15 +2229,15 @@ static int add_versions(struct buffer *b, struct module *mod) return err; } -static void add_depends(struct buffer *b, struct module *mod, - struct module *modules) +static void add_depends(struct buffer *b, struct module *mod) { struct symbol *s; - struct module *m; int first = 1; - for (m = modules; m; m = m->next) - m->seen = is_vmlinux(m->name); + /* Clear ->seen flag of modules that own symbols needed by this. */ + for (s = mod->unres; s; s = s->next) + if (s->module) + s->module->seen = is_vmlinux(s->module->name); buf_printf(b, "\n"); buf_printf(b, "static const char __module_depends[]\n"); @@ -2506,7 +2506,7 @@ int main(int argc, char **argv) add_retpoline(&buf); add_staging_flag(&buf, mod->name); err |= add_versions(&buf, mod); - add_depends(&buf, mod, modules); + add_depends(&buf, mod); add_moddevtable(&buf, mod); add_srcversion(&buf, mod);