Re: route cache DoS testing and softirqs

From: Robert Olsson
Date: Wed Apr 07 2004 - 10:44:08 EST



Dipankar Sarma writes:

> Robert, you should try out rs-throttle-rcu.patch. The idea is that
> we don't run too many callbacks in a single rcu. In my setup,
> at 100kpps, I see as many as 30000 rcu callbacks in a single
> tasklet handler. That is likely hurting even the softirq-only
> RCU grace periods. Setting rcupdate.maxbatch=4 will do only 4 per
> tasklet thus providing more quiescent points to the system.

Hello!

No bad things happens, lots of overflows and drop in performance
and the userland app can stall for 32 sec. We seems to spin in
softirq to much and still don't get things done.

Cheers.
--ro

Without patch
=============
Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flags
eth0 1500 0 5568922 8823920 8823920 4431083 46 0 0 0 BRU
eth1 1500 0 45 0 0 0 5567591 0 0 0 BRU
eth2 1500 0 5742954 8731915 8731915 4257049 42 0 0 0 BRU
eth3 1500 0 46 0 0 0 5741617 0 0 0 BRU

/proc/net/rt_cache_stat [overflow 3:rd last]

00009e0f 004809d5 000cefee 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 000c8c85 000c8725 0000053a 00000533 0085c6f6 00000000
00009e0f 004aa57e 000cfc18 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 000c4920 000c43b8 00000541 0000053d 0088c546 00000000


With patch
===========

RCU: maxbatch = 4, plugticks = 0

Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flags
eth0 1500 0 922395 9792296 9792296 9077609 45 0 0 0 BRU
eth1 1500 0 47 0 0 0 909892 0 0 0 BRU
eth2 1500 0 922586 9789706 9789706 9077417 45 0 0 0 BRU
eth3 1500 0 48 0 0 0 909992 0 0 0 BRU

/proc/net/rt_cache_stat [overflow 3:rd last]

00000018 000bc6e3 00024c63 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00021077 0001df2f 000030e2 000030d9 0011ed4d 00000000
00000018 000bc27d 0002518a 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00020d75 0001dbba 0000313c 00003135 00122fc9 00000000
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/