From: Sridhar Samudrala <sri@us.ibm.com>
To: Pavel Machek <pavel@suse.cz>
Cc: Matthew Dobson <colpatch@us.ibm.com>, Paul Jackson <pj@sgi.com>,
clameter@engr.sgi.com, linux-kernel@vger.kernel.org,
andrea@suse.de, linux-mm@kvack.org
Subject: Re: [patch 3/9] mempool - Make mempools NUMA aware
Date: Sat, 28 Jan 2006 08:14:47 -0800 [thread overview]
Message-ID: <43DB9877.7020206@us.ibm.com> (raw)
In-Reply-To: <20060128081641.GB1605@elf.ucw.cz>
Pavel Machek wrote:
> Hi!
>
> I'll probably regret getting into this discussion, but:
>
>
>>> Or Alan's suggested revival
>>> of the old code to drop non-critical network patches in duress.
>>>
>> Dropping non-critical packets is still in our plan, but I don't think that
>> is a FULL solution. As we mentioned before on that topic, you can't tell
>> if a packet is critical until AFTER you receive it, by which point it has
>> already had an skbuff (hopefully) allocated for it. If your network
>> traffic is coming in faster than you can receive, examine, and drop
>> non-critical packets you're hosed.
>>
>
> Why? You run out of atomic memory, start dropping the packets before
> they even enter the kernel memory, and process backlog in the
> meantime. Other hosts realize you are dropping packets and slow down,
> or, if they are malicious, you just end up consistently dropping 70%
> of packets. But that's okay.
>
>
>> I still think some sort of reserve pool
>> is necessary to give the networking stack a little breathing room when
>> under both memory pressure and network load.
>>
>
> "Lets throw some memory there and hope it does some good?" Eek? What
> about auditing/fixing the networking stack, instead?
>
The other reason we need a separate critical pool is to satifsy critical
GFP_KERNEL allocations
when we are in emergency. These are made in the send side and we cannot
block/sleep.
>
>>> * this doesn't really solve the problem (network can still starve)
>>>
>> Only if the pool is not large enough. One can argue that sizing the pool
>> appropriately is impossible (theoretical incoming traffic over a GigE card
>> or two for a minute or two is extremely large), but then I guess we
>> shouldn't even try to fix the problem...?
>>
>
> And what problem are you trying to fix, anyway? Last time I asked I
> got reply around some strange clustering solution that absolutely has
> to survive two minutes. And no, your patches do not even solve that,
> because sizing the pool is impossible.
>
Yes, it is true that sizing the critical pool may be difficult if we use
it for all incoming allocations.
May be as an initial solution we could just depend on dropping
non-critical incoming packets
and use the critical pool only for outgoing allocations. We could
definitely size the pool if we use
it only for allocations for critical outgoing packets.
Thanks
Sridhar
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2006-01-28 16:14 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20060125161321.647368000@localhost.localdomain>
2006-01-25 19:39 ` [patch 1/9] mempool - Add page allocator Matthew Dobson
2006-01-25 19:39 ` [patch 2/9] mempool - Use common mempool " Matthew Dobson
2006-01-25 19:40 ` [patch 4/9] mempool - Update mempool page allocator user Matthew Dobson
2006-01-25 19:40 ` [patch 5/9] mempool - Update kmalloc mempool users Matthew Dobson
2006-01-25 19:40 ` [patch 6/9] mempool - Update kzalloc " Matthew Dobson
2006-01-26 7:30 ` Pekka Enberg
2006-01-26 22:03 ` Matthew Dobson
2006-01-25 19:40 ` [patch 8/9] slab - Add *_mempool slab variants Matthew Dobson
2006-01-26 7:41 ` Pekka Enberg
2006-01-26 22:40 ` Matthew Dobson
2006-01-27 7:09 ` Pekka J Enberg
2006-01-27 7:10 ` Pekka J Enberg
2006-01-25 19:40 ` [patch 9/9] slab - Implement single mempool backing for slab allocator Matthew Dobson
2006-01-26 8:11 ` Pekka Enberg
2006-01-26 22:48 ` Matthew Dobson
2006-01-27 7:22 ` Pekka J Enberg
2006-01-25 23:51 ` [patch 1/9] mempool - Add page allocator Matthew Dobson
2006-01-25 23:51 ` [patch 3/9] mempool - Make mempools NUMA aware Matthew Dobson
2006-01-26 17:54 ` Christoph Lameter
2006-01-26 22:57 ` Matthew Dobson
2006-01-26 23:15 ` Christoph Lameter
2006-01-26 23:24 ` Matthew Dobson
2006-01-26 23:29 ` Christoph Lameter
2006-01-27 0:15 ` Matthew Dobson
2006-01-27 0:21 ` Christoph Lameter
2006-01-27 0:34 ` Matthew Dobson
2006-01-27 0:39 ` Christoph Lameter
2006-01-27 0:44 ` Matthew Dobson
2006-01-27 0:57 ` Christoph Lameter
2006-01-27 1:07 ` Andi Kleen
2006-01-27 10:51 ` Paul Jackson
2006-01-28 1:00 ` Matthew Dobson
2006-01-28 5:08 ` Paul Jackson
2006-01-28 8:16 ` Pavel Machek
2006-01-28 16:14 ` Sridhar Samudrala [this message]
2006-01-28 16:41 ` Pavel Machek
2006-01-28 16:53 ` Sridhar Samudrala
2006-01-28 22:59 ` Pavel Machek
2006-01-28 23:10 ` Let the flames begin... [was Re: [patch 3/9] mempool - Make mempools NUMA aware] Pavel Machek
2006-01-27 0:23 ` [patch 3/9] mempool - Make mempools NUMA aware Benjamin LaHaise
2006-01-27 0:35 ` Matthew Dobson
2006-01-27 3:23 ` Benjamin LaHaise
2006-01-28 1:08 ` Matthew Dobson
2006-01-25 23:51 ` [patch 7/9] mempool - Update other mempool users Matthew Dobson
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=43DB9877.7020206@us.ibm.com \
--to=sri@us.ibm.com \
--cc=andrea@suse.de \
--cc=clameter@engr.sgi.com \
--cc=colpatch@us.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=pavel@suse.cz \
--cc=pj@sgi.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