public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Matt Mackall <mpm@selenic.com>
To: Matt Miller <mmiller@hick.org>
Cc: linux-kernel@vger.kernel.org
Subject: Re: [PATCH] 2.6: mmap complement, fdmap
Date: Mon, 22 Mar 2004 18:52:04 -0600	[thread overview]
Message-ID: <20040323005204.GF8366@waste.org> (raw)
In-Reply-To: <PFEHKADDODPLDDIJFACJAEJHEAAA.mmiller@hick.org>

On Mon, Mar 22, 2004 at 01:26:01PM -0600, Matt Miller wrote:
> > > > a) what the hell for?
> > >
> > > It's targetted mainly as a performance enhancer.  Some of the specific
> > > scenarios where it would be useful are:
> > >
> > > a) When one cannot afford to take the performance hit of synchronizing
> > >    a memory range to disk due to disk size limitations or speed
> > >    requirements.
> > > b) Some things can benefit from the ability to interface with
> > memory as a
> > >    file.
> > >
> > > The specific reason for implementing this was to allow for
> > loading dynamic
> > > libraries in the context of a process without having to write them to
> > > disk.
> >
> > How about tmpfs/ramfs instead? Open a file on tmpfs and mmap it and
> > you've got the same thing without any of the nasty corner cases.
> 
> Because tmpfs does not allow you to map a file descriptor to a specific
> memory
> range inside a process.  tmpfs allows you to open a file that exists only
> in memory, yes, but it does not accomplish what fdmap tries to accomplish.
> fdmap allows you to access arbitrary memory ranges as if they were a file.
> tmpfs allows you to access a file that happens to only exist in memory.
> You do not control the address range that tmpfs/ramfs map to.

You don't? Is this not what the first argument of mmap provides? I'm
afraid I can't see how it matters, as you'd have to populate said map
afterwards anyway.

Point is, mmap() is already its own complement and what you're
proposing is a hairy solution in search of a problem as the VFS
maintainer already pointed out.

-- 
Matt Mackall : http://www.selenic.com : Linux development and consulting

  reply	other threads:[~2004-03-23  0:52 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-03-22  4:43 [PATCH] 2.6: mmap complement, fdmap Matt Miller
2004-03-22  5:30 ` viro
2004-03-22  6:14   ` Matt Miller
2004-03-22 19:00     ` Matt Mackall
2004-03-22 19:26       ` Matt Miller
2004-03-23  0:52         ` Matt Mackall [this message]
2004-03-23  4:26           ` Matt Miller

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=20040323005204.GF8366@waste.org \
    --to=mpm@selenic.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mmiller@hick.org \
    /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