From: Randy Dunlap <randy.dunlap@oracle.com>
To: Johannes Weiner <hannes@cmpxchg.org>
Cc: James Bottomley <James.Bottomley@HansenPartnership.com>,
stern@rowland.harvard.edu, akpm@linux-foundation.org,
apw@canonical.com, mingo@elte.hu, linux-kernel@vger.kernel.org,
peterz@infradead.org
Subject: Re: [PATCH] Add kerneldoc for flush_scheduled_work()
Date: Wed, 19 Aug 2009 16:21:23 -0700 [thread overview]
Message-ID: <4A8C88F3.1000609@oracle.com> (raw)
In-Reply-To: <20090819222357.GA12821@cmpxchg.org>
Johannes Weiner wrote:
>> Yeah, it's the terminating **/ which matches $doc_cont. I will try to
>> send an updated version this evening.
>
> I got completely rid of the extra re. Just parse a non-empty content
> line following the declaration purpose immediately as continuation.
>
> It survives make htmldocs, the scsi_exit_devinfo() doc looks okay and
> for stuff that had continuation lines before, it does what's expected
> - e.g. for the doc of kernel/sched.c::init_sd_power_savings_stats().
>
> It behaves differently for broken docs
> (mm/page_alloc.c::calculate_zone_inactive_ratio e.g.), but that
> shouldn't matter.
Right, no problem on that one (for which I sent Andrew a patch some
time ago).
> I didn't find any other misbehaviour when checking random samples.
It's very close. I only checked/compared one docbook: mac80211.
There is some kind of paragraph end handling difference.
In processing include/net/mac80211.h, struct ieee80211_tx_info,
without the patch, it ends with:
This structure is placed in skb->cb for three uses: (1) mac80211 TX control - mac80211 tells the driver what to do (2) driver internal use (if applicable) (3) TX status information - driver tells mac80211 what happened
The TX control's sta pointer is only valid during the ->tx call, it may be NULL.
and with the patch, those 2 paragraphs are run together:
This structure is placed in skb->cb for three uses: (1) mac80211 TX control - mac80211 tells the driver what to do (2) driver internal use (if applicable) (3) TX status information - driver tells mac80211 what happened The TX control's sta pointer is only valid during the ->tx call, it may be NULL.
I don't think that this will be difficult to find/fix...
Thanks.
> ---
> From: Johannes Weiner <hannes@cmpxchg.org>
> Subject: kernel-doc: allow multi-line declaration purpose descriptions
>
> Allow the short description after symbol name and dash in a kernel-doc
> comment to span multiple lines, e.g. like this:
>
> /**
> * unmap_mapping_range - unmap the portion of all mmaps in the
> * specified address_space corresponding to the specified
> * page range in the underlying file.
> * @mapping: the address space containing mmaps to be unmapped.
> * ...
> */
>
> The short description ends with a parameter description, an empty line
> or the end of the comment block.
>
> Signed-off-by: Johannes Weiner <hannes@cmpxchg.org>
> ---
> Documentation/kernel-doc-nano-HOWTO.txt | 4 +++-
> scripts/kernel-doc | 19 ++++++++++++++-----
> 2 files changed, 17 insertions(+), 6 deletions(-)
>
> diff --git a/Documentation/kernel-doc-nano-HOWTO.txt b/Documentation/kernel-doc-nano-HOWTO.txt
> index 4d04572..348b9e5 100644
> --- a/Documentation/kernel-doc-nano-HOWTO.txt
> +++ b/Documentation/kernel-doc-nano-HOWTO.txt
> @@ -66,7 +66,9 @@ Example kernel-doc function comment:
> * The longer description can have multiple paragraphs.
> */
>
> -The first line, with the short description, must be on a single line.
> +The short description following the subject can span multiple lines
> +and ends with an @argument description, an empty line or the end of
> +the comment block.
>
> The @argument descriptions must begin on the very next line following
> this opening short function description line, with no intervening
> diff --git a/scripts/kernel-doc b/scripts/kernel-doc
> index b52d340..6194ef5 100755
> --- a/scripts/kernel-doc
> +++ b/scripts/kernel-doc
> @@ -1995,6 +1995,7 @@ sub process_file($) {
> my $identifier;
> my $func;
> my $descr;
> + my $in_purpose = 0;
> my $initial_section_counter = $section_counter;
>
> if (defined($ENV{'SRCTREE'})) {
> @@ -2044,6 +2045,7 @@ sub process_file($) {
> $descr =~ s/\s*$//;
> $descr =~ s/\s+/ /;
> $declaration_purpose = xml_escape($descr);
> + $in_purpose = 1;
> } else {
> $declaration_purpose = "";
> }
> @@ -2090,6 +2092,7 @@ sub process_file($) {
> }
>
> $in_doc_sect = 1;
> + $in_purpose = 0;
> $contents = $newcontents;
> if ($contents ne "") {
> while ((substr($contents, 0, 1) eq " ") ||
> @@ -2119,11 +2122,17 @@ sub process_file($) {
> } elsif (/$doc_content/) {
> # miguel-style comment kludge, look for blank lines after
> # @parameter line to signify start of description
> - if ($1 eq "" &&
> - ($section =~ m/^@/ || $section eq $section_context)) {
> - dump_section($file, $section, xml_escape($contents));
> - $section = $section_default;
> - $contents = "";
> + if ($1 eq "") {
> + if ($section =~ m/^@/ || $section eq $section_context) {
> + dump_section($file, $section, xml_escape($contents));
> + $section = $section_default;
> + $contents = "";
> + }
> + $in_purpose = 0;
> + } elsif ($in_purpose == 1) {
> + # Continued declaration purpose
> + chomp($declaration_purpose);
> + $declaration_purpose .= " " . $1;
> } else {
> $contents .= $1 . "\n";
> }
next prev parent reply other threads:[~2009-08-19 23:21 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-08-13 12:06 [PATCH] Add kerneldoc for flush_scheduled_work() Randy Dunlap
2009-08-13 14:51 ` Johannes Weiner
2009-08-13 15:04 ` James Bottomley
2009-08-13 16:20 ` Randy Dunlap
2009-08-13 18:08 ` Johannes Weiner
2009-08-14 18:23 ` Randy Dunlap
2009-08-16 19:13 ` [PATCH] scsi: fix func names in kernel-doc Randy Dunlap
2009-08-18 9:04 ` [PATCH] Add kerneldoc for flush_scheduled_work() Johannes Weiner
2009-08-19 22:23 ` Johannes Weiner
2009-08-19 23:21 ` Randy Dunlap [this message]
2009-08-19 23:27 ` Randy Dunlap
2009-08-24 19:06 ` Johannes Weiner
2009-08-24 19:27 ` Randy Dunlap
2009-08-24 20:09 ` Johannes Weiner
2009-08-24 20:25 ` Randy Dunlap
-- strict thread matches above, loose matches on Subject: below --
2009-08-12 18:14 Randy Dunlap
2009-08-11 21:06 Alan Stern
2009-08-12 9:41 ` Ingo Molnar
2009-08-12 10:47 ` Peter Zijlstra
2009-08-12 10:51 ` Ingo Molnar
2009-08-12 14:13 ` Alan Stern
2009-08-12 14:17 ` Ingo Molnar
2009-08-12 16:22 ` James Bottomley
2009-08-13 7:25 ` Ingo Molnar
2009-08-13 8:47 ` Johannes Weiner
2009-08-13 10:03 ` Ingo Molnar
2009-08-13 14:37 ` James Bottomley
2009-08-12 14:01 ` James Bottomley
2009-08-12 14:54 ` Alan Stern
2009-08-12 15:00 ` James Bottomley
2009-08-12 15:44 ` Alan Stern
2009-08-12 15:58 ` James Bottomley
2009-08-12 16:23 ` Alan Stern
2009-08-12 17:02 ` James Bottomley
2009-08-12 17:25 ` Alan Stern
2009-08-12 17:36 ` James Bottomley
2009-08-12 18:16 ` Alan Stern
2009-08-12 18:27 ` James Bottomley
2009-08-12 18:48 ` Alan Stern
2009-08-12 20:28 ` James Bottomley
2009-08-12 20:41 ` Alan Stern
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=4A8C88F3.1000609@oracle.com \
--to=randy.dunlap@oracle.com \
--cc=James.Bottomley@HansenPartnership.com \
--cc=akpm@linux-foundation.org \
--cc=apw@canonical.com \
--cc=hannes@cmpxchg.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=peterz@infradead.org \
--cc=stern@rowland.harvard.edu \
/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: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox