All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Ira W. Snyder" <iws@ovro.caltech.edu>
To: Greg KH <gregkh@suse.de>
Cc: stefani@seibold.net, linux-kernel@vger.kernel.org,
	akpm@linux-foundation.org, andi@firstfloor.org,
	alan@lxorguk.ukuu.org.uk, tytso@mit.edu
Subject: Re: [PATCH 0/4] enhanced reimplemention of the kfifo API
Date: Tue, 20 Apr 2010 13:42:58 -0700	[thread overview]
Message-ID: <20100420204258.GK7651@ovro.caltech.edu> (raw)
In-Reply-To: <20100420201642.GA32373@suse.de>

On Tue, Apr 20, 2010 at 01:16:42PM -0700, Greg KH wrote:
> On Tue, Apr 20, 2010 at 10:06:36PM +0200, stefani@seibold.net wrote:
> > From: Stefani Seibold <stefani@seibold.net>
> > 
> > This is a complete reimplementation of the new kfifo API, which is now 
> > really generic, type save and type definable. 
> > 
> > The API is still stable, no code which use the current  kfifo API must 
> > be modified!
> > 
> > Here are the results of the text section usage:
> > 
> > Example 1:
> >                         kfifo_put/_get  kfifo_in/out    current kfifo
> > dynamic allocated       0x000002a8      0x00000291      0x00000299
> > in place                0x00000291      0x0000026e      0x00000273
> > 
> > kfifo.c                 new             old
> > text section size       0x00000be5      0x000008b2
> > 
> > As you can see, kfifo_put/kfifo_get creates a little bit more code than 
> > kfifo_in/kfifo_out, but it is much faster (the code is inline).
> > 
> > The code is complete hand crafted and optimized. The text section size is as 
> > small as possible. You get all the fifo handling in only 3 kb. This includes 
> > type safe fix size records, dynamic records and DMA handling.
> > 
> > This should be the final version. All requested features are implemented.
> > 
> > Note: Most features of this API doesn't have any users. All functions which
> > are not used in the next 9 months will be removed. So, please adapt your
> > drivers and other sources as soon as possible to the new API and post it. 
> > 
> > This are the features which are currently not used in the kernel:
> > 
> > kfifo_to_user()
> > kfifo_from_user()
> > kfifo_dma_....() macros
> > kfifo_esize()
> > kfifo_recsize()
> > kfifo_put()
> > kfifo_get()
> > the fixed size record elements, exclude "unsigned char" fifo's and
> > the variable size records fifo's
> 
> If you have features that have no users, why add them?  Do you think
> that some drivers need/want these features?
> 

As a user who has been following this patch set for quite a while, I
have uses in my drivers for the kfifo_*_user() functions as well as well
as the kfifo_dma_*() functions.

I'm not especially comfortable developing against changes that aren't
upstream, especially the "core infrastructure" type changes. This is the
reason I haven't ported to the updated kfifo API yet. I hunch other
"small time" developers have the same worries.

Unfortunately, my drivers are not upstream, as they're for very custom
hardware, and would not be useful on anything outside of my lab. I'm
happy to send the source to anyone interested.

Ira

  parent reply	other threads:[~2010-04-20 20:43 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-04-20 20:06 [PATCH 0/4] enhanced reimplemention of the kfifo API stefani
2010-04-20 20:06 ` [PATCH 1/4] fix kfifo miss use of nozami.c stefani
2010-04-20 20:06 ` [PATCH 2/4] add the new generic kfifo API stefani
2010-04-20 20:06 ` [PATCH 3/4] replace the old non generic API stefani
2010-04-20 20:06 ` [PATCH 4/4] add example files to the kernel sample directory stefani
2010-04-20 20:16 ` [PATCH 0/4] enhanced reimplemention of the kfifo API Greg KH
2010-04-20 20:35   ` Stefani Seibold
2010-04-20 22:13     ` Greg KH
2010-04-20 20:42   ` Ira W. Snyder [this message]
2010-04-20 22:14     ` Greg KH
  -- strict thread matches above, loose matches on Subject: below --
2010-08-10  6:40 stefani
2010-07-20 13:05 stefani
2010-04-18 21:05 stefani
2010-04-18 20:54 stefani
2010-02-12  7:52 Stefani Seibold

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=20100420204258.GK7651@ovro.caltech.edu \
    --to=iws@ovro.caltech.edu \
    --cc=akpm@linux-foundation.org \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=andi@firstfloor.org \
    --cc=gregkh@suse.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=stefani@seibold.net \
    --cc=tytso@mit.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 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.