From: "David S. Miller" <davem@davemloft.net>
To: dlstevens@us.ibm.com
Cc: shemminger@osdl.org, ak@suse.de, linux-kernel@vger.kernel.org,
mpm@selenic.com, netdev@vger.kernel.org,
netdev-owner@vger.kernel.org, sri@us.ibm.com
Subject: Re: [RFC][PATCH 0/3] TCP/IP Critical socket communication mechanism
Date: Thu, 15 Dec 2005 00:58:05 -0800 (PST) [thread overview]
Message-ID: <20051215.005805.114145703.davem@davemloft.net> (raw)
In-Reply-To: <OFB8B21C56.4F9E9A3C-ON882570D8.002CBD7B-882570D8.002FF8B1@us.ibm.com>
From: David Stevens <dlstevens@us.ibm.com>
Date: Thu, 15 Dec 2005 00:44:52 -0800
> In our internal discussions
I really wish this hadn't been discussed internally before being
implemented. Any such internal discussions are lost completely upon
the community that ends up reviewing such a core and invasive patch
such as this one.
> The critical socket(s) simply have to be out of the zero-sum game
> for the rest of the allocations, because those are the (only) path to
> getting a working swap device again.
The core fault of the critical socket idea is that it is painfully
simple to create a tree of dependant allocations that makes the
critical pool useless. IPSEC and tunnels are simple examples.
The idea to mark, for example, IPSEC key management daemon's sockets
as critical is flawed, because the key management daemon could hit a
swap page over the iSCSI device. Don't even start with the idea to
lock the IPSEC key management daemon into ram with mlock().
Tunnels are similar, and realistic nesting cases can be shown that
makes sizing via a special pool simply unfeasible, and whats more
there are no sockets involved.
Sockets do not exist in an allocation vacuum, they need to talk over
routes, and there are therefore many types of auxiliary data
associated with sending a packet besides the packet itself. All you
need is a routing change of some type and you're going to start
burning GFP_ATOMIC allocations on the next packet send.
I think making GFP_ATOMIC better would be wise. Alan's ideas harping
from the old 2.0.x/2.2.x NFS days could use some consideration as well.
next prev parent reply other threads:[~2005-12-15 8:58 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-12-14 9:12 [RFC][PATCH 0/3] TCP/IP Critical socket communication mechanism Sridhar Samudrala
2005-12-14 9:22 ` Andi Kleen
2005-12-14 17:55 ` Sridhar Samudrala
2005-12-14 18:41 ` Andi Kleen
2005-12-14 19:20 ` David Stevens
2005-12-15 3:39 ` Matt Mackall
2005-12-15 4:30 ` David S. Miller
2005-12-15 5:02 ` Matt Mackall
2005-12-15 5:23 ` David S. Miller
2005-12-15 5:48 ` Matt Mackall
2005-12-15 5:53 ` Nick Piggin
2005-12-15 5:56 ` Stephen Hemminger
2005-12-15 8:44 ` David Stevens
2005-12-15 8:58 ` David S. Miller [this message]
2005-12-15 9:27 ` David Stevens
2005-12-15 5:42 ` Andi Kleen
2005-12-15 6:06 ` Stephen Hemminger
2005-12-15 7:37 ` Sridhar Samudrala
2005-12-15 8:21 ` David S. Miller
2005-12-15 8:35 ` Arjan van de Ven
2005-12-15 8:55 ` [RFC] Fine-grained memory priorities and PI Kyle Moffett
2005-12-15 9:04 ` Andi Kleen
2005-12-15 12:51 ` Kyle Moffett
2005-12-15 13:31 ` Andi Kleen
2005-12-15 12:45 ` Con Kolivas
2005-12-15 12:58 ` Kyle Moffett
2005-12-15 13:02 ` Con Kolivas
2005-12-16 2:09 ` [RFC][PATCH 0/3] TCP/IP Critical socket communication mechanism Sridhar Samudrala
2005-12-16 17:48 ` Stephen Hemminger
2005-12-16 18:38 ` Sridhar Samudrala
2005-12-21 9:11 ` Pavel Machek
2005-12-21 9:39 ` David Stevens
2005-12-14 20:16 ` Jesper Juhl
2005-12-14 20:25 ` Ben Greear
2005-12-14 20:49 ` James Courtier-Dutton
2005-12-14 21:55 ` Sridhar Samudrala
2005-12-14 22:09 ` James Courtier-Dutton
2005-12-14 22:39 ` Ben Greear
2005-12-14 23:42 ` Sridhar Samudrala
2005-12-15 1:54 ` Mitchell Blank Jr
2005-12-15 11:38 ` James Courtier-Dutton
2005-12-15 11:47 ` Arjan van de Ven
2005-12-15 13:00 ` jamal
2005-12-15 13:07 ` Arjan van de Ven
2005-12-15 13:32 ` jamal
[not found] <5jUjW-8nu-7@gated-at.bofh.it>
[not found] ` <5jWYp-3K1-19@gated-at.bofh.it>
[not found] ` <5jXhZ-4kj-19@gated-at.bofh.it>
2005-12-16 8:35 ` Bodo Eggert
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=20051215.005805.114145703.davem@davemloft.net \
--to=davem@davemloft.net \
--cc=ak@suse.de \
--cc=dlstevens@us.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mpm@selenic.com \
--cc=netdev-owner@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=shemminger@osdl.org \
--cc=sri@us.ibm.com \
/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).