[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <6017.1174908318@redhat.com>
Date: Mon, 26 Mar 2007 12:25:18 +0100
From: David Howells <dhowells@...hat.com>
To: Andrew Morton <akpm@...ux-foundation.org>
Cc: bryan.wu@...log.com, Pekka Enberg <penberg@...helsinki.fi>,
linux-kernel@...r.kernel.org, Hugh Dickins <hugh@...itas.com>
Subject: Re: [PATCH -mm] Revoke core code: fix nommu arch compiling error bug
Andrew Morton <akpm@...ux-foundation.org> wrote:
> Offending patch is
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.21-rc4/2.6.21-rc4-mm1/broken-out/nommu-hide-vm_mm-in-nommu-mode.patch,
> which seems rather dumb. Or at least, its changelog does a good job of
> making it look dumb.
vm_mm is always NULL under NOMMU as it currently stands. As far as I know,
this has been true since the NOMMU mm stuff was first included (I'm not sure
the VMAs of the first NOMMU mm code *had* a vm_mm). Hugh (I think it was)
suggested that since this was always NULL, then it should be excised from the
struct in NOMMU-mode.
The reason is that, at the moment, VMAs are a global *shared* resource in
NOMMU-mode. Each process has a list of global VMAs that it subscribes to, but
that's it. This (a) slightly reduces the amount of metadata allocated
(possibly), and (b) makes sharing of executables and libraries much easier.
I have started on a patch to make VMAs non-shared, but it's not trivial. In
NOMMU-mode, there needs to be something to pin the memory a private mapping
uses that isn't required in MMU-mode. In the shared VMA thing, the VMA itself
can pin that memory...
I wonder if revoke_mm() is something that you can't do in NOMMU-mode. What
does it do?
David
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists