From: Lai Jiangshan <jiangshanlai@gmail.com>
To: "Peter Hüwe" <PeterHuewe@gmx.de>
Cc: Dan Carpenter <dan.carpenter@oracle.com>,
ksummit-discuss@lists.linuxfoundation.org
Subject: Re: [Ksummit-discuss] [CORE-TOPIC] Documentation
Date: Tue, 14 Jul 2015 01:05:14 +0800 [thread overview]
Message-ID: <CAJhGHyDGLKvGTxu=oFDVZqo0oW-TX_WcA-qX0v+UWtyuVZVf=Q@mail.gmail.com> (raw)
In-Reply-To: <201507130038.01474.PeterHuewe@gmx.de>
On Mon, Jul 13, 2015 at 6:38 AM, Peter Hüwe <PeterHuewe@gmx.de> wrote:
>
> Hi,
>
> as we talked about recruiting in the other thread I realized that one thing
> that might reduce the entrance barrier a bit (apart from tooling and flow)
> would be proper documentation.
>
> I know documenation is usually not a developers most favorite task, but here
> are my findings anyway:
Hi, all
Comparing to the documents of functions, some other kinds of documents
might be more important but even seldom.
First, documents of why/what/how.
- Why the functionality/subsystem/structure/function/marco is needed?
- what is it
- How to implement it.
These documents are less and sometimes they are hidden in changelog.
why/what/how is suggested in changelog, so I often use git-blame
to fetch them, but it is inconvenient for normal-reviewers when it is
stored outside of kernel_src/Documentation/.
Secondly, documents of architecture/design.
- architecture overview
- architecture for control/data flow
These documents are less and sometimes they don't have proper picture
inside them. Kernel developers like ascii pictures, but ascii pictures
can't provide enough information with decent density. and it is hard
to draw, to maintain... etc.
I once borrowed the two pictures in the page7/page9 of this:
http://www.linux-kongress.org/2010/slides/KVM-Architecture-LK2010.pdf
and gave 3 hours training to someones. It helped me showed/remembered the
architecture, the interfaces between the components and the major
structures inside every components. It would be useful if we also have
sufficient document of this kind in the kernel.
The documents of functions are also the documents of interfaces
between the components, they are important, so I also support for
Peter Hüwe.
And as noted before, changlog is also document for me, and IDEs(vim)
have the functionality to find the definition/usage, I also hope they
have the functionality to "find the changelog of this line".
Thanks,
Lai
>
>
>
> I had a quick look into our guideline (Documentation/kernel-doc-nano-
> HOWTO.txt) and it states:
>
> 1)
> > We definitely need kernel-doc formatted documentation for functions
> > that are exported to loadable modules using EXPORT_SYMBOL.
> This is definitely not the case at the moment :/ -- there are a lot of
> undocumented EXPORT_SYMBOL functions.
>
> 2)
> > We also look to provide kernel-doc formatted documentation for
> > functions externally visible to other kernel files (not marked
> > "static").
> Even less
>
> 3)
> > We also recommend providing kernel-doc formatted documentation
> > for private (file "static") routines, for consistency of kernel
> > source code layout. But this is lower priority and at the
> > discretion of the MAINTAINER of that kernel source file.
> Don't even talk about that :)
>
>
> Imho new code should definitely have this documentation, especially for #1 and
> #2 -- but maybe even for #3.
>
>
>
>
> So this leads me to following questions:
> - How can we easily identify missing documentation?
> -- Maybe Julia can come up with some coccinelle magic?
> -- Maybe even mark non-extractable documentation and convert it.
> -- In the document it mentions scripts/basic/doproc.c checks for missing
> documentation, but this file does not exist anymore :/
>
>
>
>
> - how can we (automatically) support documentation?
> -- Can / should we create a tool that annotates functions and data types with
> a template documentation (I know good editors do something similar, but is the
> proposed style in concordance with the kernel doc style? At least it looks
> quite a lot like doxygen?)
>
> - How different is the kernel doc style to doxygen?
>
>
> - We are constantly looking for tasks newcomers can take on -- writing
> appropriate documentation is usually not that hard on the one hand and on the
> other people will learn a lot about the code they are documenting.
> -- maybe make it easier make use of Steven Rostedts proposed Kernel Patch
> submitting web form :P
>
> - new checkpatch option for checking the existance of documentation? *ducks
> and runs away*
>
>
> - and who would be in to join me in documenting everything :P
>
>
> Thanks,
> Peter
> _______________________________________________
> Ksummit-discuss mailing list
> Ksummit-discuss@lists.linuxfoundation.org
> https://lists.linuxfoundation.org/mailman/listinfo/ksummit-discuss
next prev parent reply other threads:[~2015-07-13 17:05 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-12 22:38 Peter Hüwe
2015-07-12 23:15 ` Julia Lawall
2015-07-14 11:59 ` Mauro Carvalho Chehab
2015-07-13 9:47 ` Alexey Dobriyan
2015-07-13 16:01 ` Randy Dunlap
2015-07-13 16:37 ` Steven Rostedt
2015-07-13 16:46 ` David Woodhouse
2015-07-13 17:35 ` Steven Rostedt
2015-07-13 19:22 ` Peter Hüwe
2015-07-13 19:28 ` Peter Hüwe
2015-07-13 17:42 ` Jason Cooper
2015-07-13 18:11 ` Steven Rostedt
2015-07-14 3:56 ` Zefan Li
2015-07-13 19:25 ` Peter Hüwe
2015-07-13 22:10 ` Laurent Pinchart
2015-07-13 17:45 ` Jonathan Corbet
2015-07-13 19:46 ` Peter Hüwe
2015-07-14 2:36 ` Jonathan Corbet
2015-07-14 8:40 ` Laurent Pinchart
2015-07-14 11:19 ` Daniel Vetter
2015-07-14 12:43 ` Mauro Carvalho Chehab
2015-07-14 12:53 ` Jonathan Corbet
2015-07-14 13:57 ` Laurent Pinchart
2015-07-14 6:44 ` Johannes Berg
2015-07-13 19:20 ` Peter Hüwe
2015-07-13 23:01 ` Laurent Pinchart
2015-07-13 17:05 ` Lai Jiangshan [this message]
2015-07-13 17:42 ` Jonathan Corbet
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='CAJhGHyDGLKvGTxu=oFDVZqo0oW-TX_WcA-qX0v+UWtyuVZVf=Q@mail.gmail.com' \
--to=jiangshanlai@gmail.com \
--cc=PeterHuewe@gmx.de \
--cc=dan.carpenter@oracle.com \
--cc=ksummit-discuss@lists.linuxfoundation.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox