From: Michal Marek <mmarek@suse.com> To: Prarit Bhargava <prarit@redhat.com> Cc: linux-kbuild@vger.kernel.org, linux-kernel@vger.kernel.org, linux-ia64@vger.kernel.org, xen-devel@lists.xenproject.org, linux-acpi@vger.kernel.org, rds-devel@oss.oracle.com, netdev@vger.kernel.org Subject: Re: [PATCH 9/9] treewide: Remove newlines inside DEFINE_PER_CPU() macros Date: Thu, 22 Oct 2015 14:06:32 +0200 [thread overview] Message-ID: <5628D148.7000102@suse.com> (raw) In-Reply-To: <5628C913.10800@redhat.com> On 2015-10-22 13:31, Prarit Bhargava wrote: > > > On 10/21/2015 03:52 PM, Michal Marek wrote: >> Dne 21.10.2015 v 21:27 Prarit Bhargava napsal(a): >>> On 10/15/2015 04:16 PM, Michal Marek wrote: >>>> Otherwise make tags can't parse them: >>>> >>>> ctags: Warning: arch/ia64/kernel/smp.c:60: null expansion of name pattern "\1" >>>> ctags: Warning: drivers/xen/events/events_2l.c:41: null expansion of name pattern "\1" >>>> ctags: Warning: drivers/acpi/processor_idle.c:64: null expansion of name pattern "\1" >>>> ctags: Warning: kernel/locking/lockdep.c:153: null expansion of name pattern "\1" >>>> ctags: Warning: kernel/workqueue.c:305: null expansion of name pattern "\1" >>>> ctags: Warning: kernel/rcu/rcutorture.c:133: null expansion of name pattern "\1" >>>> ctags: Warning: kernel/rcu/rcutorture.c:135: null expansion of name pattern "\1" >>>> ctags: Warning: net/rds/page.c:45: null expansion of name pattern "\1" >>>> ctags: Warning: net/ipv4/syncookies.c:53: null expansion of name pattern "\1" >>>> ctags: Warning: net/ipv6/syncookies.c:44: null expansion of name pattern "\1" >>> >>> I guarantee you're going to end up fixing this issue over and over again as more >>> code is added in. >> >> This is certainly going to happen, but it should be quickly spotted by >> anybody running make tags on linux-next. And 10 instances since the >> beginning of git is not too many. > > Not everyone uses 'make tags'. 'make cscope' exists and functions correctly ;) cscope works, but unfortunately it cannot be extended to understand the preprocessor constructs. But it does not suffer from the problem at hand, obviously. >> It's not ctags itself parsing the DEFINE_PER_CPU() macro, but a >> user-supplied regex specified on commandline. Which can only operate on >> single lines. >> > > What's the regex? See https://lkml.kernel.org/r/1444940195-28272-9-git-send-email-mmarek@suse.com It used to require a closing parenthesis, so it would not match the multiline macro invocations at all. Now it matches them, but ctags correctly warns that the empty string is probably not what we intended to match. Michal
WARNING: multiple messages have this Message-ID (diff)
From: Michal Marek <mmarek@suse.com> To: Prarit Bhargava <prarit@redhat.com> Cc: linux-kbuild@vger.kernel.org, linux-kernel@vger.kernel.org, linux-ia64@vger.kernel.org, xen-devel@lists.xenproject.org, linux-acpi@vger.kernel.org, rds-devel@oss.oracle.com, netdev@vger.kernel.org Subject: Re: [PATCH 9/9] treewide: Remove newlines inside DEFINE_PER_CPU() macros Date: Thu, 22 Oct 2015 12:06:32 +0000 [thread overview] Message-ID: <5628D148.7000102@suse.com> (raw) In-Reply-To: <5628C913.10800@redhat.com> On 2015-10-22 13:31, Prarit Bhargava wrote: > > > On 10/21/2015 03:52 PM, Michal Marek wrote: >> Dne 21.10.2015 v 21:27 Prarit Bhargava napsal(a): >>> On 10/15/2015 04:16 PM, Michal Marek wrote: >>>> Otherwise make tags can't parse them: >>>> >>>> ctags: Warning: arch/ia64/kernel/smp.c:60: null expansion of name pattern "\1" >>>> ctags: Warning: drivers/xen/events/events_2l.c:41: null expansion of name pattern "\1" >>>> ctags: Warning: drivers/acpi/processor_idle.c:64: null expansion of name pattern "\1" >>>> ctags: Warning: kernel/locking/lockdep.c:153: null expansion of name pattern "\1" >>>> ctags: Warning: kernel/workqueue.c:305: null expansion of name pattern "\1" >>>> ctags: Warning: kernel/rcu/rcutorture.c:133: null expansion of name pattern "\1" >>>> ctags: Warning: kernel/rcu/rcutorture.c:135: null expansion of name pattern "\1" >>>> ctags: Warning: net/rds/page.c:45: null expansion of name pattern "\1" >>>> ctags: Warning: net/ipv4/syncookies.c:53: null expansion of name pattern "\1" >>>> ctags: Warning: net/ipv6/syncookies.c:44: null expansion of name pattern "\1" >>> >>> I guarantee you're going to end up fixing this issue over and over again as more >>> code is added in. >> >> This is certainly going to happen, but it should be quickly spotted by >> anybody running make tags on linux-next. And 10 instances since the >> beginning of git is not too many. > > Not everyone uses 'make tags'. 'make cscope' exists and functions correctly ;) cscope works, but unfortunately it cannot be extended to understand the preprocessor constructs. But it does not suffer from the problem at hand, obviously. >> It's not ctags itself parsing the DEFINE_PER_CPU() macro, but a >> user-supplied regex specified on commandline. Which can only operate on >> single lines. >> > > What's the regex? See https://lkml.kernel.org/r/1444940195-28272-9-git-send-email-mmarek@suse.com It used to require a closing parenthesis, so it would not match the multiline macro invocations at all. Now it matches them, but ctags correctly warns that the empty string is probably not what we intended to match. Michal
next prev parent reply other threads:[~2015-10-22 12:06 UTC|newest] Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top 2015-10-15 20:16 [PATCH 0/9] scripts/tags.sh cleanup Michal Marek 2015-10-15 20:16 ` [PATCH 1/9] tags: Treat header files as C code Michal Marek 2015-10-15 20:16 ` [PATCH 2/9] KVM: arm: Do not indent the arguments of DECLARE_BITMAP Michal Marek 2015-10-18 20:34 ` Christoffer Dall 2015-10-18 20:34 ` Christoffer Dall 2015-10-19 11:55 ` Michal Marek 2015-10-19 12:05 ` Christoffer Dall 2015-10-19 12:07 ` Michal Marek 2015-10-15 20:16 ` [PATCH 3/9] aic7xxx: Avoid name collision with <linux/list.h> Michal Marek 2015-10-15 20:16 ` [PATCH 4/9] tags: Fix erroneous pattern match in a comment Michal Marek 2015-10-15 20:16 ` [PATCH 5/9] tags: Process Kconfig files in a single pass Michal Marek 2015-10-15 20:16 ` [PATCH 6/9] tags: Do not try to index defconfigs Michal Marek 2015-10-15 20:16 ` [PATCH 7/9] tags: Drop the _PE rule Michal Marek 2015-10-15 20:16 ` [PATCH 8/9] tags: Unify emacs and exuberant rules Michal Marek 2015-10-15 20:16 ` [PATCH 9/9] treewide: Remove newlines inside DEFINE_PER_CPU() macros Michal Marek 2015-10-15 20:16 ` Michal Marek 2015-10-21 19:27 ` Prarit Bhargava 2015-10-21 19:27 ` Prarit Bhargava 2015-10-21 19:52 ` Michal Marek 2015-10-21 19:52 ` Michal Marek 2015-10-22 11:31 ` Prarit Bhargava 2015-10-22 11:31 ` Prarit Bhargava 2015-10-22 12:06 ` Michal Marek 2015-10-22 12:06 ` Michal Marek [this message] 2015-10-22 12:06 ` Michal Marek 2015-10-22 12:14 ` Prarit Bhargava 2015-10-22 12:14 ` Prarit Bhargava 2015-10-22 12:24 ` Michal Marek 2015-10-22 12:24 ` Michal Marek 2015-10-22 12:24 ` Michal Marek 2015-10-22 12:14 ` Prarit Bhargava 2015-10-22 11:31 ` Prarit Bhargava 2015-10-21 19:52 ` Michal Marek 2015-10-21 19:27 ` Prarit Bhargava 2015-10-15 20:16 ` Michal Marek
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=5628D148.7000102@suse.com \ --to=mmarek@suse.com \ --cc=linux-acpi@vger.kernel.org \ --cc=linux-ia64@vger.kernel.org \ --cc=linux-kbuild@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=netdev@vger.kernel.org \ --cc=prarit@redhat.com \ --cc=rds-devel@oss.oracle.com \ --cc=xen-devel@lists.xenproject.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.