public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Tom Zanussi <zanussi@us.ibm.com>
To: akpm@osdl.org
Cc: linux-kernel@vger.kernel.org, karim@opersys.com,
	varap@us.ibm.com, richardj_moore@uk.ibm.com
Subject: Merging relayfs?
Date: Mon, 11 Jul 2005 20:10:42 -0500	[thread overview]
Message-ID: <17107.6290.734560.231978@tut.ibm.com> (raw)


Hi Andrew, can you please merge relayfs?  It provides a low-overhead
logging and buffering capability, which does not currently exist in
the kernel.

relayfs key features:

- Extremely efficient high-speed logging/buffering
- Simple mechanism for user-space data retrieval
- Very short write path
- Can be used in any context, including interrupt context
- No runtime resource allocation
- Doesn't do a kmalloc for each "packet"
- No need for end-recipient
- Data may remain buffered whether it is consumed or not
- Data committed to disk in bulk, not per "packet"
- Can be used in circular-buffer mode for flight-recording

The relayfs code has been in -mm for more than three months following
the extensive review that took place on LKML at the beginning of the
year, at which time we addressed all of the issues people had.  Since
then only a few minor patches to the original codebase have been
needed, most of which were sent to us by users; we'd like to thank
those who took the time to send patches or point out problems.

The code in the -mm tree has also been pounded on very heavily through
normal use and testing, and we haven't seen any problems with it - it
appears to be very stable.

We've also tried to make it as easy as possible for people to create
'quick and dirty' (or more substantial) kernel logging applications.
Included is a link to an example that demonstrates how useful this can
be.  In a nutshell, it uses relayfs logging functions to track
kmalloc/kfree and detect memory leaks.  The only thing it does in the
kernel is to log a small binary record for each kmalloc and kfree.
The data is then post-processed in user space with a simple Perl
script.  You can see an example of the output and the example itself
here:

    http://relayfs.sourceforge.net/examples.html#kleak


Last but not least, it's still small (40k worth of source),
self-contained and unobtrusive to the rest of the kernel.

In summary, relayfs is very stable, is useful to current users and
with inclusion, would be useful to many others.  If you can think of
anything we've overlooked or should work on to get relayfs to the
point of inclusion, please let us know.

Thanks,

Tom Zanussi
Karim Yaghmour



             reply	other threads:[~2005-07-12  1:14 UTC|newest]

Thread overview: 89+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-07-12  1:10 Tom Zanussi [this message]
2005-07-12  1:45 ` Merging relayfs? Andrew Morton
2005-07-12  2:17   ` Dave Airlie
2005-07-12  2:22   ` Tom Zanussi
2005-07-12  9:12     ` Baruch Even
2005-07-12  2:25 ` Christoph Hellwig
2005-07-12  2:34   ` Andrew Morton
2005-07-12  2:59     ` Karim Yaghmour
2005-07-14 13:26     ` Roman Zippel
2005-07-14 15:01       ` Tom Zanussi
2005-07-17 14:04         ` Roman Zippel
2005-07-17 15:52           ` Tom Zanussi
2005-07-18  5:17             ` Hareesh Nagarajan
2005-07-18 14:31               ` Tom Zanussi
2005-07-18 13:44             ` Steven Rostedt
2005-07-18 14:16               ` Roman Zippel
2005-07-18 14:32                 ` Karim Yaghmour
2005-07-18 15:20                   ` Roman Zippel
2005-07-18 15:58                     ` Tom Zanussi
2005-07-22 20:43                       ` Tom Zanussi
2005-07-22 23:19                         ` Karim Yaghmour
2005-07-23  2:31                           ` Tom Zanussi
2005-07-26  2:35                             ` Karim Yaghmour
2005-07-22 20:43                       ` Tom Zanussi
2005-07-18 14:36                 ` Steven Rostedt
2005-07-18 15:06                   ` Roman Zippel
2005-07-18 14:41               ` Tom Zanussi
2005-07-18  8:40         ` Richard J Moore
2005-07-12 13:03   ` Steven Rostedt
2005-07-12  3:05 ` Greg KH
2005-07-12  3:03   ` Karim Yaghmour
2005-07-12  3:24     ` Greg KH
2005-07-12  3:52       ` Karim Yaghmour
2005-07-12  4:30         ` Greg KH
2005-07-12  4:40           ` Karim Yaghmour
2005-07-12  5:23             ` Greg KH
2005-07-12 14:36               ` Steve Rotolo
2005-07-12  3:55       ` Tom Zanussi
2005-07-12  4:27         ` Greg KH
2005-07-12 14:01 ` Tomasz Kłoczko
2005-07-12 14:21   ` Baruch Even
2005-07-12 15:30     ` Tomasz Kłoczko
2005-07-12 15:16   ` Tom Zanussi
2005-07-12 15:44     ` Tomasz Kłoczko
2005-07-12 16:27       ` Tom Zanussi
2005-07-12 17:01         ` Tomasz Kłoczko
2005-07-12 17:23           ` Tom Zanussi
     [not found]             ` <Pine.BSO.4.62.0507121935500.6919@rudy.mif.pg.gda.pl>
     [not found]               ` <17108.1906.628755.613285@tut.ibm.com>
     [not found]                 ` <Pine.BSO.4.62.0507122026520.6919@rudy.mif.pg.gda.pl>
     [not found]                   ` <17108.5721.202275.377020@tut.ibm.com>
2005-07-12 19:29                     ` Tomasz Kłoczko
2005-07-12 20:44                       ` Vara Prasad
2005-07-12 21:02               ` Vara Prasad
2005-07-13 12:40                 ` Tomasz Kłoczko
2005-07-13 15:04                   ` Vara Prasad
2005-07-13 16:22                     ` Tomasz Kłoczko
2005-07-13  4:29           ` Vara Prasad
2005-07-13 13:47             ` Tomasz Kłoczko
2005-07-13 15:55               ` Karim Yaghmour
2005-07-13 15:56               ` Vara Prasad
2005-07-13 16:50                 ` Tomasz Kłoczko
2005-07-12 14:58 ` Jason Baron
2005-07-12 15:26   ` Tom Zanussi
2005-07-12 16:00     ` Steven Rostedt
2005-07-12 15:53   ` Steven Rostedt
2005-07-12 16:08     ` Tom Zanussi
2005-07-12 16:23       ` Steven Rostedt
2005-07-12 16:36         ` Tom Zanussi
2005-07-12 16:49           ` Steven Rostedt
2005-07-12 17:01             ` Tom Zanussi
2005-07-12 21:38               ` Tom Zanussi
2005-07-12 23:40                 ` Steven Rostedt
2005-07-12 23:55                   ` Andrew Morton
2005-07-13  0:08                     ` Steven Rostedt
2005-07-16 21:07 ` relayfs documentation sucks? bert hubert
2005-07-16 23:13   ` Tom Zanussi
2005-07-17  9:01     ` [PATCH] " bert hubert
2005-07-17 15:43       ` Tom Zanussi
2005-07-17 19:45         ` bert hubert
2005-07-17 20:47           ` Tom Zanussi
2005-07-18 13:27           ` Steven Rostedt
2005-07-20 21:27             ` Paul Jackson
2005-07-20 21:45               ` bert hubert
2005-07-21  0:31                 ` Paul Jackson
2005-07-22 20:01                 ` Paul Jackson
2005-07-22 20:33                   ` relayfs as infrastructure, ltt, systemtap, diskstat bert hubert
2005-07-23 18:53                     ` Christoph Hellwig
2005-07-23 18:53                   ` [PATCH] Re: relayfs documentation sucks? Christoph Hellwig
2005-07-25 23:47                     ` Karim Yaghmour
2005-07-26  5:15                       ` bert hubert
     [not found] <17107.6290.734560.231978@tut.ibm.com.suse.lists.linux.kernel>
     [not found] ` <20050712022537.GA26128@infradead.org.suse.lists.linux.kernel>
     [not found]   ` <20050711193409.043ecb14.akpm@osdl.org.suse.lists.linux.kernel>
2005-07-12  4:36     ` Merging relayfs? Andi Kleen
  -- strict thread matches above, loose matches on Subject: below --
2005-07-13  8:13 Spirakis, Charles

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=17107.6290.734560.231978@tut.ibm.com \
    --to=zanussi@us.ibm.com \
    --cc=akpm@osdl.org \
    --cc=karim@opersys.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=richardj_moore@uk.ibm.com \
    --cc=varap@us.ibm.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox