LWN.net Logo

relay: Migrate from relayfs to a generic relay API.

From:  Paul Mundt <lethal@linux-sh.org>
To:  Greg KH <greg@kroah.com>, Christoph Hellwig <hch@infradead.org>, zanussi@us.ibm.com
Subject:  [PATCH 0/5] relay: Migrate from relayfs to a generic relay API.
Date:  Sun, 19 Feb 2006 23:07:33 +0200
Cc:  linux-kernel@vger.kernel.org
Archive-link:  Article, Thread

This is a small patch set for getting rid of relayfs, and moving the core of
its functionality to kernel/relay.c. The API is kept consistent for everything
but the relayfs-specific bits, meaning people will have to use other file
systems to implement relay channel buffers.

There's support for a sysfs relay attribute (resent with a signed-off-by
tag and cleaned up description), and it's also trivial to do via debugfs.

Patches are ordered by invasiveness, the first few start out relatively
harmless, with the later ones removing relayfs entirely. There's
definitely room for cleanup and improvement in the new relay.c, but one
thing at a time..

Tested with sysfs. Against current git.

To get an idea of the total amount of changes:

---

 fs/relayfs/Makefile        |    4 
 fs/relayfs/buffers.c       |  190 ---------
 fs/relayfs/buffers.h       |   12 
 fs/relayfs/inode.c         |  581 ----------------------------
 fs/relayfs/relay.c         |  482 -----------------------
 fs/relayfs/relay.h         |    9 
 include/linux/relayfs_fs.h |  290 --------------
 fs/Kconfig                 |   12 
 fs/Makefile                |    1 
 fs/sysfs/Makefile          |    3 
 fs/sysfs/dir.c             |   28 +
 fs/sysfs/inode.c           |    5 
 fs/sysfs/relay.c           |   72 +++
 include/linux/relay.h      |  281 +++++++++++++
 include/linux/relayfs_fs.h |    3 
 include/linux/sysfs.h      |   33 +
 init/Kconfig               |   11 
 kernel/Makefile            |    1 
 kernel/relay.c             |  923 ++++++++++++++++++++++++++++++++++++++++++++-
 19 files changed, 1349 insertions(+), 1592 deletions(-)

Copyright © 2006, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds