From: "Stephen C. Tweedie" <sct@redhat.com>
To: "H. Peter Anvin" <hpa@zytor.com>
Cc: linux-kernel@vger.kernel.org, Stephen Tweedie <sct@redhat.com>
Subject: Re: RFC: pageable kernel-segments
Date: Fri, 20 Apr 2001 13:13:57 +0100 [thread overview]
Message-ID: <20010420131357.B1444@redhat.com> (raw)
In-Reply-To: <27525795B28BD311B28D00500481B7601F11D9@ftrs1.intranet.ftr.nl> <9bi53d$5n6$1@cesium.transmeta.com>
In-Reply-To: <9bi53d$5n6$1@cesium.transmeta.com>; from hpa@zytor.com on Tue, Apr 17, 2001 at 12:21:17PM -0700
Hi,
On Tue, Apr 17, 2001 at 12:21:17PM -0700, H. Peter Anvin wrote:
> > Certain parts of drivers could get the __pageable prefix or so
> > (like the __init parts of drivers which get removed) for letting
> > the paging-code know that it can be discared if memory-pressure
> > demands it.
>
> VMS does this. It at least used to have a great tendency to crash
> itself, because it swapped out something that was called from a driver
> that was called by the swapper -- resulting in deadlock. You need
> iron discipline for this to work right in all circumstances.
Actually, VMS doesn't do this, precisely because it is so hard to get
right. VMS has both paged and non-paged pools for dynamically
allocated kernel memory, but the kernel code itself is non-pageable.
The big problem with such pageable memory isn't really device driver
deadlocks --- the easy rule which makes that work is simply never to
use paged pool from a driver which might be involved in swapping. :)
Even more tricky is the handling of kernel locking --- you cannot
access any paged memory with a spinlock held unless you have pinned
the pages in core beforehand.
--Stephen
next prev parent reply other threads:[~2001-04-20 13:14 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-04-17 15:57 RFC: pageable kernel-segments Heusden, Folkert van
2001-04-17 16:07 ` Disconnect
[not found] ` <01041720013700.02396@idun>
2001-04-20 13:41 ` Disconnect
2001-04-17 19:21 ` H. Peter Anvin
2001-04-17 23:58 ` Albert D. Cahalan
2001-04-20 12:13 ` Stephen C. Tweedie [this message]
2001-04-20 14:23 ` Venkatesh Ramamurthy
2001-04-20 14:49 ` Alan Cox
2001-04-20 15:40 ` Venkatesh Ramamurthy
2001-04-20 18:51 ` Stephen C. Tweedie
2001-04-21 15:48 ` Rik van Riel
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=20010420131357.B1444@redhat.com \
--to=sct@redhat.com \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.