All of lore.kernel.org
 help / color / mirror / Atom feed
From: Frank Rowand <frowand.list-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
To: Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
Cc: "devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
	<devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>
Subject: Re: how to structure some disruptive patches
Date: Tue, 2 Aug 2016 15:51:20 -0700	[thread overview]
Message-ID: <57A123E8.3070109@gmail.com> (raw)
In-Reply-To: <CAL_JsqJ4QQ9HjHZYp-jgODTiu-BHiyo2ZV5u9ysBr-oL1xbF_Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>

On 08/02/16 11:53, Rob Herring wrote:
> On Tue, Aug 2, 2016 at 12:28 PM, Frank Rowand <frowand.list-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
>> Hi Rob,
>>
>> I've been working on cleaning up the docbook function documentation
>> in the device tree files.  The resulting patches could interfere with
>> code patches, so I want to figure out how to structure the documentation
>> patches to avoid that.  I would like your opinion and suggestions on
>> the subject.
>>
>> First premise: this set of documentation changes is a second class
>> citizen compared to code changes.  Any patch from this set can be
>> dropped any time it interferes with a code patch.
>>
>> I started the project with the simple intent of fixing what was
>> clearly broken.
>>   - fix syntax errors
>>   - fix mismatches between actual function arguments vs docbook
>>     list of function arguments
>>   - fix mismatches between function return type (void vs anything) and
>>     values vs docbook return types and values
>>   - fix factually incorrect descriptions of what the function does
>>
>> When I was making those changes, I found also found documentation
>> that was somewhat cryptic or otherwise hard to understand.  I also
>> found that the description of the same item was described in a
>> wide variety of ways in different docbook headers.  I made an
>> effort to also clean that up.
>>
>> The result was a large patch series (that was not totally complete):
>>
>>    15 files changed, 1414 insertions(+), 730 deletions(-)
> 
> All in drivers/of and related headers?

Yes.  Plus a line in the docbook makefile and a small docbook
file that specifies which source files to process.


> 
>> plus around 150 lines of change to docbook files so that
>> the device tree man pages would be created.  I did not
>> add any other significant docbook documentation of device tree.
>>
>> There are at least a couple of approaches I could take for
>> submitting patches (and would be glad to hear of any other
>> approach that I did not think of):
>>
>> 1) The big ugly patchset referenced above, one patch per
>>    file.
>>      pro: exposes what changes were made to each function
>>           documentation header
>>      con: very dense and not very readable
>>      con: the mechanical corrections create a lot of noise if
>>           the reviewer wants to view actual content changes
>>      con: probably more likely to conflict with code patches
>>           in a way that is not easily fixed
> 
> This is fine with me. Let's not over complicate things. There aren't
> that many changes typically in a cycle, so we can deal with it. I'd
> expect most changes would not collide as docbook comments and code
> changes are separated somewhat.

Thanks, I like less complication in my life. :-)

> 
> I'd like a git branch for this. I'll keep it separate until -rc6 or so
> and then you can rebase things then if merging becomes a problem. Or
> we can drop any problematic patches.

Sounds like a good plan.  I will send the patches to the mail list
for review as well as keep a git branch.

> 
>> 2) Split method 1 into stages (one patch per file for each stage).
>>    Examples of some possible stages are:
>>    - white space fixes
>>    - syntax fixes
>>    - incorrect argument list fixes
>>    - incorrect return type fixes
>>    - incorrect return value fixes
>>    - incorrect behavior description fixes
>>    - confusing behavior description fixes
>>      pro: it would be easier to review patches for many of the stages
>>      con: a lot more patches
>>      con: maybe difficult to handle conflicts with code patches
>>      con: maybe difficult to rework patches for review comments (changes
>>           for an earlier stage are likely to impact a patch for a later
>>           stage)
>>
>> 3) Do one patch series to remove all docbook function header documentation.
>>    Do a second patch series to add the updated docbook function header
>>    documentation.  For each of the two series, one patch per file.
>>      pro: the patches are much easier to read
>>      pro: it might be easier to resolve conflicts with source patches
>>           (either you dropping a few hunks or me redoing the docbook patch
>>           to remove the conflict)
>>      con: the actual changes to what the documentation says are not visible
>>
>> My current version of the patches is against 4.7-rc2.  I will have to update
>> this to 4.7 or 4.8-rc1 (I would assume that 4.8-rc1 would make more sense).
> 
> You've followed all the documentation changes for 4.8 using Sphinx,
> right? Is this going to impact your work?

I've been following at a distance for the last year.  The last I heard the intent
was to not change the syntax in the source files (though there was muttering
about possibly enhancing the syntax).  I have articles on Linux Sphinx open in a
browser, and will make sure I'm up to speed.  Worse case that I expect would
be if I have to make some sort of Sphinx file instead of a docbook file to
point to the source files containing the docbook headers.

> 
> Rob
> 

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

      parent reply	other threads:[~2016-08-02 22:51 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-02 17:28 how to structure some disruptive patches Frank Rowand
     [not found] ` <57A0D84C.9000605-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2016-08-02 18:53   ` Rob Herring
     [not found]     ` <CAL_JsqJ4QQ9HjHZYp-jgODTiu-BHiyo2ZV5u9ysBr-oL1xbF_Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-08-02 22:51       ` Frank Rowand [this message]

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=57A123E8.3070109@gmail.com \
    --to=frowand.list-re5jqeeqqe8avxtiumwx3w@public.gmane.org \
    --cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.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: link
Be 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.