From: Hans Verkuil <hverkuil@xs4all.nl>
To: Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
Daniel Vetter <daniel.vetter@ffwll.ch>
Cc: "ksummit-discuss@lists.linuxfoundation.org"
<ksummit-discuss@lists.linuxfoundation.org>
Subject: Re: [Ksummit-discuss] [CORE TOPIC] Reviewing new API/ABI
Date: Wed, 07 May 2014 15:50:46 +0200 [thread overview]
Message-ID: <536A3A36.90701@xs4all.nl> (raw)
In-Reply-To: <2168265.ezyDqFgGPA@avalon>
On 05/07/14 15:30, Laurent Pinchart wrote:
> On Wednesday 07 May 2014 14:36:27 Daniel Vetter wrote:
>> On Wed, May 7, 2014 at 12:12 PM, Laurent Pinchart wrote:
>>> We have seen several review, test and documentation procedures being
>>> developed for different subsystems in the recent past (two examples are
>>> the DRM i915 driver API test rules explained by Daniel Vetter in a reply
>>> to this mail thread, and the V4L test suite and documentation procedure)
>>> but I have seen little effort to consolidate good practice rules. The
>>> kernel would certainly benefit from both sharing information about how
>>> various subsystems tackle the API review/test/documentation problem.
>>>
>>> Forcing all subsystems to adhere and enforce a superset of rules would
>>> likely put too much burden on maintainers and developers, especially for
>>> the smaller subsystems. However, I believe we could help by gathering and
>>> consolidating the good practice rules in a single location under
>>> Documentation/. Maintainers could then implement those rules (or a subset
>>> thereof) without having to reinvent the wheel. Rules such as "return
>>> -EINVAL when a reserved parameter is set" are not complex to implement in
>>> code, the real challenge is to implement them in the brain of all
>>> developers and reviewers.
>>
>> I'd be very interested in a discussions about existing best practices
>> already developed in different subsystems and figuring out what
>> minimal standards we should requires across the board.
>
> So would I. The same topic is being discussed in the "stable issues" mail
> thread, it thus looks like a good candidate to me. On the V4L side Hans
> Verkuil (CC'ed) would likely be interested as a core V4L reviewer and
> userspace test case developer.
>
Absolutely. I've done a lot of work in that area. The V4L API is very large,
and without compliance tools it is almost impossible to write a faultless
driver. We now have about 95% coverage of the whole API and these days it is
a requirement of new drivers that they pass the test suite, otherwise I
will reject them.
And the flip-side of that is to provide applications with good test drivers
so they can test their application without requiring hard-to-get hardware
if they want to test support for features that are not commonly found.
I developed a very nice test driver for that. It needs a bit more work before
I can upstream it, though.
My experience with creating these tools is that they force you to take a
very critical look at the API. Any ambiguities you missed tend to be exposed
by creating these compliance tests.
Regards,
Hans
next prev parent reply other threads:[~2014-05-07 14:00 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-05-06 17:45 [Ksummit-discuss] [CORE TOPIC] Reviewing new API/ABI Andy Lutomirski
2014-05-06 17:58 ` josh
2014-05-06 19:12 ` Shuah Khan
2014-05-06 19:16 ` Andy Lutomirski
2014-05-06 19:37 ` Shuah Khan
2014-05-06 19:21 ` Johannes Berg
2014-05-06 19:43 ` Andy Lutomirski
2014-05-06 19:48 ` Johannes Berg
2014-05-06 19:51 ` Andy Lutomirski
2014-05-06 19:45 ` josh
2014-05-06 20:10 ` Daniel Vetter
2014-05-06 20:13 ` Andy Lutomirski
2014-05-07 10:12 ` Laurent Pinchart
2014-05-07 12:36 ` Daniel Vetter
2014-05-07 13:30 ` Laurent Pinchart
2014-05-07 13:50 ` Hans Verkuil [this message]
2014-05-12 14:15 ` Wolfram Sang
2014-05-07 17:48 ` Michael Kerrisk (man-pages)
2014-05-06 19:00 ` Greg KH
2014-05-06 20:07 ` Steven Rostedt
2014-05-06 20:34 ` Josh Triplett
2014-05-06 20:42 ` Steven Rostedt
2014-05-06 21:00 ` josh
2014-05-07 11:48 ` Jiri Kosina
2014-05-08 6:35 ` Li Zefan
2014-05-12 6:37 ` Jiri Kosina
2014-05-07 6:27 ` Michael Kerrisk (man-pages)
2014-05-06 19:57 ` Dan Carpenter
2014-05-08 18:15 ` Randy Dunlap
2014-05-09 11:33 ` Jeff Layton
2014-05-09 11:50 ` Michael Kerrisk (man-pages)
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=536A3A36.90701@xs4all.nl \
--to=hverkuil@xs4all.nl \
--cc=daniel.vetter@ffwll.ch \
--cc=ksummit-discuss@lists.linuxfoundation.org \
--cc=laurent.pinchart@ideasonboard.com \
/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.