linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Rob Landley <rob@landley.net>
To: Nick Piggin <npiggin@suse.de>
Cc: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	linux-fsdevel@vger.kernel.org,
	Christian Borntraeger <borntraeger@de.ibm.com>,
	"Eric W. Biederman" <ebiederm@xmission.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Jens Axboe <axboe@kernel.dk>
Subject: Re: [patch] rewrite rd
Date: Tue, 4 Dec 2007 13:53:29 -0600	[thread overview]
Message-ID: <200712041353.31086.rob@landley.net> (raw)
In-Reply-To: <20071204092940.GA9618@wotan.suse.de>

On Tuesday 04 December 2007 03:29:40 Nick Piggin wrote:
> On Tue, Dec 04, 2007 at 01:55:17AM -0600, Rob Landley wrote:
> > On Monday 03 December 2007 22:26:28 Nick Piggin wrote:
> > > There is one slight downside -- direct block device access and
> > > filesystem metadata access goes through an extra copy and gets stored
> > > in RAM twice. However, this downside is only slight, because the real
> > > buffercache of the device is now reclaimable (because we're not playing
> > > crazy games with it), so under memory intensive situations, footprint
> > > should effectively be the same -- maybe even a slight advantage to the
> > > new driver because it can also reclaim buffer heads.
> >
> > For the embedded world, initramfs has pretty much rendered initrd
> > obsolete, and that was the biggest user of the ramdisk code I know of. 
> > Beyond that, loopback mounts give you more flexible transient block
> > devices than ramdisks do.  (In fact, ramdisks are such an amazing pain to
> > use/size/free that if I really needed something like that I'd just make a
> > loopback mount in a ramfs instance.)
>
> They are, although we could easily hook up a couple more ioctls for them
> now (if anybody is interested).

>From a usability perspective, an ioctl is no substitute for being able to 
resize a device with "dd".  (Or for that matter, make it sparse.)

> The rd driver can potentially be a _lot_ more scalable than the loop
> driver. It's completely lockless in the fastpath and doesn't even dirty any
> cachelines except for the actual destination memory. OK, this is only
> really important for testing purposes (eg. testing scalability of a
> filesystem etc.) But it is one reason why I (personally) want brd...

I wouldn't say not important: The "database in RAM" people will probably love 
you, at least if they insist on using Oracle.  (Filesystem schmilesystem, 
gimme a raw block device and let me implement my own filesystem from 
userspace...)

But I'm not personally likely to care. :)

> > Embedded users who still want a block interface for memory are generally
> > trying to use a cramfs or squashfs image out of ROM or flash, although
> > there are flash-specific filesystems for this and I dunno if they're
> > actually mounting /dev/mem at an offset or something (md?  losetup -o? 
> > Beats me, I haven't tried that myself yet...)
>
> OK, it would be interesting to hear from anyone using rd for things like
> cramfs.

I'd be interested in that too.  I've heard it proposed a lot but not actually 
seen anyone bother to implement it yet...

Rob
-- 
"One of my most productive days was throwing away 1000 lines of code."
  - Ken Thompson.

  reply	other threads:[~2007-12-04 19:53 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-12-04  4:26 [patch] rewrite rd Nick Piggin
2007-12-04  6:29 ` Andrew Morton
2007-12-04  7:01   ` Nick Piggin
2007-12-04  7:08     ` Nick Piggin
2007-12-04  7:55 ` Rob Landley
2007-12-04  9:29   ` Nick Piggin
2007-12-04 19:53     ` Rob Landley [this message]
2007-12-04  9:54 ` Christian Borntraeger
2007-12-04 10:10   ` Nick Piggin
2007-12-04 11:21     ` [patch] rd: support XIP Nick Piggin
2007-12-04 11:23       ` [patch] ext2: xip check fix Nick Piggin
2007-12-05 15:43         ` Carsten Otte
2007-12-05 23:33           ` Nick Piggin
2007-12-06  8:43             ` Carsten Otte
2007-12-06  8:52               ` Nick Piggin
2007-12-06  9:59                 ` Carsten Otte
2007-12-06 10:18                   ` Nick Piggin
2007-12-06 10:24                     ` Carsten Otte
2007-12-06 18:11                       ` Rob Landley
2007-12-07  3:22                         ` Jared Hulbert
2007-12-07  4:17                           ` Rob Landley
2007-12-07  4:23                             ` Nick Piggin
2007-12-07  4:40                             ` Jared Hulbert
2007-12-07  8:59                           ` Carsten Otte
2007-12-07  9:52                             ` Jared Hulbert
2007-12-04 11:26       ` [patch] rd: support XIP Andrew Morton
2007-12-04 11:35         ` Nick Piggin
2007-12-04 13:00           ` [patch] mm: fix XIP file writes Nick Piggin
2007-12-10 14:38             ` Christian Borntraeger
2007-12-12  4:03               ` Nick Piggin
2007-12-04 12:06       ` [patch] rd: support XIP Duane Griffin
2007-12-04 13:03         ` [patch] rd: support XIP (updated) Nick Piggin
2008-01-14 16:47 ` [patch] rewrite rd Matthew Wilcox
2008-01-14 17:21   ` Jens Axboe

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=200712041353.31086.rob@landley.net \
    --to=rob@landley.net \
    --cc=akpm@linux-foundation.org \
    --cc=axboe@kernel.dk \
    --cc=borntraeger@de.ibm.com \
    --cc=ebiederm@xmission.com \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=npiggin@suse.de \
    /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;
as well as URLs for NNTP newsgroup(s).