* Re: Fw: 2.6.15-rc2-mm1 problems (get_cpu / NUMA optimizations)
[not found] <20051123.155603.64967447.davem@davemloft.net>
@ 2005-11-24 20:58 ` Harald Welte
2005-11-24 22:11 ` Eric Dumazet
0 siblings, 1 reply; 3+ messages in thread
From: Harald Welte @ 2005-11-24 20:58 UTC (permalink / raw)
To: David S. Miller; +Cc: Netfilter Development Mailinglist, kaber, Eric Dumazet
[-- Attachment #1: Type: text/plain, Size: 1406 bytes --]
On Wed, Nov 23, 2005 at 03:56:03PM -0800, David S. Miller wrote:
>
> I've seen this reported multiple times.
>
> It seems that module load is attempted by IP-tables while
> some locks are held, or similar.
yes, this was introduced by the recent NUMA patches that introduced
get_cpu() / put_cpu() all over the place.
Seems like I only now realize the implications that this has all over
the code, and to be honest, I'm not confident that there is a short-term
fix since a lot of code needs to be audited.
Also, apart from just the iptables core, we actually call the
checkentry() and destroy() functions of the match/target extensions
under get_cpu() now. Plugin authors always assumed that they'd be able
to do stuff like kmalloc(GFP_KERNEL) since they are guaranteed to always
only be called from userspace context under the ipt_mutex.
I'm further analyzing our options, but we might have to pull out that
NUMA change, especially since I'm heading for FOSS.in/linux-bangalore in
a couple of days.
--
- Harald Welte <laforge@netfilter.org> http://netfilter.org/
============================================================================
"Fragmentation is like classful addressing -- an interesting early
architectural error that shows how much experimentation was going
on while IP was being designed." -- Paul Vixie
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Fw: 2.6.15-rc2-mm1 problems (get_cpu / NUMA optimizations)
2005-11-24 20:58 ` Fw: 2.6.15-rc2-mm1 problems (get_cpu / NUMA optimizations) Harald Welte
@ 2005-11-24 22:11 ` Eric Dumazet
2005-11-25 2:18 ` Patrick McHardy
0 siblings, 1 reply; 3+ messages in thread
From: Eric Dumazet @ 2005-11-24 22:11 UTC (permalink / raw)
To: Harald Welte; +Cc: Netfilter Development Mailinglist, David S. Miller, kaber
Harald Welte a écrit :
> On Wed, Nov 23, 2005 at 03:56:03PM -0800, David S. Miller wrote:
>
>>I've seen this reported multiple times.
>>
>>It seems that module load is attempted by IP-tables while
>>some locks are held, or similar.
>
>
> yes, this was introduced by the recent NUMA patches that introduced
> get_cpu() / put_cpu() all over the place.
>
>
Hum... I was not aware that disabling preemption (in get_cpu()) had this
effect (ie not allowing to sleep). I was using get_cpu() to bind the thread to
the current cpu, maybe there is something better ?
If not, we can zap get_cpu()/pu_cpu() and use raw_smp_processor_id() as a hint
only, (and dont care of preemption/cpu migration), as the value is only used
as a hint to speedup operations in do_replace(), do_add_counters(),
ipt_unregister_table(), translate_table()...
Eric
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Fw: 2.6.15-rc2-mm1 problems (get_cpu / NUMA optimizations)
2005-11-24 22:11 ` Eric Dumazet
@ 2005-11-25 2:18 ` Patrick McHardy
0 siblings, 0 replies; 3+ messages in thread
From: Patrick McHardy @ 2005-11-25 2:18 UTC (permalink / raw)
To: Eric Dumazet
Cc: Harald Welte, Netfilter Development Mailinglist, David S. Miller
Eric Dumazet wrote:
> Hum... I was not aware that disabling preemption (in get_cpu()) had this
> effect (ie not allowing to sleep). I was using get_cpu() to bind the
> thread to the current cpu, maybe there is something better ?
set_cpus_allowed() might work.
> If not, we can zap get_cpu()/pu_cpu() and use raw_smp_processor_id() as
> a hint only, (and dont care of preemption/cpu migration), as the value
> is only used as a hint to speedup operations in do_replace(),
> do_add_counters(), ipt_unregister_table(), translate_table()...
That sounds like a good way. iptables ruleset replacement is and
will always be slow anyway.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2005-11-25 2:18 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20051123.155603.64967447.davem@davemloft.net>
2005-11-24 20:58 ` Fw: 2.6.15-rc2-mm1 problems (get_cpu / NUMA optimizations) Harald Welte
2005-11-24 22:11 ` Eric Dumazet
2005-11-25 2:18 ` Patrick McHardy
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.