* Re: [PATCH v2] net: r8169: convert to hw_features
From: David Dillow @ 2011-04-19 3:24 UTC (permalink / raw)
To: Francois Romieu; +Cc: netdev, Realtek, davem
In-Reply-To: <20110418180857.GB18469@electric-eye.fr.zoreil.com>
On Mon, 2011-04-18 at 20:08 +0200, Francois Romieu wrote:
> [...]
> > I've attached my ancient patch, if it helps.
>
> Thanks, it works way better now (see below). It is ok for me to use
> you s-o-b on it ?
You may have it if you want it -- and I appreciate the offer -- but I
don't think you need it. You had it mostly working prior to my sending
you anything.
You did the work; you deserve the credit.
Thanks,
Dave
^ permalink raw reply
* Re: DSCP values in TCP handshake
From: Mikael Abrahamsson @ 2011-04-19 3:50 UTC (permalink / raw)
To: Stephen Hemminger; +Cc: Joe Buehler, Eric Dumazet, netdev
In-Reply-To: <20110418144908.55967b06@nehalam>
On Mon, 18 Apr 2011, Stephen Hemminger wrote:
> If the DSCP bits are reflected, then it could allow for even better SYN
> flood attack. Attacker could maliciously set DSCP to elevate priority
> processing of his bogus SYN packets and also cause SYN-ACK on reverse
> path to also take priority.
Incoming, it's already too late. Outgoing, yes, that might be a problem,
but if you have a QoS enabled network then you might as well solve that in
the network, not in the host.
Does Linux internally look at DSCP when deciding what SYNs to handle
first? If not, I think the above reasoning is misdirected.
--
Mikael Abrahamsson email: swmike@swm.pp.se
^ permalink raw reply
* RE: Low performance Intel 10GE NIC (3.2.10) on 2.6.38 Kernel
From: Wei Gu @ 2011-04-19 4:09 UTC (permalink / raw)
To: Jesse Brandeburg
Cc: Peter Zijlstra, Eric Dumazet, Alexander Duyck, netdev,
Kirsher, Jeffrey T, Mike Galbraith, Thomas Gleixner
In-Reply-To: <BANLkTin_OgBo3N8qi5cF5rOd__pRKifwsg@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 1153 bytes --]
Hi,
This is the result that I running the turbostat via 2.6.35.3 and perform the same load test on eth10 (8 tx/rx queue binding to core 24-31) according you instruction.
I was add the processor.max_cstate=1 in the boot params, and also disabled the cstate in the BIOS. But looks like the kernel does take them.
Thanks
WeiGu
-----Original Message-----
From: Jesse Brandeburg [mailto:jesse.brandeburg@gmail.com]
Sent: Tuesday, April 19, 2011 5:12 AM
To: Wei Gu
Cc: Peter Zijlstra; Eric Dumazet; Alexander Duyck; netdev; Kirsher, Jeffrey T; Mike Galbraith; Thomas Gleixner
Subject: Re: Low performance Intel 10GE NIC (3.2.10) on 2.6.38 Kernel
On Fri, Apr 15, 2011 at 2:14 AM, Wei Gu <wei.gu@ericsson.com> wrote:
> Is there something that I can provide in order to identify the problem?
for power state concerns you may want to try running turbostat (available in recent kernels, runs also on older kernels) during the workload in question. Capture the results via something like:
cd /home/jbrandeb/linux-2.6.38.2/tools/power/x86/turbostat
make
for i in `seq 1 10` ; do ./turbostat -v sleep 5 >> turbostat.txt 2>&1 ; done
Jesse
[-- Attachment #2: turbostat.txt --]
[-- Type: text/plain, Size: 44410 bytes --]
GenuineIntel 11 CPUID levels; family:model:stepping 0x6:2e:6 (6:46:6)
8 * 133 = 1067 MHz max efficiency
17 * 133 = 2267 MHz TSC frequency
pkg core CPU %c0 GHz TSC %c1 %c3 %c6 %pc3 %pc6
3.80 2.14 2.27 15.66 80.54 0.00 72.50 0.00
0 0 0 2.08 1.89 2.27 2.48 95.44 0.00 94.89 0.00
0 0 32 0.39 1.81 2.27 4.17 95.44 0.00 94.89 0.00
0 1 1 0.69 1.90 2.27 1.96 97.35 0.00 94.90 0.00
0 1 33 0.34 1.90 2.27 2.31 97.35 0.00 94.90 0.00
0 2 2 0.33 1.93 2.27 0.13 99.54 0.00 94.90 0.00
0 2 34 0.32 1.93 2.27 0.15 99.54 0.00 94.90 0.00
0 3 3 0.33 1.93 2.27 1.87 97.80 0.00 94.91 0.00
0 3 35 0.31 1.93 2.27 1.88 97.80 0.00 94.91 0.00
0 8 4 0.32 1.93 2.27 1.87 97.80 0.00 94.91 0.00
0 8 36 0.31 1.94 2.27 1.88 97.81 0.00 94.92 0.00
0 9 5 0.32 1.93 2.27 1.86 97.82 0.00 94.92 0.00
0 9 37 0.30 1.95 2.27 1.88 97.82 0.00 94.92 0.00
0 10 6 0.32 1.96 2.27 1.85 97.83 0.00 94.92 0.00
0 10 38 0.31 1.96 2.27 1.86 97.83 0.00 94.93 0.00
0 11 7 0.33 1.89 2.27 1.84 97.83 0.00 94.93 0.00
0 11 39 0.35 1.92 2.27 1.83 97.83 0.00 94.93 0.00
1 0 8 0.39 1.98 2.27 1.79 97.81 0.00 97.61 0.00
1 0 40 0.33 1.92 2.27 1.85 97.82 0.00 97.61 0.00
1 1 9 0.34 1.92 2.27 1.80 97.86 0.00 97.61 0.00
1 1 41 0.35 1.94 2.27 1.78 97.87 0.00 97.62 0.00
1 2 10 0.33 1.92 2.27 1.80 97.88 0.00 97.62 0.00
1 2 42 0.32 1.89 2.27 1.80 97.88 0.00 97.62 0.00
1 3 11 0.32 1.93 2.27 1.79 97.89 0.00 97.63 0.00
1 3 43 0.32 1.90 2.27 1.79 97.89 0.00 97.63 0.00
1 8 12 0.32 1.94 2.27 1.77 97.91 0.00 97.63 0.00
1 8 44 0.31 1.95 2.27 1.77 97.92 0.00 97.63 0.00
1 9 13 0.32 1.96 2.27 1.76 97.92 0.00 97.64 0.00
1 9 45 0.31 1.96 2.27 1.77 97.92 0.00 97.64 0.00
1 10 14 0.32 1.95 2.27 1.75 97.93 0.00 97.64 0.00
1 10 46 0.31 1.96 2.27 1.76 97.93 0.00 97.65 0.00
1 11 15 0.32 1.87 2.27 1.75 97.93 0.00 97.65 0.00
1 11 47 0.35 1.93 2.27 1.72 97.93 0.00 97.65 0.00
2 0 16 0.36 1.89 2.27 1.72 97.92 0.00 97.37 0.00
2 0 48 0.35 1.90 2.27 1.73 97.92 0.00 97.37 0.00
2 1 17 0.39 1.86 2.27 1.83 97.78 0.00 97.37 0.00
2 1 49 0.39 1.83 2.27 1.83 97.78 0.00 97.37 0.00
2 2 18 0.36 1.89 2.27 1.85 97.79 0.00 97.37 0.00
2 2 50 0.41 1.81 2.27 1.81 97.79 0.00 97.37 0.00
2 3 19 0.34 1.94 2.27 1.68 97.98 0.00 97.38 0.00
2 3 51 0.32 1.95 2.27 1.69 97.98 0.00 97.38 0.00
2 8 20 0.33 1.95 2.26 1.68 97.99 0.00 97.38 0.00
2 8 52 0.32 1.96 2.26 1.68 97.99 0.00 97.39 0.00
2 9 21 0.33 1.95 2.26 1.66 98.00 0.00 97.39 0.00
2 9 53 0.32 1.97 2.26 1.67 98.00 0.00 97.39 0.00
2 10 22 0.33 1.95 2.26 1.66 98.01 0.00 97.40 0.00
2 10 54 0.32 1.97 2.26 1.67 98.01 0.00 97.40 0.00
2 11 23 0.35 1.88 2.26 1.65 98.00 0.00 97.40 0.00
2 11 55 0.35 1.94 2.26 1.64 98.00 0.00 97.40 0.00
3 0 24 45.64 2.25 2.26 24.86 29.51 0.00 0.00 0.00
3 0 56 0.37 2.35 2.26 70.12 29.51 0.00 0.00 0.00
3 1 25 24.02 2.11 2.26 52.07 23.91 0.00 0.00 0.00
3 1 57 0.46 2.36 2.26 75.62 23.92 0.00 0.00 0.00
3 2 26 26.37 2.14 2.26 38.14 35.49 0.00 0.00 0.00
3 2 58 0.38 2.36 2.26 64.13 35.50 0.00 0.00 0.00
3 3 27 26.51 2.13 2.26 38.86 34.63 0.00 0.00 0.00
3 3 59 0.38 2.36 2.26 64.99 34.63 0.00 0.00 0.00
3 8 28 26.50 2.13 2.26 39.08 34.41 0.00 0.00 0.00
3 8 60 0.37 2.36 2.26 65.22 34.41 0.00 0.00 0.00
3 9 29 21.08 2.17 2.26 71.14 7.78 0.00 0.00 0.00
3 9 61 0.38 2.35 2.26 91.83 7.78 0.00 0.00 0.00
3 10 30 26.05 2.12 2.26 41.47 32.48 0.00 0.00 0.00
3 10 62 0.38 2.36 2.26 67.14 32.48 0.00 0.00 0.00
3 11 31 25.59 2.11 2.26 43.60 30.81 0.00 0.00 0.00
3 11 63 0.37 2.36 2.26 68.82 30.81 0.00 0.00 0.00
5.008826 sec
GenuineIntel 11 CPUID levels; family:model:stepping 0x6:2e:6 (6:46:6)
8 * 133 = 1067 MHz max efficiency
17 * 133 = 2267 MHz TSC frequency
pkg core CPU %c0 GHz TSC %c1 %c3 %c6 %pc3 %pc6
3.15 2.16 2.26 15.01 81.84 0.00 73.01 0.00
0 0 0 1.40 1.49 2.26 1.74 96.85 0.00 96.43 0.00
0 0 32 0.36 1.82 2.26 2.79 96.85 0.00 96.43 0.00
0 1 1 0.48 1.87 2.26 0.30 99.23 0.00 96.42 0.00
0 1 33 0.34 1.90 2.26 0.43 99.22 0.00 96.42 0.00
0 2 2 0.32 1.92 2.26 1.14 98.54 0.00 96.42 0.00
0 2 34 0.31 1.92 2.26 1.16 98.54 0.00 96.42 0.00
0 3 3 0.32 1.92 2.26 1.14 98.53 0.00 96.41 0.00
0 3 35 0.31 1.92 2.26 1.16 98.53 0.00 96.41 0.00
0 8 4 0.32 1.92 2.26 1.15 98.53 0.00 96.41 0.00
0 8 36 0.30 1.93 2.26 1.17 98.53 0.00 96.41 0.00
0 9 5 0.32 1.92 2.26 1.14 98.54 0.00 96.41 0.00
0 9 37 0.30 1.95 2.26 1.17 98.53 0.00 96.41 0.00
0 10 6 0.31 1.95 2.26 1.15 98.54 0.00 96.41 0.00
0 10 38 0.31 1.96 2.26 1.15 98.54 0.00 96.41 0.00
0 11 7 0.33 1.88 2.26 1.14 98.53 0.00 96.41 0.00
0 11 39 0.34 1.92 2.26 1.13 98.53 0.00 96.41 0.00
1 0 8 0.36 1.89 2.26 1.10 98.54 0.00 98.28 0.00
1 0 40 0.33 1.89 2.26 1.13 98.54 0.00 98.27 0.00
1 1 9 0.34 1.89 2.26 1.12 98.54 0.00 98.27 0.00
1 1 41 0.32 1.91 2.26 1.14 98.54 0.00 98.26 0.00
1 2 10 0.33 1.91 2.26 1.12 98.55 0.00 98.26 0.00
1 2 42 0.33 1.90 2.26 1.13 98.54 0.00 98.26 0.00
1 3 11 0.34 1.91 2.26 1.13 98.53 0.00 98.25 0.00
1 3 43 0.33 1.91 2.26 1.14 98.53 0.00 98.25 0.00
1 8 12 0.33 1.91 2.26 1.11 98.57 0.00 98.24 0.00
1 8 44 0.31 1.93 2.26 1.13 98.56 0.00 98.24 0.00
1 9 13 0.32 1.93 2.26 1.11 98.57 0.00 98.24 0.00
1 9 45 0.31 1.94 2.26 1.13 98.56 0.00 98.23 0.00
1 10 14 0.33 1.93 2.26 0.15 99.52 0.00 98.23 0.00
1 10 46 0.32 1.96 2.26 0.16 99.52 0.00 98.22 0.00
1 11 15 0.33 1.86 2.26 1.11 98.56 0.00 98.22 0.00
1 11 47 0.35 1.91 2.26 1.10 98.56 0.00 98.22 0.00
2 0 16 0.36 1.87 2.26 1.10 98.54 0.00 97.45 0.00
2 0 48 0.35 1.88 2.26 1.11 98.54 0.00 97.45 0.00
2 1 17 0.36 1.88 2.26 0.87 98.77 0.00 97.44 0.00
2 1 49 0.98 2.32 2.26 0.25 98.77 0.00 97.44 0.00
2 2 18 0.35 1.88 2.26 0.25 99.40 0.00 97.44 0.00
2 2 50 0.38 1.79 2.26 0.23 99.39 0.00 97.43 0.00
2 3 19 0.34 1.92 2.26 0.11 99.55 0.00 97.43 0.00
2 3 51 0.32 1.94 2.26 0.13 99.54 0.00 97.43 0.00
2 8 20 0.34 1.92 2.26 1.08 98.59 0.00 97.43 0.00
2 8 52 0.32 1.95 2.26 1.09 98.59 0.00 97.43 0.00
2 9 21 0.34 1.93 2.26 0.12 99.55 0.00 97.43 0.00
2 9 53 0.31 1.96 2.26 0.14 99.55 0.00 97.43 0.00
2 10 22 0.34 1.93 2.26 1.07 98.60 0.00 97.42 0.00
2 10 54 0.31 1.97 2.26 1.09 98.60 0.00 97.42 0.00
2 11 23 0.35 1.85 2.26 1.06 98.59 0.00 97.42 0.00
2 11 55 0.35 1.92 2.26 1.06 98.59 0.00 97.42 0.00
3 0 24 21.01 2.18 2.26 54.73 24.26 0.00 0.00 0.00
3 0 56 0.37 2.38 2.26 75.37 24.26 0.00 0.00 0.00
3 1 25 23.36 2.19 2.26 38.47 38.17 0.00 0.00 0.00
3 1 57 0.37 2.37 2.26 61.46 38.17 0.00 0.00 0.00
3 2 26 23.38 2.19 2.26 39.01 37.61 0.00 0.00 0.00
3 2 58 0.35 2.38 2.26 62.03 37.61 0.00 0.00 0.00
3 3 27 22.87 2.18 2.26 45.41 31.72 0.00 0.00 0.00
3 3 59 0.36 2.38 2.26 67.92 31.72 0.00 0.00 0.00
3 8 28 23.61 2.18 2.26 40.81 35.58 0.00 0.00 0.00
3 8 60 0.36 2.38 2.26 64.06 35.58 0.00 0.00 0.00
3 9 29 19.13 2.22 2.26 71.34 9.53 0.00 0.00 0.00
3 9 61 0.38 2.38 2.26 90.09 9.53 0.00 0.00 0.00
3 10 30 23.70 2.18 2.26 39.58 36.72 0.00 0.00 0.00
3 10 62 0.37 2.38 2.26 62.92 36.72 0.00 0.00 0.00
3 11 31 23.86 2.18 2.26 38.77 37.38 0.00 0.00 0.00
3 11 63 0.37 2.38 2.26 62.26 37.37 0.00 0.00 0.00
5.015708 sec
GenuineIntel 11 CPUID levels; family:model:stepping 0x6:2e:6 (6:46:6)
8 * 133 = 1067 MHz max efficiency
17 * 133 = 2267 MHz TSC frequency
pkg core CPU %c0 GHz TSC %c1 %c3 %c6 %pc3 %pc6
3.58 2.29 2.26 15.33 81.09 0.00 67.40 0.00
0 0 0 1.87 1.77 2.27 1.19 96.95 0.00 72.79 0.00
0 0 32 0.36 1.95 2.27 2.69 96.95 0.00 72.79 0.00
0 1 1 0.69 1.96 2.27 24.62 74.69 0.00 72.79 0.00
0 1 33 24.96 2.64 2.27 0.35 74.69 0.00 72.79 0.00
0 2 2 0.36 2.06 2.27 0.56 99.08 0.00 72.79 0.00
0 2 34 0.36 2.09 2.27 0.55 99.09 0.00 72.79 0.00
0 3 3 0.33 2.02 2.27 0.55 99.12 0.00 72.79 0.00
0 3 35 0.35 2.10 2.27 0.52 99.13 0.00 72.80 0.00
0 8 4 0.32 2.03 2.27 0.50 99.18 0.00 72.80 0.00
0 8 36 0.31 2.03 2.27 0.51 99.18 0.00 72.80 0.00
0 9 5 0.32 2.03 2.27 0.48 99.19 0.00 72.80 0.00
0 9 37 0.30 2.04 2.27 0.50 99.19 0.00 72.80 0.00
0 10 6 0.31 2.04 2.27 0.48 99.21 0.00 72.80 0.00
0 10 38 0.30 2.04 2.27 0.50 99.20 0.00 72.80 0.00
0 11 7 0.33 1.99 2.27 0.19 99.48 0.00 72.80 0.00
0 11 39 0.34 2.01 2.27 0.18 99.49 0.00 72.80 0.00
1 0 8 0.60 1.82 2.27 0.48 98.92 0.00 98.45 0.00
1 0 40 0.33 1.92 2.27 0.75 98.92 0.00 98.46 0.00
1 1 9 0.55 1.88 2.27 0.54 98.91 0.00 98.46 0.00
1 1 41 0.75 2.09 2.27 0.34 98.91 0.00 98.46 0.00
1 2 10 0.56 1.89 2.27 0.49 98.95 0.00 98.46 0.00
1 2 42 0.48 1.95 2.26 0.57 98.95 0.00 98.47 0.00
1 3 11 0.33 1.94 2.26 0.40 99.28 0.00 98.47 0.00
1 3 43 0.33 1.92 2.26 0.39 99.28 0.00 98.47 0.00
1 8 12 0.33 1.95 2.26 0.37 99.30 0.00 98.47 0.00
1 8 44 0.31 1.96 2.26 0.39 99.30 0.00 98.47 0.00
1 9 13 0.32 1.96 2.26 0.37 99.31 0.00 98.47 0.00
1 9 45 0.31 1.96 2.26 0.38 99.32 0.00 98.47 0.00
1 10 14 0.32 1.96 2.26 0.37 99.31 0.00 98.47 0.00
1 10 46 0.31 1.97 2.26 0.38 99.31 0.00 98.47 0.00
1 11 15 0.33 1.89 2.26 0.35 99.32 0.00 98.48 0.00
1 11 47 0.34 1.93 2.26 0.34 99.32 0.00 98.48 0.00
2 0 16 0.44 1.84 2.26 0.37 99.19 0.00 98.32 0.00
2 0 48 0.34 1.89 2.26 0.47 99.19 0.00 98.32 0.00
2 1 17 0.38 1.84 2.26 0.74 98.87 0.00 98.32 0.00
2 1 49 0.55 1.82 2.26 0.58 98.88 0.00 98.32 0.00
2 2 18 0.37 1.86 2.26 0.60 99.03 0.00 98.32 0.00
2 2 50 0.46 1.77 2.26 0.51 99.04 0.00 98.33 0.00
2 3 19 0.34 1.93 2.26 0.32 99.34 0.00 98.32 0.00
2 3 51 0.33 1.94 2.26 0.33 99.34 0.00 98.32 0.00
2 8 20 0.34 1.95 2.26 0.30 99.36 0.00 98.32 0.00
2 8 52 0.33 1.95 2.26 0.31 99.36 0.00 98.33 0.00
2 9 21 0.34 1.94 2.26 0.29 99.38 0.00 98.33 0.00
2 9 53 0.32 1.94 2.26 0.30 99.38 0.00 98.33 0.00
2 10 22 0.34 1.95 2.26 0.29 99.37 0.00 98.33 0.00
2 10 54 0.33 1.97 2.26 0.30 99.37 0.00 98.33 0.00
2 11 23 0.35 1.87 2.26 0.28 99.37 0.00 98.34 0.00
2 11 55 0.36 1.93 2.26 0.27 99.38 0.00 98.34 0.00
3 0 24 23.26 2.28 2.26 52.94 23.81 0.00 0.00 0.00
3 0 56 0.47 2.39 2.26 75.73 23.81 0.00 0.00 0.00
3 1 25 25.49 2.29 2.26 36.60 37.92 0.00 0.00 0.00
3 1 57 0.50 2.38 2.26 61.58 37.92 0.00 0.00 0.00
3 2 26 22.22 2.27 2.26 47.44 30.34 0.00 0.00 0.00
3 2 58 0.38 2.38 2.26 69.27 30.34 0.00 0.00 0.00
3 3 27 22.00 2.26 2.26 48.10 29.90 0.00 0.00 0.00
3 3 59 0.37 2.39 2.26 69.73 29.90 0.00 0.00 0.00
3 8 28 23.23 2.27 2.26 40.40 36.36 0.00 0.00 0.00
3 8 60 0.36 2.38 2.26 63.27 36.36 0.00 0.00 0.00
3 9 29 18.73 2.29 2.26 72.33 8.94 0.00 0.00 0.00
3 9 61 0.40 2.39 2.26 90.67 8.94 0.00 0.00 0.00
3 10 30 23.25 2.27 2.26 40.08 36.68 0.00 0.00 0.00
3 10 62 0.40 2.38 2.26 62.93 36.68 0.00 0.00 0.00
3 11 31 23.29 2.27 2.26 39.99 36.72 0.00 0.00 0.00
3 11 63 0.38 2.39 2.26 62.90 36.72 0.00 0.00 0.00
5.009804 sec
GenuineIntel 11 CPUID levels; family:model:stepping 0x6:2e:6 (6:46:6)
8 * 133 = 1067 MHz max efficiency
17 * 133 = 2267 MHz TSC frequency
pkg core CPU %c0 GHz TSC %c1 %c3 %c6 %pc3 %pc6
3.39 2.04 2.26 15.22 81.39 0.00 72.22 0.00
0 0 0 1.39 1.49 2.26 2.82 95.79 0.00 95.39 0.00
0 0 32 0.35 1.82 2.26 3.86 95.79 0.00 95.38 0.00
0 1 1 0.50 1.96 2.26 0.34 99.16 0.00 95.38 0.00
0 1 33 0.34 1.93 2.26 0.50 99.16 0.00 95.38 0.00
0 2 2 0.33 1.93 2.26 2.21 97.46 0.00 95.38 0.00
0 2 34 0.31 1.93 2.26 2.23 97.46 0.00 95.37 0.00
0 3 3 0.32 1.91 2.26 2.21 97.47 0.00 95.37 0.00
0 3 35 0.31 1.92 2.26 2.22 97.47 0.00 95.37 0.00
0 8 4 0.32 1.93 2.26 2.20 97.48 0.00 95.36 0.00
0 8 36 0.30 1.94 2.26 2.22 97.48 0.00 95.36 0.00
0 9 5 0.32 1.92 2.26 2.20 97.48 0.00 95.36 0.00
0 9 37 0.30 1.95 2.26 2.22 97.48 0.00 95.36 0.00
0 10 6 0.31 1.96 2.26 2.20 97.49 0.00 95.35 0.00
0 10 38 0.30 1.95 2.26 2.21 97.49 0.00 95.35 0.00
0 11 7 0.33 1.89 2.26 2.19 97.48 0.00 95.35 0.00
0 11 39 0.34 1.92 2.26 2.18 97.48 0.00 95.35 0.00
1 0 8 0.44 2.03 2.26 2.17 97.40 0.00 97.15 0.00
1 0 40 0.33 1.90 2.26 2.27 97.40 0.00 97.15 0.00
1 1 9 0.33 1.89 2.26 2.18 97.48 0.00 97.14 0.00
1 1 41 0.34 1.93 2.26 2.18 97.48 0.00 97.14 0.00
1 2 10 0.32 1.90 2.26 2.19 97.49 0.00 97.14 0.00
1 2 42 0.32 1.90 2.26 2.19 97.49 0.00 97.14 0.00
1 3 11 0.32 1.91 2.26 2.19 97.49 0.00 97.14 0.00
1 3 43 0.31 1.90 2.26 2.20 97.49 0.00 97.14 0.00
1 8 12 0.32 1.92 2.26 2.17 97.52 0.00 97.14 0.00
1 8 44 0.30 1.93 2.26 2.18 97.52 0.00 97.14 0.00
1 9 13 0.31 1.93 2.26 2.17 97.52 0.00 97.14 0.00
1 9 45 0.30 1.94 2.26 2.18 97.52 0.00 97.14 0.00
1 10 14 0.32 1.93 2.26 2.17 97.50 0.00 97.14 0.00
1 10 46 0.31 1.95 2.26 2.19 97.50 0.00 97.14 0.00
1 11 15 0.32 1.86 2.26 2.17 97.51 0.00 97.14 0.00
1 11 47 0.34 1.92 2.26 2.15 97.50 0.00 97.14 0.00
2 0 16 0.36 1.86 2.26 2.14 97.50 0.00 96.39 0.00
2 0 48 0.34 1.87 2.26 2.16 97.50 0.00 96.39 0.00
2 1 17 0.36 1.88 2.26 2.78 96.86 0.00 96.39 0.00
2 1 49 0.92 2.31 2.26 2.22 96.86 0.00 96.39 0.00
2 2 18 0.35 1.88 2.26 2.28 97.37 0.00 96.38 0.00
2 2 50 0.40 1.81 2.26 2.23 97.37 0.00 96.38 0.00
2 3 19 0.34 1.91 2.26 2.11 97.56 0.00 96.38 0.00
2 3 51 0.31 1.94 2.26 2.13 97.56 0.00 96.38 0.00
2 8 20 0.33 1.93 2.26 2.11 97.56 0.00 96.38 0.00
2 8 52 0.32 1.95 2.26 2.12 97.56 0.00 96.38 0.00
2 9 21 0.33 1.93 2.26 2.10 97.57 0.00 96.39 0.00
2 9 53 0.31 1.96 2.26 2.12 97.57 0.00 96.39 0.00
2 10 22 0.33 1.92 2.26 2.10 97.56 0.00 96.38 0.00
2 10 54 0.31 1.95 2.26 2.13 97.56 0.00 96.38 0.00
2 11 23 0.34 1.85 2.26 2.10 97.56 0.00 96.38 0.00
2 11 55 0.34 1.93 2.26 2.10 97.56 0.00 96.38 0.00
3 0 24 23.67 2.05 2.26 45.88 30.45 0.00 0.01 0.00
3 0 56 0.35 2.34 2.26 69.20 30.45 0.00 0.01 0.00
3 1 25 25.02 2.06 2.26 36.69 38.29 0.00 0.01 0.00
3 1 57 0.40 2.35 2.26 61.32 38.29 0.00 0.01 0.00
3 2 26 25.18 2.05 2.26 36.58 38.23 0.00 0.01 0.00
3 2 58 0.36 2.35 2.26 61.41 38.23 0.00 0.01 0.00
3 3 27 25.51 2.04 2.26 36.77 37.72 0.00 0.01 0.00
3 3 59 0.36 2.34 2.26 61.93 37.72 0.00 0.01 0.00
3 8 28 25.31 2.04 2.26 37.71 36.98 0.00 0.01 0.00
3 8 60 0.35 2.35 2.26 62.67 36.98 0.00 0.01 0.00
3 9 29 20.43 2.10 2.26 70.01 9.56 0.00 0.01 0.00
3 9 61 0.38 2.35 2.26 90.05 9.56 0.00 0.01 0.00
3 10 30 25.52 2.04 2.26 37.60 36.88 0.00 0.01 0.00
3 10 62 0.37 2.35 2.26 62.75 36.88 0.00 0.01 0.00
3 11 31 25.48 2.04 2.26 37.24 37.28 0.00 0.01 0.00
3 11 63 0.37 2.35 2.26 62.35 37.28 0.00 0.01 0.00
5.015194 sec
GenuineIntel 11 CPUID levels; family:model:stepping 0x6:2e:6 (6:46:6)
8 * 133 = 1067 MHz max efficiency
17 * 133 = 2267 MHz TSC frequency
pkg core CPU %c0 GHz TSC %c1 %c3 %c6 %pc3 %pc6
3.54 2.14 2.27 15.67 80.79 0.00 70.38 0.00
0 0 0 1.37 1.53 2.27 2.01 96.62 0.00 96.29 0.00
0 0 32 0.38 1.84 2.27 3.00 96.62 0.00 96.29 0.00
0 1 1 0.43 1.89 2.27 0.47 99.10 0.00 96.29 0.00
0 1 33 0.34 1.92 2.27 0.55 99.10 0.00 96.30 0.00
0 2 2 0.33 1.94 2.27 0.12 99.55 0.00 96.30 0.00
0 2 34 0.32 1.95 2.27 0.13 99.56 0.00 96.31 0.00
0 3 3 0.33 1.94 2.27 1.48 98.19 0.00 96.31 0.00
0 3 35 0.32 1.95 2.27 1.49 98.19 0.00 96.31 0.00
0 8 4 0.33 1.95 2.27 1.47 98.20 0.00 96.32 0.00
0 8 36 0.31 1.95 2.27 1.49 98.20 0.00 96.32 0.00
0 9 5 0.33 1.96 2.27 1.46 98.21 0.00 96.32 0.00
0 9 37 0.30 1.97 2.27 1.48 98.21 0.00 96.33 0.00
0 10 6 0.33 1.97 2.27 1.45 98.22 0.00 96.33 0.00
0 10 38 0.30 1.99 2.27 1.47 98.23 0.00 96.33 0.00
0 11 7 0.34 1.90 2.27 1.44 98.22 0.00 96.34 0.00
0 11 39 0.34 1.94 2.27 1.44 98.22 0.00 96.34 0.00
1 0 8 12.29 2.62 2.27 0.09 87.61 0.00 87.37 0.00
1 0 40 0.34 1.96 2.27 12.05 87.62 0.00 87.37 0.00
1 1 9 0.35 1.95 2.27 1.41 98.24 0.00 87.37 0.00
1 1 41 0.32 1.96 2.27 1.43 98.24 0.00 87.38 0.00
1 2 10 0.34 1.97 2.27 1.41 98.25 0.00 87.38 0.00
1 2 42 0.33 1.97 2.27 1.41 98.26 0.00 87.38 0.00
1 3 11 0.34 1.95 2.27 1.41 98.24 0.00 87.38 0.00
1 3 43 0.33 1.96 2.27 1.42 98.25 0.00 87.39 0.00
1 8 12 0.33 1.97 2.27 1.38 98.30 0.00 87.39 0.00
1 8 44 0.30 1.98 2.27 1.40 98.30 0.00 87.39 0.00
1 9 13 0.32 1.98 2.27 1.37 98.31 0.00 87.40 0.00
1 9 45 0.31 1.99 2.27 1.39 98.31 0.00 87.40 0.00
1 10 14 0.33 1.99 2.27 1.37 98.30 0.00 87.40 0.00
1 10 46 0.32 2.01 2.27 1.38 98.30 0.00 87.40 0.00
1 11 15 0.34 1.93 2.27 0.13 99.54 0.00 87.41 0.00
1 11 47 0.35 1.97 2.27 0.11 99.54 0.00 87.41 0.00
2 0 16 0.36 1.88 2.27 1.35 98.29 0.00 97.75 0.00
2 0 48 0.35 1.89 2.27 1.37 98.29 0.00 97.75 0.00
2 1 17 0.36 1.87 2.27 0.37 99.26 0.00 97.75 0.00
2 1 49 0.50 1.96 2.27 0.23 99.27 0.00 97.75 0.00
2 2 18 0.35 1.88 2.27 0.54 99.10 0.00 97.75 0.00
2 2 50 0.41 1.75 2.27 0.49 99.11 0.00 97.75 0.00
2 3 19 0.33 1.93 2.27 1.31 98.36 0.00 97.76 0.00
2 3 51 0.32 1.94 2.26 1.32 98.37 0.00 97.76 0.00
2 8 20 0.34 1.95 2.26 1.30 98.36 0.00 97.76 0.00
2 8 52 0.33 1.96 2.26 1.31 98.37 0.00 97.77 0.00
2 9 21 0.33 1.94 2.26 1.28 98.38 0.00 97.77 0.00
2 9 53 0.31 1.95 2.26 1.30 98.39 0.00 97.77 0.00
2 10 22 0.33 1.94 2.26 1.28 98.39 0.00 97.78 0.00
2 10 54 0.31 1.96 2.26 1.29 98.40 0.00 97.78 0.00
2 11 23 0.35 1.88 2.26 1.26 98.39 0.00 97.78 0.00
2 11 55 0.35 1.93 2.26 1.26 98.39 0.00 97.79 0.00
3 0 24 22.63 2.12 2.26 54.65 22.72 0.00 0.01 0.00
3 0 56 0.38 2.36 2.26 76.90 22.72 0.00 0.01 0.00
3 1 25 24.08 2.12 2.26 46.84 29.08 0.00 0.01 0.00
3 1 57 0.40 2.32 2.26 70.52 29.08 0.00 0.01 0.00
3 2 26 25.21 2.12 2.26 39.84 34.95 0.00 0.01 0.00
3 2 58 0.37 2.36 2.26 64.68 34.95 0.00 0.01 0.00
3 3 27 25.35 2.12 2.26 40.20 34.45 0.00 0.01 0.00
3 3 59 0.37 2.36 2.26 65.18 34.45 0.00 0.01 0.00
3 8 28 25.60 2.12 2.26 40.30 34.10 0.00 0.01 0.00
3 8 60 0.36 2.37 2.26 65.54 34.10 0.00 0.01 0.00
3 9 29 20.63 2.16 2.26 70.53 8.85 0.00 0.01 0.00
3 9 61 0.38 2.34 2.26 90.77 8.85 0.00 0.01 0.00
3 10 30 25.61 2.12 2.26 40.04 34.36 0.00 0.01 0.00
3 10 62 0.37 2.37 2.26 65.28 34.36 0.00 0.01 0.00
3 11 31 25.58 2.12 2.26 39.80 34.62 0.00 0.01 0.00
3 11 63 0.38 2.36 2.26 65.00 34.62 0.00 0.01 0.00
5.009084 sec
GenuineIntel 11 CPUID levels; family:model:stepping 0x6:2e:6 (6:46:6)
8 * 133 = 1067 MHz max efficiency
17 * 133 = 2267 MHz TSC frequency
pkg core CPU %c0 GHz TSC %c1 %c3 %c6 %pc3 %pc6
3.32 2.20 2.26 14.79 81.89 0.00 72.75 0.00
0 0 0 2.11 1.58 2.26 1.42 96.47 0.00 95.45 0.00
0 0 32 0.76 2.19 2.26 2.78 96.46 0.00 95.44 0.00
0 1 1 0.56 1.92 2.26 0.41 99.03 0.00 95.44 0.00
0 1 33 0.50 2.08 2.26 0.47 99.03 0.00 95.44 0.00
0 2 2 0.33 1.93 2.26 0.84 98.83 0.00 95.43 0.00
0 2 34 0.37 1.98 2.26 0.80 98.83 0.00 95.43 0.00
0 3 3 0.33 1.93 2.26 0.77 98.90 0.00 95.42 0.00
0 3 35 0.31 1.94 2.26 0.79 98.90 0.00 95.42 0.00
0 8 4 0.32 1.93 2.26 0.78 98.90 0.00 95.42 0.00
0 8 36 0.31 1.95 2.26 0.80 98.89 0.00 95.41 0.00
0 9 5 0.33 1.93 2.26 0.78 98.90 0.00 95.40 0.00
0 9 37 0.30 1.96 2.26 0.80 98.89 0.00 95.39 0.00
0 10 6 0.31 1.96 2.26 0.77 98.91 0.00 95.39 0.00
0 10 38 0.30 1.97 2.26 0.79 98.91 0.00 95.38 0.00
0 11 7 0.34 1.90 2.26 0.76 98.90 0.00 95.37 0.00
0 11 39 0.34 1.94 2.26 0.76 98.90 0.00 95.37 0.00
1 0 8 0.43 1.81 2.26 0.77 98.80 0.00 98.33 0.00
1 0 40 0.33 1.89 2.26 0.88 98.80 0.00 98.33 0.00
1 1 9 0.43 1.84 2.26 0.33 99.23 0.00 98.32 0.00
1 1 41 0.50 2.04 2.26 0.27 99.23 0.00 98.32 0.00
1 2 10 0.46 1.83 2.26 0.82 98.72 0.00 98.31 0.00
1 2 42 0.42 1.93 2.26 0.86 98.72 0.00 98.31 0.00
1 3 11 0.33 1.91 2.26 0.74 98.93 0.00 98.31 0.00
1 3 43 0.32 1.91 2.26 0.76 98.92 0.00 98.30 0.00
1 8 12 0.32 1.92 2.26 0.73 98.95 0.00 98.29 0.00
1 8 44 0.31 1.93 2.26 0.74 98.95 0.00 98.29 0.00
1 9 13 0.33 1.94 2.26 0.72 98.95 0.00 98.28 0.00
1 9 45 0.31 1.95 2.26 0.74 98.95 0.00 98.28 0.00
1 10 14 0.32 1.94 2.26 0.73 98.94 0.00 98.27 0.00
1 10 46 0.31 1.96 2.26 0.75 98.94 0.00 98.27 0.00
1 11 15 0.33 1.87 2.26 0.73 98.94 0.00 98.26 0.00
1 11 47 0.35 1.92 2.26 0.71 98.94 0.00 98.26 0.00
2 0 16 0.36 1.87 2.26 0.71 98.93 0.00 97.44 0.00
2 0 48 0.34 1.89 2.26 0.73 98.93 0.00 97.43 0.00
2 1 17 0.41 1.80 2.26 1.10 98.49 0.00 97.43 0.00
2 1 49 1.06 2.24 2.26 0.45 98.49 0.00 97.43 0.00
2 2 18 0.36 1.88 2.26 0.86 98.78 0.00 97.42 0.00
2 2 50 0.40 1.80 2.26 0.83 98.78 0.00 97.42 0.00
2 3 19 0.34 1.90 2.26 0.73 98.93 0.00 97.41 0.00
2 3 51 0.34 1.92 2.26 0.73 98.93 0.00 97.41 0.00
2 8 20 0.34 1.93 2.26 0.12 99.54 0.00 97.40 0.00
2 8 52 0.32 1.96 2.26 0.14 99.54 0.00 97.40 0.00
2 9 21 0.34 1.93 2.26 0.68 98.98 0.00 97.40 0.00
2 9 53 0.32 1.96 2.26 0.71 98.97 0.00 97.39 0.00
2 10 22 0.35 1.90 2.26 0.73 98.93 0.00 97.39 0.00
2 10 54 0.32 1.93 2.26 0.75 98.92 0.00 97.38 0.00
2 11 23 0.36 1.83 2.26 0.73 98.91 0.00 97.38 0.00
2 11 55 0.37 1.88 2.26 0.72 98.91 0.00 97.38 0.00
3 0 24 23.45 2.23 2.26 39.49 37.06 0.00 0.00 0.00
3 0 56 0.37 2.38 2.26 62.57 37.06 0.00 0.00 0.00
3 1 25 29.87 2.27 2.26 39.27 30.86 0.00 0.00 0.00
3 1 57 0.56 2.14 2.26 68.58 30.86 0.00 0.00 0.00
3 2 26 22.93 2.22 2.26 42.96 34.10 0.00 0.00 0.00
3 2 58 0.41 2.38 2.26 65.49 34.10 0.00 0.00 0.00
3 3 27 24.10 2.22 2.26 37.63 38.27 0.00 0.00 0.00
3 3 59 0.37 2.39 2.26 61.37 38.26 0.00 0.00 0.00
3 8 28 21.83 2.20 2.26 53.12 25.06 0.00 0.00 0.00
3 8 60 0.38 2.38 2.26 74.57 25.06 0.00 0.00 0.00
3 9 29 18.89 2.25 2.26 72.83 8.29 0.00 0.00 0.00
3 9 61 0.39 2.39 2.26 91.33 8.28 0.00 0.00 0.00
3 10 30 24.00 2.22 2.26 38.22 37.78 0.00 0.00 0.00
3 10 62 0.36 2.38 2.26 61.86 37.78 0.00 0.00 0.00
3 11 31 24.25 2.23 2.26 37.82 37.93 0.00 0.00 0.00
3 11 63 0.38 2.39 2.26 61.69 37.93 0.00 0.00 0.00
5.023682 sec
GenuineIntel 11 CPUID levels; family:model:stepping 0x6:2e:6 (6:46:6)
8 * 133 = 1067 MHz max efficiency
17 * 133 = 2267 MHz TSC frequency
pkg core CPU %c0 GHz TSC %c1 %c3 %c6 %pc3 %pc6
3.73 2.33 2.26 17.24 79.03 0.00 72.26 0.00
0 0 0 1.38 1.54 2.27 0.86 97.76 0.00 95.00 0.00
0 0 32 0.39 1.78 2.27 1.85 97.76 0.00 94.99 0.00
0 1 1 0.82 1.95 2.27 0.15 99.02 0.00 95.00 0.00
0 1 33 0.34 1.90 2.27 0.64 99.02 0.00 95.00 0.00
0 2 2 0.34 1.93 2.27 2.40 97.26 0.00 95.00 0.00
0 2 34 0.32 1.95 2.27 2.42 97.26 0.00 95.00 0.00
0 3 3 0.33 1.93 2.27 2.39 97.28 0.00 95.00 0.00
0 3 35 0.31 1.94 2.27 2.40 97.28 0.00 95.00 0.00
0 8 4 0.33 1.94 2.27 2.39 97.28 0.00 95.00 0.00
0 8 36 0.31 1.95 2.27 2.41 97.28 0.00 95.01 0.00
0 9 5 0.33 1.95 2.26 2.38 97.30 0.00 95.01 0.00
0 9 37 0.31 1.96 2.26 2.40 97.30 0.00 95.01 0.00
0 10 6 0.32 1.97 2.26 2.37 97.31 0.00 95.01 0.00
0 10 38 0.31 1.97 2.26 2.39 97.31 0.00 95.01 0.00
0 11 7 0.33 1.88 2.26 2.37 97.30 0.00 95.01 0.00
0 11 39 0.34 1.93 2.26 2.36 97.30 0.00 95.01 0.00
1 0 8 0.34 1.88 2.26 2.31 97.35 0.00 97.13 0.00
1 0 40 0.33 1.89 2.27 2.33 97.34 0.00 97.12 0.00
1 1 9 0.34 1.92 2.27 0.32 99.33 0.00 97.12 0.00
1 1 41 0.52 2.10 2.27 0.14 99.34 0.00 97.12 0.00
1 2 10 0.33 1.93 2.27 2.34 97.33 0.00 97.12 0.00
1 2 42 0.33 1.90 2.27 2.33 97.33 0.00 97.12 0.00
1 3 11 0.33 1.93 2.26 2.33 97.34 0.00 97.13 0.00
1 3 43 0.33 1.91 2.26 2.33 97.34 0.00 97.13 0.00
1 8 12 0.32 1.94 2.26 2.31 97.37 0.00 97.13 0.00
1 8 44 0.31 1.94 2.26 2.32 97.37 0.00 97.12 0.00
1 9 13 0.32 1.95 2.26 2.30 97.37 0.00 97.13 0.00
1 9 45 0.31 1.95 2.26 2.31 97.37 0.00 97.13 0.00
1 10 14 0.32 1.95 2.26 2.30 97.37 0.00 97.13 0.00
1 10 46 0.31 1.96 2.26 2.31 97.37 0.00 97.13 0.00
1 11 15 0.34 1.89 2.26 2.29 97.37 0.00 97.13 0.00
1 11 47 0.35 1.93 2.26 2.27 97.38 0.00 97.13 0.00
2 0 16 0.35 1.89 2.26 2.27 97.38 0.00 96.88 0.00
2 0 48 0.34 1.89 2.26 2.28 97.38 0.00 96.88 0.00
2 1 17 0.36 1.89 2.26 2.38 97.26 0.00 96.88 0.00
2 1 49 0.41 1.86 2.26 2.33 97.26 0.00 96.88 0.00
2 2 18 0.35 1.89 2.26 2.38 97.27 0.00 96.89 0.00
2 2 50 0.38 1.86 2.26 2.35 97.27 0.00 96.89 0.00
2 3 19 0.33 1.93 2.26 2.24 97.42 0.00 96.89 0.00
2 3 51 0.33 1.94 2.26 2.25 97.42 0.00 96.89 0.00
2 8 20 0.33 1.95 2.26 2.22 97.44 0.00 96.90 0.00
2 8 52 0.32 1.96 2.26 2.24 97.44 0.00 96.90 0.00
2 9 21 0.33 1.94 2.26 2.21 97.46 0.00 96.90 0.00
2 9 53 0.31 1.95 2.26 2.23 97.46 0.00 96.90 0.00
2 10 22 0.33 1.94 2.26 2.21 97.45 0.00 96.90 0.00
2 10 54 0.32 1.96 2.26 2.23 97.45 0.00 96.90 0.00
2 11 23 0.35 1.88 2.26 2.20 97.45 0.00 96.90 0.00
2 11 55 0.35 1.93 2.26 2.20 97.45 0.00 96.90 0.00
3 0 24 38.90 2.37 2.26 46.33 14.77 0.00 0.00 0.00
3 0 56 0.38 2.40 2.26 84.85 14.77 0.00 0.00 0.00
3 1 25 38.88 2.37 2.26 43.26 17.86 0.00 0.00 0.00
3 1 57 0.41 2.40 2.26 81.72 17.86 0.00 0.00 0.00
3 2 26 24.56 2.36 2.26 42.69 32.75 0.00 0.00 0.00
3 2 58 0.38 2.40 2.26 66.87 32.75 0.00 0.00 0.00
3 3 27 23.57 2.35 2.26 47.96 28.48 0.00 0.00 0.00
3 3 59 0.38 2.40 2.26 71.14 28.48 0.00 0.00 0.00
3 8 28 24.84 2.35 2.26 43.04 32.12 0.00 0.00 0.00
3 8 60 0.37 2.40 2.26 67.50 32.13 0.00 0.00 0.00
3 9 29 19.74 2.36 2.26 73.41 6.85 0.00 0.00 0.00
3 9 61 0.40 2.40 2.26 92.75 6.85 0.00 0.00 0.00
3 10 30 23.73 2.35 2.26 49.21 27.06 0.00 0.00 0.00
3 10 62 0.38 2.40 2.26 72.56 27.06 0.00 0.00 0.00
3 11 31 24.01 2.35 2.26 47.64 28.35 0.00 0.00 0.00
3 11 63 0.37 2.40 2.26 71.28 28.35 0.00 0.00 0.00
5.011165 sec
GenuineIntel 11 CPUID levels; family:model:stepping 0x6:2e:6 (6:46:6)
8 * 133 = 1067 MHz max efficiency
17 * 133 = 2267 MHz TSC frequency
pkg core CPU %c0 GHz TSC %c1 %c3 %c6 %pc3 %pc6
3.27 2.09 2.26 14.38 82.35 0.00 72.86 0.00
0 0 0 1.42 1.51 2.26 1.95 96.63 0.00 96.14 0.00
0 0 32 0.36 1.82 2.26 3.01 96.63 0.00 96.13 0.00
0 1 1 0.57 1.99 2.26 1.39 98.04 0.00 96.13 0.00
0 1 33 0.33 1.89 2.26 1.63 98.04 0.00 96.13 0.00
0 2 2 0.33 1.92 2.26 1.36 98.31 0.00 96.12 0.00
0 2 34 0.31 1.92 2.26 1.38 98.31 0.00 96.12 0.00
0 3 3 0.32 1.92 2.26 1.36 98.32 0.00 96.12 0.00
0 3 35 0.31 1.92 2.26 1.37 98.32 0.00 96.11 0.00
0 8 4 0.32 1.93 2.26 1.37 98.31 0.00 96.11 0.00
0 8 36 0.31 1.94 2.26 1.38 98.31 0.00 96.11 0.00
0 9 5 0.33 1.93 2.26 1.36 98.31 0.00 96.10 0.00
0 9 37 0.31 1.95 2.26 1.38 98.31 0.00 96.10 0.00
0 10 6 0.32 1.96 2.26 1.32 98.36 0.00 96.10 0.00
0 10 38 0.31 1.96 2.26 1.33 98.36 0.00 96.09 0.00
0 11 7 0.33 1.87 2.26 1.32 98.35 0.00 96.09 0.00
0 11 39 0.34 1.92 2.26 1.31 98.35 0.00 96.09 0.00
1 0 8 0.34 1.87 2.26 1.21 98.45 0.00 98.20 0.00
1 0 40 0.33 1.89 2.26 1.22 98.45 0.00 98.19 0.00
1 1 9 0.34 1.89 2.26 0.25 99.41 0.00 98.19 0.00
1 1 41 0.43 2.02 2.26 0.17 99.41 0.00 98.19 0.00
1 2 10 0.33 1.90 2.26 1.14 98.53 0.00 98.18 0.00
1 2 42 0.32 1.90 2.26 1.15 98.53 0.00 98.18 0.00
1 3 11 0.34 1.91 2.26 0.98 98.68 0.00 98.17 0.00
1 3 43 0.32 1.91 2.26 1.00 98.67 0.00 98.17 0.00
1 8 12 0.33 1.92 2.26 0.96 98.71 0.00 98.17 0.00
1 8 44 0.31 1.93 2.26 0.98 98.71 0.00 98.16 0.00
1 9 13 0.32 1.92 2.26 0.96 98.72 0.00 98.16 0.00
1 9 45 0.30 1.94 2.26 0.98 98.72 0.00 98.15 0.00
1 10 14 0.33 1.92 2.26 0.81 98.86 0.00 98.15 0.00
1 10 46 0.31 1.95 2.26 0.83 98.86 0.00 98.15 0.00
1 11 15 0.34 1.87 2.26 0.79 98.87 0.00 98.14 0.00
1 11 47 0.34 1.91 2.26 0.79 98.87 0.00 98.14 0.00
2 0 16 0.36 1.88 2.26 1.30 98.34 0.00 97.27 0.00
2 0 48 0.35 1.90 2.26 1.32 98.33 0.00 97.26 0.00
2 1 17 0.36 1.87 2.26 1.98 97.66 0.00 97.26 0.00
2 1 49 0.93 2.31 2.26 1.41 97.66 0.00 97.26 0.00
2 2 18 0.36 1.89 2.26 0.73 98.91 0.00 97.25 0.00
2 2 50 0.37 1.84 2.26 0.72 98.91 0.00 97.25 0.00
2 3 19 0.34 1.92 2.26 0.46 99.21 0.00 97.24 0.00
2 3 51 0.32 1.95 2.26 0.48 99.20 0.00 97.24 0.00
2 8 20 0.34 1.93 2.26 0.45 99.21 0.00 97.23 0.00
2 8 52 0.32 1.96 2.26 0.47 99.21 0.00 97.23 0.00
2 9 21 0.33 1.93 2.26 0.44 99.22 0.00 97.22 0.00
2 9 53 0.31 1.97 2.26 0.47 99.22 0.00 97.22 0.00
2 10 22 0.34 1.93 2.26 1.28 98.38 0.00 97.22 0.00
2 10 54 0.32 1.98 2.26 1.30 98.38 0.00 97.22 0.00
2 11 23 0.35 1.86 2.26 0.28 99.37 0.00 97.21 0.00
2 11 55 0.35 1.94 2.26 0.29 99.36 0.00 97.21 0.00
3 0 24 21.60 2.10 2.26 54.17 24.24 0.00 0.01 0.00
3 0 56 0.36 2.35 2.26 75.40 24.24 0.00 0.01 0.00
3 1 25 24.37 2.12 2.26 36.34 39.30 0.00 0.01 0.00
3 1 57 0.40 2.35 2.26 60.31 39.30 0.00 0.01 0.00
3 2 26 24.36 2.11 2.26 35.56 40.08 0.00 0.01 0.00
3 2 58 0.37 2.36 2.26 59.55 40.08 0.00 0.01 0.00
3 3 27 24.50 2.11 2.26 36.15 39.35 0.00 0.01 0.00
3 3 59 0.36 2.35 2.26 60.29 39.35 0.00 0.01 0.00
3 8 28 24.59 2.10 2.26 36.24 39.17 0.00 0.01 0.00
3 8 60 0.35 2.36 2.26 60.48 39.17 0.00 0.01 0.00
3 9 29 19.32 2.15 2.26 70.96 9.72 0.00 0.01 0.00
3 9 61 0.42 2.36 2.26 89.87 9.72 0.00 0.01 0.00
3 10 30 24.61 2.10 2.26 36.09 39.30 0.00 0.01 0.00
3 10 62 0.36 2.36 2.26 60.34 39.30 0.00 0.01 0.00
3 11 31 24.66 2.10 2.26 35.88 39.46 0.00 0.01 0.00
3 11 63 0.36 2.36 2.26 60.18 39.46 0.00 0.01 0.00
5.021344 sec
GenuineIntel 11 CPUID levels; family:model:stepping 0x6:2e:6 (6:46:6)
8 * 133 = 1067 MHz max efficiency
17 * 133 = 2267 MHz TSC frequency
pkg core CPU %c0 GHz TSC %c1 %c3 %c6 %pc3 %pc6
3.88 2.22 2.26 15.10 81.02 0.00 72.09 0.00
0 0 0 2.59 1.56 2.26 2.36 95.05 0.00 94.36 0.00
0 0 32 0.38 1.82 2.26 4.57 95.05 0.00 94.36 0.00
0 1 1 0.70 1.91 2.26 0.73 98.56 0.00 94.36 0.00
0 1 33 0.69 2.14 2.26 0.74 98.57 0.00 94.37 0.00
0 2 2 0.33 1.92 2.26 0.65 99.02 0.00 94.37 0.00
0 2 34 0.35 1.97 2.26 0.63 99.02 0.00 94.37 0.00
0 3 3 0.32 1.92 2.26 0.57 99.10 0.00 94.36 0.00
0 3 35 0.31 1.93 2.26 0.59 99.10 0.00 94.36 0.00
0 8 4 0.33 1.94 2.26 0.57 99.10 0.00 94.36 0.00
0 8 36 0.31 1.95 2.26 0.59 99.10 0.00 94.36 0.00
0 9 5 0.32 1.94 2.26 0.57 99.11 0.00 94.37 0.00
0 9 37 0.30 1.95 2.26 0.59 99.11 0.00 94.37 0.00
0 10 6 0.32 1.95 2.26 0.56 99.12 0.00 94.37 0.00
0 10 38 0.30 1.96 2.26 0.58 99.12 0.00 94.37 0.00
0 11 7 0.33 1.89 2.26 0.56 99.11 0.00 94.37 0.00
0 11 39 0.35 1.93 2.26 0.54 99.11 0.00 94.37 0.00
1 0 8 0.39 1.86 2.26 0.51 99.09 0.00 97.45 0.00
1 0 40 0.34 1.91 2.26 0.57 99.09 0.00 97.45 0.00
1 1 9 0.44 1.76 2.26 1.55 98.02 0.00 97.45 0.00
1 1 41 1.38 2.31 2.26 0.61 98.02 0.00 97.45 0.00
1 2 10 0.35 1.92 2.26 0.14 99.51 0.00 97.45 0.00
1 2 42 0.34 1.91 2.26 0.15 99.51 0.00 97.45 0.00
1 3 11 0.34 1.94 2.26 0.48 99.18 0.00 97.45 0.00
1 3 43 0.34 1.92 2.26 0.48 99.18 0.00 97.45 0.00
1 8 12 0.33 1.95 2.26 0.45 99.22 0.00 97.45 0.00
1 8 44 0.32 1.94 2.26 0.46 99.22 0.00 97.45 0.00
1 9 13 0.33 1.96 2.26 0.45 99.22 0.00 97.45 0.00
1 9 45 0.32 1.95 2.26 0.46 99.22 0.00 97.45 0.00
1 10 14 0.33 1.97 2.26 0.45 99.22 0.00 97.45 0.00
1 10 46 0.32 1.97 2.26 0.46 99.22 0.00 97.45 0.00
1 11 15 0.34 1.89 2.26 0.44 99.22 0.00 97.45 0.00
1 11 47 0.36 1.92 2.26 0.42 99.22 0.00 97.45 0.00
2 0 16 0.58 1.97 2.26 0.54 98.88 0.00 96.52 0.00
2 0 48 0.35 1.89 2.26 0.76 98.89 0.00 96.52 0.00
2 1 17 0.49 1.74 2.26 2.00 97.51 0.00 96.52 0.00
2 1 49 1.81 2.35 2.26 0.68 97.51 0.00 96.52 0.00
2 2 18 0.37 1.89 2.26 0.60 99.02 0.00 96.52 0.00
2 2 50 0.42 1.79 2.26 0.55 99.03 0.00 96.53 0.00
2 3 19 0.36 1.91 2.26 0.49 99.15 0.00 96.53 0.00
2 3 51 0.37 1.90 2.26 0.47 99.15 0.00 96.53 0.00
2 8 20 0.34 1.95 2.26 0.39 99.27 0.00 96.53 0.00
2 8 52 0.32 1.94 2.26 0.41 99.27 0.00 96.53 0.00
2 9 21 0.34 1.95 2.26 0.38 99.28 0.00 96.54 0.00
2 9 53 0.32 1.96 2.26 0.40 99.28 0.00 96.54 0.00
2 10 22 0.34 1.95 2.26 0.39 99.27 0.00 96.54 0.00
2 10 54 0.33 1.96 2.26 0.41 99.27 0.00 96.54 0.00
2 11 23 0.35 1.87 2.26 0.13 99.52 0.00 96.54 0.00
2 11 55 0.36 1.93 2.26 0.12 99.52 0.00 96.54 0.00
3 0 24 41.44 2.30 2.26 29.71 28.85 0.00 0.01 0.00
3 0 56 0.40 2.38 2.26 70.75 28.85 0.00 0.01 0.00
3 1 25 40.89 2.29 2.26 35.82 23.30 0.00 0.01 0.00
3 1 57 0.58 2.30 2.26 76.13 23.30 0.00 0.01 0.00
3 2 26 23.28 2.21 2.26 49.56 27.16 0.00 0.01 0.00
3 2 58 0.43 2.38 2.26 72.42 27.16 0.00 0.01 0.00
3 3 27 24.34 2.21 2.26 42.50 33.16 0.00 0.01 0.00
3 3 59 0.38 2.38 2.26 66.46 33.16 0.00 0.01 0.00
3 8 28 24.35 2.21 2.26 42.62 33.03 0.00 0.01 0.00
3 8 60 0.37 2.38 2.26 66.59 33.03 0.00 0.01 0.00
3 9 29 19.99 2.24 2.26 71.27 8.73 0.00 0.01 0.00
3 9 61 0.41 2.32 2.26 90.86 8.73 0.00 0.01 0.00
3 10 30 24.33 2.20 2.26 42.93 32.74 0.00 0.01 0.00
3 10 62 0.38 2.38 2.26 66.88 32.74 0.00 0.01 0.00
3 11 31 24.49 2.21 2.26 42.75 32.76 0.00 0.01 0.00
3 11 63 0.38 2.38 2.26 66.86 32.76 0.00 0.01 0.00
5.009698 sec
GenuineIntel 11 CPUID levels; family:model:stepping 0x6:2e:6 (6:46:6)
8 * 133 = 1067 MHz max efficiency
17 * 133 = 2267 MHz TSC frequency
pkg core CPU %c0 GHz TSC %c1 %c3 %c6 %pc3 %pc6
4.10 2.09 2.26 14.93 80.97 0.00 62.47 0.00
0 0 0 1.41 1.58 2.26 2.84 95.75 0.00 95.27 0.00
0 0 32 0.36 1.82 2.26 3.90 95.74 0.00 95.26 0.00
0 1 1 0.60 1.95 2.26 0.34 99.05 0.00 95.26 0.00
0 1 33 0.51 2.07 2.26 0.44 99.05 0.00 95.25 0.00
0 2 2 0.33 1.92 2.26 2.04 97.64 0.00 95.25 0.00
0 2 34 0.31 1.93 2.26 2.05 97.64 0.00 95.25 0.00
0 3 3 0.32 1.93 2.26 2.37 97.30 0.00 95.25 0.00
0 3 35 0.31 1.93 2.26 2.39 97.30 0.00 95.25 0.00
0 8 4 0.32 1.93 2.26 2.37 97.31 0.00 95.25 0.00
0 8 36 0.30 1.93 2.26 2.38 97.31 0.00 95.25 0.00
0 9 5 0.32 1.93 2.26 2.36 97.31 0.00 95.25 0.00
0 9 37 0.30 1.95 2.26 2.39 97.31 0.00 95.25 0.00
0 10 6 0.32 1.97 2.26 2.36 97.32 0.00 95.25 0.00
0 10 38 0.31 1.96 2.26 2.37 97.32 0.00 95.25 0.00
0 11 7 0.32 1.87 2.26 1.70 97.97 0.00 95.25 0.00
0 11 39 0.33 1.91 2.26 1.70 97.97 0.00 95.24 0.00
1 0 8 0.33 2.06 2.26 2.31 97.36 0.00 58.44 0.00
1 0 40 0.31 2.08 2.26 2.33 97.36 0.00 58.44 0.00
1 1 9 0.32 2.07 2.26 1.50 98.18 0.00 58.44 0.00
1 1 41 0.32 2.09 2.26 1.51 98.18 0.00 58.44 0.00
1 2 10 0.32 2.09 2.26 2.31 97.37 0.00 58.45 0.00
1 2 42 0.31 2.10 2.26 2.32 97.37 0.00 58.45 0.00
1 3 11 40.11 2.65 2.26 1.31 58.58 0.00 58.45 0.00
1 3 43 0.34 2.13 2.26 41.08 58.58 0.00 58.44 0.00
1 8 12 0.32 2.11 2.26 2.30 97.39 0.00 58.44 0.00
1 8 44 0.30 2.12 2.26 2.32 97.39 0.00 58.44 0.00
1 9 13 0.32 2.12 2.26 1.32 98.36 0.00 58.44 0.00
1 9 45 0.30 2.13 2.26 1.34 98.36 0.00 58.44 0.00
1 10 14 0.31 2.12 2.26 2.30 97.39 0.00 58.43 0.00
1 10 46 0.29 2.12 2.26 2.31 97.40 0.00 58.44 0.00
1 11 15 0.32 2.07 2.26 2.28 97.40 0.00 58.43 0.00
1 11 47 0.32 2.09 2.26 2.28 97.40 0.00 58.43 0.00
2 0 16 0.51 2.11 2.26 0.16 99.33 0.00 96.18 0.00
2 0 48 0.34 1.88 2.26 0.32 99.34 0.00 96.19 0.00
2 1 17 0.40 1.85 2.26 0.87 98.73 0.00 96.19 0.00
2 1 49 0.94 2.32 2.26 0.33 98.73 0.00 96.18 0.00
2 2 18 0.35 1.91 2.26 2.36 97.29 0.00 96.18 0.00
2 2 50 0.36 1.86 2.26 2.35 97.29 0.00 96.18 0.00
2 3 19 0.33 1.95 2.26 2.26 97.41 0.00 96.18 0.00
2 3 51 0.32 1.95 2.26 2.28 97.41 0.00 96.17 0.00
2 8 20 0.33 1.96 2.26 2.25 97.42 0.00 96.18 0.00
2 8 52 0.31 1.96 2.26 2.27 97.42 0.00 96.18 0.00
2 9 21 0.33 1.96 2.26 2.25 97.42 0.00 96.17 0.00
2 9 53 0.31 1.97 2.26 2.27 97.42 0.00 96.18 0.00
2 10 22 0.33 1.96 2.26 2.25 97.42 0.00 96.17 0.00
2 10 54 0.31 1.98 2.26 2.27 97.42 0.00 96.17 0.00
2 11 23 0.34 1.88 2.26 2.25 97.41 0.00 96.18 0.00
2 11 55 0.34 1.94 2.26 2.24 97.42 0.00 96.18 0.00
3 0 24 24.70 1.99 2.26 37.79 37.51 0.00 0.02 0.00
3 0 56 0.36 2.33 2.26 62.13 37.51 0.00 0.02 0.00
3 1 25 25.58 1.99 2.26 33.83 40.59 0.00 0.02 0.00
3 1 57 0.38 2.29 2.26 59.03 40.59 0.00 0.02 0.00
3 2 26 25.92 1.99 2.26 33.57 40.51 0.00 0.02 0.00
3 2 58 0.35 2.33 2.26 59.14 40.51 0.00 0.02 0.00
3 3 27 26.09 1.98 2.26 34.14 39.77 0.00 0.02 0.00
3 3 59 0.37 2.33 2.26 59.87 39.77 0.00 0.02 0.00
3 8 28 26.04 1.98 2.26 34.60 39.37 0.00 0.02 0.00
3 8 60 0.36 2.32 2.26 60.28 39.37 0.00 0.02 0.00
3 9 29 20.88 2.03 2.26 68.17 10.95 0.00 0.02 0.00
3 9 61 0.42 2.23 2.26 88.63 10.95 0.00 0.02 0.00
3 10 30 26.22 1.97 2.26 34.80 38.98 0.00 0.02 0.00
3 10 62 0.36 2.32 2.26 60.66 38.98 0.00 0.02 0.00
3 11 31 26.08 1.98 2.26 34.48 39.43 0.00 0.02 0.00
3 11 63 0.35 2.34 2.26 60.21 39.43 0.00 0.02 0.00
5.014038 sec
^ permalink raw reply
* Re: DSCP values in TCP handshake
From: Stephen Hemminger @ 2011-04-19 4:16 UTC (permalink / raw)
To: Mikael Abrahamsson; +Cc: Joe Buehler, Eric Dumazet, netdev
In-Reply-To: <alpine.DEB.2.00.1104190547300.14027@uplift.swm.pp.se>
On Tue, 19 Apr 2011 05:50:34 +0200 (CEST)
Mikael Abrahamsson <swmike@swm.pp.se> wrote:
> On Mon, 18 Apr 2011, Stephen Hemminger wrote:
>
> > If the DSCP bits are reflected, then it could allow for even better SYN
> > flood attack. Attacker could maliciously set DSCP to elevate priority
> > processing of his bogus SYN packets and also cause SYN-ACK on reverse
> > path to also take priority.
>
> Incoming, it's already too late. Outgoing, yes, that might be a problem,
> but if you have a QoS enabled network then you might as well solve that in
> the network, not in the host.
>
> Does Linux internally look at DSCP when deciding what SYNs to handle
> first? If not, I think the above reasoning is misdirected.
Linux does not look at DSCP of incoming packets (there is no queue).
Of course, you can do anything with qdisc, and iptables.
^ permalink raw reply
* Re: DSCP values in TCP handshake
From: Mikael Abrahamsson @ 2011-04-19 4:28 UTC (permalink / raw)
To: Stephen Hemminger; +Cc: Joe Buehler, Eric Dumazet, netdev
In-Reply-To: <20110418211637.57f1cfb8@nehalam>
On Mon, 18 Apr 2011, Stephen Hemminger wrote:
> Linux does not look at DSCP of incoming packets (there is no queue).
Then I see no reason for the policy of not reflecting DSCP.
If we receive the DSCP marked packet then it means the network is either
not QoS enabled (it doesn't care) or it's actually allowed through the
border router with DSCP unchanged. Either means it's safe to reflect the
DSCP value, either it will have no effect or it's actually meant to be
prioritized.
With precedence, it originally was mandated that if the precedence value
changed, the TCP session should be reset. Fortunately, this was changed
but I would still say that it's thought that DSCP values should be
reflected by the server.
For instance:
<http://tools.ietf.org/html/draft-ietf-ieprep-reflexive-dscp-02>
"The requester could initiate this. Thus, if the DSCP
received on one TCP segment differs from the TCP used on a prior TCP
segment in a session, the new DSCP SHOULD be reflected unless local
policy prevents this."
I don't know why this didn't make it into RFC, I can inquiry if there is
interest.
--
Mikael Abrahamsson email: swmike@swm.pp.se
^ permalink raw reply
* Re: [PATCH 2.6.36 1/1] IPv6: Create temp address based on advertised network prefix
From: Ben Hutchings @ 2011-04-19 5:01 UTC (permalink / raw)
To: Glenn Wurster
Cc: David S. Miller, Alexey Kuznetsov, Pekka Savola (ipv6),
James Morris, Hideaki YOSHIFUJI, Patrick McHardy,
Stephen Hemminger, Eric Dumazet, Herbert Xu, netdev, linux-kernel,
dbarrera
In-Reply-To: <201104182124.18866.glenn@wurster.ca>
On Mon, 2011-04-18 at 21:24 -0400, Glenn Wurster wrote:
> As discussed ;Login: Volume 36, number 1,
Either provide a non-paywalled reference or a *much* fuller explanation
in the commit message.
> create a temporary address
> by hashing a random value along with the advertised network
> prefix. This results on the temporary address changing whenever
> the network prefix changes (i.e., the host changes networks), or
> whenever the random value (which can be set by a user-space
> application with sufficient privilege) changes.
>
> Signed-off-by: Glenn Wurster <gwurster@scs.carleton.ca>
> ---
> Documentation/networking/ip-sysctl.txt | 20 ++++-
> include/linux/ipv6.h | 4 +
> include/net/if_inet6.h | 3 +
> net/ipv6/Kconfig | 22 +++++
> net/ipv6/addrconf.c | 159
> +++++++++++++++++++++++++-------
> 5 files changed, 175 insertions(+), 33 deletions(-)
>
> diff --git a/Documentation/networking/ip-sysctl.txt
> b/Documentation/networking/ip-sysctl.txt
> index f350c69..b366c28 100644
> --- a/Documentation/networking/ip-sysctl.txt
> +++ b/Documentation/networking/ip-sysctl.txt
> @@ -1128,11 +1128,18 @@ router_solicitations - INTEGER
>
> use_tempaddr - INTEGER
> Preference for Privacy Extensions (RFC3041).
> + Bits 0 and 1:
> <= 0 : disable Privacy Extensions
> == 1 : enable Privacy Extensions, but prefer public
> addresses over temporary addresses.
> - > 1 : enable Privacy Extensions and prefer temporary
> + >= 2 : enable Privacy Extensions and prefer temporary
> addresses over public addresses.
> + Bit 2:
> + == 0 : Use RFC3041 random algorithm for generating
> + temporary addresses.
> + == 1 : Use the output of a hash based on the network prefix
> + and random number from temp_random.
> +
> Default: 0 (for most devices)
> -1 (for point-to-point devices and loopback devices)
This is pretty awful already, for a sysctl whose name suggests a
boolean. I think you should add another boolean rather than compounding
it.
> @@ -1144,6 +1151,17 @@ temp_prefered_lft - INTEGER
> Preferred lifetime (in seconds) for temporary addresses.
> Default: 86400 (1 day)
>
> +temp_random - INTEGER[4]
> + Random number used as input to the hash function when
> + generating temporary addresses also based on the network
> + prefix.
What's with the
random
indentation?
> + == 0 : Generate a new random value when a temporary address
> + is created. This random value replaces the 0 in
> + temp_random
> + > 0 : A random number used as input to the hash
> +
> + Default: 0
We have a fairly good random number generator in the kernel; I'm not
sure this setting is really necessary. We don't do that for e.g. TCP
sequence number generation.
> max_desync_factor - INTEGER
> Maximum value for DESYNC_FACTOR, which is a random value
> that ensures that clients don't synchronize with each
> diff --git a/include/linux/ipv6.h b/include/linux/ipv6.h
> index e62683b..b9bd404 100644
> --- a/include/linux/ipv6.h
> +++ b/include/linux/ipv6.h
> @@ -172,6 +172,9 @@ struct ipv6_devconf {
> __s32 disable_ipv6;
> __s32 accept_dad;
> __s32 force_tllao;
> +#ifdef CONFIG_IPV6_PRIVACY_HASH
> + __u32 temp_random[4];
> +#endif
> void *sysctl;
> };
>
> @@ -213,6 +216,7 @@ enum {
> DEVCONF_DISABLE_IPV6,
> DEVCONF_ACCEPT_DAD,
> DEVCONF_FORCE_TLLAO,
> + DEVCONF_TEMP_RANDOM,
> DEVCONF_MAX
> };
>
> diff --git a/include/net/if_inet6.h b/include/net/if_inet6.h
> index f95ff8d..99428bf 100644
> --- a/include/net/if_inet6.h
> +++ b/include/net/if_inet6.h
> @@ -183,6 +183,9 @@ struct inet6_dev {
>
> #ifdef CONFIG_IPV6_PRIVACY
> u8 rndid[8];
> +#ifdef CONFIG_IPV6_PRIVACY_HASH
> + __u32 rndid_inc;
> +#endif
> struct timer_list regen_timer;
> struct list_head tempaddr_list;
> #endif
> diff --git a/net/ipv6/Kconfig b/net/ipv6/Kconfig
> index 36d7437..c0bc79a 100644
> --- a/net/ipv6/Kconfig
> +++ b/net/ipv6/Kconfig
> @@ -39,6 +39,28 @@ config IPV6_PRIVACY
>
> See <file:Documentation/networking/ip-sysctl.txt> for details.
>
> +if IPV6_PRIVACY
> +
> +config IPV6_PRIVACY_HASH
> + bool "IPv6: Privacy Extension Hash Support"
> + select CRYPTO
> + select CRYPTO_SHA256
> + ---help---
> + Generate the pseudo-random global-scope unicast address(es) based on
> + the output of hashing together the broadcast prefix with a random
> + value. The algorithm is discussed in Volume 36, Number 1 of the USENIX
> + ;Login: publication.
> +
> + To use hash-based temorary addresses, do
> +
> + echo 6 >/proc/sys/net/ipv6/conf/all/use_tempaddr
> +
> + To modify the input to the hash, do
> +
> + echo <random> >/proc/sys/net/ipv6/conf/all/temp_random
> +
> +endif # if IPV6_PRIVACY
> +
> config IPV6_ROUTER_PREF
> bool "IPv6: Router Preference (RFC 4191) support"
> ---help---
> diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
> index 89bcb62..4a2eaca 100644
> --- a/net/ipv6/addrconf.c
> +++ b/net/ipv6/addrconf.c
> @@ -118,6 +118,7 @@ static inline void addrconf_sysctl_unregister(struct
> inet6_dev *idev)
> #endif
>
> #ifdef CONFIG_IPV6_PRIVACY
> +static int __ipv6_is_invalid_rndid(const __u8 * rndid);
> static int __ipv6_regen_rndid(struct inet6_dev *idev);
> static int __ipv6_try_regen_rndid(struct inet6_dev *idev, struct in6_addr
> *tmpaddr);
> static void ipv6_regen_rndid(unsigned long data);
> @@ -177,6 +178,9 @@ static struct ipv6_devconf ipv6_devconf __read_mostly = {
> .temp_prefered_lft = TEMP_PREFERRED_LIFETIME,
> .regen_max_retry = REGEN_MAX_RETRY,
> .max_desync_factor = MAX_DESYNC_FACTOR,
> +#ifdef CONFIG_IPV6_PRIVACY_HASH
> + .temp_random = { 0, 0, 0, 0 },
> +#endif
> #endif
> .max_addresses = IPV6_MAX_ADDRESSES,
> .accept_ra_defrtr = 1,
> @@ -211,6 +215,9 @@ static struct ipv6_devconf ipv6_devconf_dflt __read_mostly
> = {
Your mail client is misconfigured; it wrapped the line above and many
others,
> .temp_prefered_lft = TEMP_PREFERRED_LIFETIME,
> .regen_max_retry = REGEN_MAX_RETRY,
> .max_desync_factor = MAX_DESYNC_FACTOR,
> +#ifdef CONFIG_IPV6_PRIVACY_HASH
> + .temp_random = { 0, 0, 0, 0 },
> +#endif
> #endif
> .max_addresses = IPV6_MAX_ADDRESSES,
> .accept_ra_defrtr = 1,
> @@ -849,6 +856,7 @@ static int ipv6_create_tempaddr(struct inet6_ifaddr *ifp,
> struct inet6_ifaddr *i
> memcpy(&addr.s6_addr[8], &ift->addr.s6_addr[8], 8);
> spin_unlock_bh(&ift->lock);
> tmpaddr = &addr;
> + ift = NULL;
> } else {
> tmpaddr = NULL;
> }
> @@ -875,17 +883,71 @@ retry:
> }
> in6_ifa_hold(ifp);
> memcpy(addr.s6_addr, ifp->addr.s6_addr, 8);
> - if (__ipv6_try_regen_rndid(idev, tmpaddr) < 0) {
> - spin_unlock_bh(&ifp->lock);
> - write_unlock(&idev->lock);
> - printk(KERN_WARNING
> - "ipv6_create_tempaddr(): regeneration of randomized
> interface id failed.\n");
> - in6_ifa_put(ifp);
> - in6_dev_put(idev);
> - ret = -1;
> - goto out;
> +#ifdef CONFIG_IPV6_PRIVACY_HASH
> + while (idev->cnf.use_tempaddr > 4) {
Given that you redefined this as a bitfield, you need to mask out bits
3-31.
> + char hash[32];
> + __u32 temp_random[4];
> + int i;
> +
> + struct hash_desc desc = { .tfm = NULL, .flags = 0 };
> + struct scatterlist sg;
> +
> + BUG_ON (sizeof(temp_random) != sizeof(idev->cnf.temp_random));
BUILD_BUG_ON, please. And no space after the macro name.
> + for (i = 0; unlikely(idev->cnf.temp_random[i] == 0) && i < 4; i++);
Last semi-colon goes on a separate line.
Run scripts/checkpatch.pl on your patch and fix the style errors it
points out.
> + if (unlikely(i == 4))
> + get_random_bytes(idev->cnf.temp_random, sizeof(idev-
> >cnf.temp_random));
> +
> + desc.tfm = crypto_alloc_hash ("sha256", 0, CRYPTO_ALG_ASYNC);
> + if (IS_ERR(desc.tfm)) {
> + idev->cnf.use_tempaddr &= 0x03;
> + printk (KERN_WARNING
> + "ipv6_create_tempaddr(): Hash unavailable,
> reverting use_tempaddr to %d.\n",
> + idev->cnf.use_tempaddr);
> + break;
> + }
> +
> + BUG_ON (crypto_hash_digestsize(desc.tfm) > sizeof(hash));
> + BUG_ON (sizeof(idev->rndid) < 8);
Last of those can be a BUILD_BUG_ON.
> + crypto_hash_init (&desc);
> +
> + sg_init_one (&sg, (u8 *)addr.s6_addr, 8);
> + crypto_hash_update (&desc, &sg, 8);
> +
> + memcpy (temp_random, idev->cnf.temp_random, sizeof(temp_random));
> + temp_random[3] += idev->rndid_inc;
> + sg_init_one (&sg, (u8 *)temp_random, sizeof(temp_random));
> + crypto_hash_update (&desc, &sg, sizeof(temp_random));
> +
> + crypto_hash_final (&desc, hash);
> + crypto_free_hash (desc.tfm);
> +
> + memcpy (&addr.s6_addr[8], hash, 8);
> + if (__ipv6_is_invalid_rndid(&addr.s6_addr[8])) {
> + idev->rndid_inc++;
> + continue;
> + }
> +
> + ift = ipv6_get_ifaddr (dev_net(idev->dev), &addr, idev->dev, 0);
> + break;
> + }
> +#else
> + idev->cnf.use_tempaddr &= 0x03;
Broken when use_tempaddr < 0.
Also if use_tempaddr > 4 then this should warn that the alternate
algorithm is not actually being used.
> +#endif
> + if (idev->cnf.use_tempaddr < 4) {
What if it's equal to 4?
> + if (__ipv6_try_regen_rndid(idev, tmpaddr) < 0) {
> + spin_unlock_bh(&ifp->lock);
> + write_unlock(&idev->lock);
> + printk(KERN_WARNING
> + "ipv6_create_tempaddr(): regeneration of randomized
> interface id failed.\n");
> + in6_ifa_put(ifp);
> + in6_dev_put(idev);
> + ret = -1;
> + goto out;
> + }
> + memcpy(&addr.s6_addr[8], idev->rndid, 8);
> }
> - memcpy(&addr.s6_addr[8], idev->rndid, 8);
> age = (jiffies - ifp->tstamp) / HZ;
> tmp_valid_lft = min_t(__u32,
> ifp->valid_lft,
> @@ -922,11 +984,11 @@ retry:
> if (ifp->flags & IFA_F_OPTIMISTIC)
> addr_flags |= IFA_F_OPTIMISTIC;
>
> - ift = !max_addresses ||
> - ipv6_count_addresses(idev) < max_addresses ?
> - ipv6_add_addr(idev, &addr, tmp_plen,
> - ipv6_addr_type(&addr)&IPV6_ADDR_SCOPE_MASK,
> - addr_flags) : NULL;
> + if (!ift && (!max_addresses || ipv6_count_addresses(idev) <
> max_addresses)) {
> + ift = ipv6_add_addr(idev, &addr, tmp_plen,
> + ipv6_addr_type(&addr)&IPV6_ADDR_SCOPE_MASK,
> + addr_flags);
> + }
> if (!ift || IS_ERR(ift)) {
> in6_ifa_put(ifp);
> in6_dev_put(idev);
> @@ -943,9 +1005,11 @@ retry:
> ift->prefered_lft = tmp_prefered_lft;
> ift->cstamp = tmp_cstamp;
> ift->tstamp = tmp_tstamp;
> + ift->regen_count = 0;
> spin_unlock_bh(&ift->lock);
>
> - addrconf_dad_start(ift, 0);
> + if (ift->flags & IFA_F_TENTATIVE)
> + addrconf_dad_start(ift, 0);
> in6_ifa_put(ift);
> in6_dev_put(idev);
> out:
> @@ -1090,7 +1154,7 @@ static int ipv6_get_saddr_eval(struct net *net,
> */
> int preftmp = dst->prefs & (IPV6_PREFER_SRC_PUBLIC|
> IPV6_PREFER_SRC_TMP) ?
> !!(dst->prefs & IPV6_PREFER_SRC_TMP) :
> - score->ifa->idev->cnf.use_tempaddr >= 2;
> + !!(score->ifa->idev->cnf.use_tempaddr & 2);
[...]
Broken when use_tempaddr < 0.
Ben.
--
Ben Hutchings, Senior Software Engineer, Solarflare
Not speaking for my employer; that's the marketing department's job.
They asked us to note that Solarflare product names are trademarked.
^ permalink raw reply
* Re: ip_rt_bug questions.
From: David Miller @ 2011-04-19 5:04 UTC (permalink / raw)
To: davej; +Cc: netdev
In-Reply-To: <20110418215922.GA17818@redhat.com>
From: Dave Jones <davej@redhat.com>
Date: Mon, 18 Apr 2011 17:59:23 -0400
> On Mon, Apr 18, 2011 at 02:50:23PM -0700, David Miller wrote:
>
> > BTW, if you could modify this thing to spit out a stack
> > trace (probably by using WARN_ON() or similar) that will
> > probably show us where the bug is coming from.
>
> Ok, I'll add that, and see if I can reproduce it again.
Thanks a lot Dave.
^ permalink raw reply
* [PATCH net-next-2.6 0/8] sctp: some cleanup and tiny fix for add/del ip
From: Wei Yongjun @ 2011-04-19 5:07 UTC (permalink / raw)
To: David Miller; +Cc: netdev@vger.kernel.org, lksctp
Series of 8 patches against net-next-2.6, include some cleanup
and tiny fix for add/del ip, which have been waiting on vlad's
lksctp-dev tree for long times.
Shan Wei (5):
sctp: delete unused macro definition of sctp_chunk_is_control
sctp: fix the comment of sctp_sf_violation_paramlen()
sctp: use common head of addr parameter to access member in addr-unrelated code
sctp: kill abandoned SCTP_CMD_TRANSMIT command
sctp: use memdup_user to copy data from userspace
Vlad Yasevich (3):
sctp: teach CACC algorithm about removed transports
sctp: Allow bindx_del to accept 0 port.
sctp: Release all routes when processing acks ADD_IP or DEL_IP
include/net/sctp/command.h | 1 -
include/net/sctp/constants.h | 1 -
net/sctp/input.c | 2 +-
net/sctp/outqueue.c | 11 ++++++++---
net/sctp/sm_make_chunk.c | 18 +++++++-----------
net/sctp/sm_sideeffect.c | 6 ------
net/sctp/sm_statefuns.c | 5 +++--
net/sctp/socket.c | 28 +++++++++++-----------------
8 files changed, 30 insertions(+), 42 deletions(-)
^ permalink raw reply
* [PATCH net-next-2.6 1/8] sctp: delete unused macro definition of sctp_chunk_is_control
From: Wei Yongjun @ 2011-04-19 5:09 UTC (permalink / raw)
To: David Miller; +Cc: netdev@vger.kernel.org, lksctp
In-Reply-To: <4DAD18AB.3040401@cn.fujitsu.com>
The macro never be used.
And if needed, can use !sctp_chunk_is_data instead of.
Signed-off-by: Shan Wei <shanwei@cn.fujitsu.com>
Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
Signed-off-by: Wei Yongjun <yjwei@cn.fujitsu.com>
---
include/net/sctp/constants.h | 1 -
1 files changed, 0 insertions(+), 1 deletions(-)
diff --git a/include/net/sctp/constants.h b/include/net/sctp/constants.h
index c70d8cc..deac13d 100644
--- a/include/net/sctp/constants.h
+++ b/include/net/sctp/constants.h
@@ -150,7 +150,6 @@ SCTP_SUBTYPE_CONSTRUCTOR(OTHER, sctp_event_other_t, other)
SCTP_SUBTYPE_CONSTRUCTOR(PRIMITIVE, sctp_event_primitive_t, primitive)
-#define sctp_chunk_is_control(a) (a->chunk_hdr->type != SCTP_CID_DATA)
#define sctp_chunk_is_data(a) (a->chunk_hdr->type == SCTP_CID_DATA)
/* Calculate the actual data size in a data chunk */
--
1.6.5.2
^ permalink raw reply related
* [PATCH net-next-2.6 3/8] sctp: use common head of addr parameter to access member in addr-unrelated code
From: Wei Yongjun @ 2011-04-19 5:11 UTC (permalink / raw)
To: David Miller; +Cc: netdev@vger.kernel.org, lksctp
In-Reply-To: <4DAD18AB.3040401@cn.fujitsu.com>
From: Shan Wei <shanwei@cn.fujitsu.com>
The 'p' member of struct sctp_paramhdr is common part for
IPv4 addr parameter and IPv6 addr parameter in union sctp_addr_param.
For addr-related code, use specified addr parameter.
Otherwise, use common header to access type/length member.
Signed-off-by: Shan Wei <shanwei@cn.fujitsu.com>
Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
Signed-off-by: Wei Yongjun <yjwei@cn.fujitsu.com>
---
net/sctp/input.c | 2 +-
net/sctp/sm_make_chunk.c | 10 +++++-----
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/net/sctp/input.c b/net/sctp/input.c
index 5436c69..30cec77 100644
--- a/net/sctp/input.c
+++ b/net/sctp/input.c
@@ -1017,7 +1017,7 @@ static struct sctp_association *__sctp_rcv_asconf_lookup(
/* Skip over the ADDIP header and find the Address parameter */
param = (union sctp_addr_param *)(asconf + 1);
- af = sctp_get_af_specific(param_type2af(param->v4.param_hdr.type));
+ af = sctp_get_af_specific(param_type2af(param->p.type));
if (unlikely(!af))
return NULL;
diff --git a/net/sctp/sm_make_chunk.c b/net/sctp/sm_make_chunk.c
index b3434cc..844adfd 100644
--- a/net/sctp/sm_make_chunk.c
+++ b/net/sctp/sm_make_chunk.c
@@ -2923,7 +2923,7 @@ static __be16 sctp_process_asconf_param(struct sctp_association *asoc,
asconf_param->param_hdr.type != SCTP_PARAM_SET_PRIMARY)
return SCTP_ERROR_UNKNOWN_PARAM;
- switch (addr_param->v4.param_hdr.type) {
+ switch (addr_param->p.type) {
case SCTP_PARAM_IPV6_ADDRESS:
if (!asoc->peer.ipv6_address)
return SCTP_ERROR_DNS_FAILED;
@@ -2936,7 +2936,7 @@ static __be16 sctp_process_asconf_param(struct sctp_association *asoc,
return SCTP_ERROR_DNS_FAILED;
}
- af = sctp_get_af_specific(param_type2af(addr_param->v4.param_hdr.type));
+ af = sctp_get_af_specific(param_type2af(addr_param->p.type));
if (unlikely(!af))
return SCTP_ERROR_DNS_FAILED;
@@ -3100,7 +3100,7 @@ struct sctp_chunk *sctp_process_asconf(struct sctp_association *asoc,
/* Skip the address parameter and store a pointer to the first
* asconf parameter.
*/
- length = ntohs(addr_param->v4.param_hdr.length);
+ length = ntohs(addr_param->p.length);
asconf_param = (sctp_addip_param_t *)((void *)addr_param + length);
chunk_len -= length;
@@ -3177,7 +3177,7 @@ static void sctp_asconf_param_success(struct sctp_association *asoc,
((void *)asconf_param + sizeof(sctp_addip_param_t));
/* We have checked the packet before, so we do not check again. */
- af = sctp_get_af_specific(param_type2af(addr_param->v4.param_hdr.type));
+ af = sctp_get_af_specific(param_type2af(addr_param->p.type));
af->from_addr_param(&addr, addr_param, htons(bp->port), 0);
switch (asconf_param->param_hdr.type) {
@@ -3304,7 +3304,7 @@ int sctp_process_asconf_ack(struct sctp_association *asoc,
/* Skip the address parameter in the last asconf sent and store a
* pointer to the first asconf parameter.
*/
- length = ntohs(addr_param->v4.param_hdr.length);
+ length = ntohs(addr_param->p.length);
asconf_param = (sctp_addip_param_t *)((void *)addr_param + length);
asconf_len -= length;
--
1.6.5.2
^ permalink raw reply related
* [PATCH net-next-2.6 2/8] sctp: fix the comment of sctp_sf_violation_paramlen()
From: Wei Yongjun @ 2011-04-19 5:11 UTC (permalink / raw)
To: David Miller; +Cc: netdev@vger.kernel.org, lksctp
In-Reply-To: <4DAD18AB.3040401@cn.fujitsu.com>
From: Shan Wei <shanwei@cn.fujitsu.com>
Update the comment about sctp_sf_violation_paramlen() to be
more precise.
Signed-off-by: Shan Wei <shanwei@cn.fujitsu.com>
Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
Signed-off-by: Wei Yongjun <yjwei@cn.fujitsu.com>
---
net/sctp/sm_statefuns.c | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/net/sctp/sm_statefuns.c b/net/sctp/sm_statefuns.c
index 7679208..c085472 100644
--- a/net/sctp/sm_statefuns.c
+++ b/net/sctp/sm_statefuns.c
@@ -4343,8 +4343,9 @@ static sctp_disposition_t sctp_sf_violation_chunklen(
/*
* Handle a protocol violation when the parameter length is invalid.
- * "Invalid" length is identified as smaller than the minimal length a
- * given parameter can be.
+ * If the length is smaller than the minimum length of a given parameter,
+ * or accumulated length in multi parameters exceeds the end of the chunk,
+ * the length is considered as invalid.
*/
static sctp_disposition_t sctp_sf_violation_paramlen(
const struct sctp_endpoint *ep,
--
1.6.5.2
^ permalink raw reply related
* [PATCH net-next-2.6 4/8] sctp: kill abandoned SCTP_CMD_TRANSMIT command
From: Wei Yongjun @ 2011-04-19 5:12 UTC (permalink / raw)
To: David Miller; +Cc: netdev@vger.kernel.org, lksctp
In-Reply-To: <4DAD18AB.3040401@cn.fujitsu.com>
From: Shan Wei <shanwei@cn.fujitsu.com>
Remove SCTP_CMD_TRANSMIT command as it never be used.
Signed-off-by: Shan Wei <shanwei@cn.fujitsu.com>
Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
Signed-off-by: Wei Yongjun <yjwei@cn.fujitsu.com>
---
include/net/sctp/command.h | 1 -
net/sctp/sm_sideeffect.c | 6 ------
2 files changed, 0 insertions(+), 7 deletions(-)
diff --git a/include/net/sctp/command.h b/include/net/sctp/command.h
index c01dc99..2b44764 100644
--- a/include/net/sctp/command.h
+++ b/include/net/sctp/command.h
@@ -73,7 +73,6 @@ typedef enum {
SCTP_CMD_INIT_FAILED, /* High level, do init failure work. */
SCTP_CMD_REPORT_DUP, /* Report a duplicate TSN. */
SCTP_CMD_STRIKE, /* Mark a strike against a transport. */
- SCTP_CMD_TRANSMIT, /* Transmit the outqueue. */
SCTP_CMD_HB_TIMERS_START, /* Start the heartbeat timers. */
SCTP_CMD_HB_TIMER_UPDATE, /* Update a heartbeat timers. */
SCTP_CMD_HB_TIMERS_STOP, /* Stop the heartbeat timers. */
diff --git a/net/sctp/sm_sideeffect.c b/net/sctp/sm_sideeffect.c
index 5f86ee4..3b80fe2 100644
--- a/net/sctp/sm_sideeffect.c
+++ b/net/sctp/sm_sideeffect.c
@@ -1415,12 +1415,6 @@ static int sctp_cmd_interpreter(sctp_event_t event_type,
SCTP_RTXR_T3_RTX);
break;
- case SCTP_CMD_TRANSMIT:
- /* Kick start transmission. */
- error = sctp_outq_uncork(&asoc->outqueue);
- local_cork = 0;
- break;
-
case SCTP_CMD_ECN_CE:
/* Do delayed CE processing. */
sctp_do_ecn_ce_work(asoc, cmd->obj.u32);
--
1.6.5.2
^ permalink raw reply related
* [PATCH net-next-2.6 5/8] sctp: use memdup_user to copy data from userspace
From: Wei Yongjun @ 2011-04-19 5:13 UTC (permalink / raw)
To: David Miller; +Cc: netdev@vger.kernel.org, lksctp
In-Reply-To: <4DAD18AB.3040401@cn.fujitsu.com>
From: Shan Wei <shanwei@cn.fujitsu.com>
Use common function to simply code.
Signed-off-by: Shan Wei <shanwei@cn.fujitsu.com>
Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
Signed-off-by: Wei Yongjun <yjwei@cn.fujitsu.com>
---
net/sctp/socket.c | 22 ++++++----------------
1 files changed, 6 insertions(+), 16 deletions(-)
diff --git a/net/sctp/socket.c b/net/sctp/socket.c
index deb82e3..5c9980a 100644
--- a/net/sctp/socket.c
+++ b/net/sctp/socket.c
@@ -3215,14 +3215,9 @@ static int sctp_setsockopt_hmac_ident(struct sock *sk,
if (optlen < sizeof(struct sctp_hmacalgo))
return -EINVAL;
- hmacs = kmalloc(optlen, GFP_KERNEL);
- if (!hmacs)
- return -ENOMEM;
-
- if (copy_from_user(hmacs, optval, optlen)) {
- err = -EFAULT;
- goto out;
- }
+ hmacs= memdup_user(optval, optlen);
+ if (IS_ERR(hmacs))
+ return PTR_ERR(hmacs);
idents = hmacs->shmac_num_idents;
if (idents == 0 || idents > SCTP_AUTH_NUM_HMACS ||
@@ -3257,14 +3252,9 @@ static int sctp_setsockopt_auth_key(struct sock *sk,
if (optlen <= sizeof(struct sctp_authkey))
return -EINVAL;
- authkey = kmalloc(optlen, GFP_KERNEL);
- if (!authkey)
- return -ENOMEM;
-
- if (copy_from_user(authkey, optval, optlen)) {
- ret = -EFAULT;
- goto out;
- }
+ authkey= memdup_user(optval, optlen);
+ if (IS_ERR(authkey))
+ return PTR_ERR(authkey);
if (authkey->sca_keylength > optlen - sizeof(struct sctp_authkey)) {
ret = -EINVAL;
--
1.6.5.2
^ permalink raw reply related
* [PATCH net-next-2.6 6/8] sctp: teach CACC algorithm about removed transports
From: Wei Yongjun @ 2011-04-19 5:13 UTC (permalink / raw)
To: David Miller; +Cc: netdev@vger.kernel.org, lksctp
In-Reply-To: <4DAD18AB.3040401@cn.fujitsu.com>
From: Vlad Yasevich <vladislav.yasevich@hp.com>
When we have have to remove a transport due to ASCONF, we move
the data to a new active path. This can trigger CACC algorithm
to not mark that data as missing when SACKs arrive. This is
because the transport passed to the CACC algorithm is the one
this data is sitting on, not the one it was sent on (that one
may be gone). So, by sending the original transport (even if
it's NULL), we may start marking data as missing.
Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
Signed-off-by: Wei Yongjun <yjwei@cn.fujitsu.com>
---
net/sctp/outqueue.c | 11 ++++++++---
1 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/net/sctp/outqueue.c b/net/sctp/outqueue.c
index bf92a5b..7812772 100644
--- a/net/sctp/outqueue.c
+++ b/net/sctp/outqueue.c
@@ -131,7 +131,8 @@ static inline int sctp_cacc_skip_3_1_d(struct sctp_transport *primary,
static inline int sctp_cacc_skip_3_1_f(struct sctp_transport *transport,
int count_of_newacks)
{
- if (count_of_newacks < 2 && !transport->cacc.cacc_saw_newack)
+ if (count_of_newacks < 2 &&
+ (transport && !transport->cacc.cacc_saw_newack))
return 1;
return 0;
}
@@ -618,9 +619,12 @@ redo:
/* If we are retransmitting, we should only
* send a single packet.
+ * Otherwise, try appending this chunk again.
*/
if (rtx_timeout || fast_rtx)
done = 1;
+ else
+ goto redo;
/* Bundle next chunk in the next round. */
break;
@@ -1683,8 +1687,9 @@ static void sctp_mark_missing(struct sctp_outq *q,
/* SFR-CACC may require us to skip marking
* this chunk as missing.
*/
- if (!transport || !sctp_cacc_skip(primary, transport,
- count_of_newacks, tsn)) {
+ if (!transport || !sctp_cacc_skip(primary,
+ chunk->transport,
+ count_of_newacks, tsn)) {
chunk->tsn_missing_report++;
SCTP_DEBUG_PRINTK(
--
1.6.5.2
^ permalink raw reply related
* [PATCH net-next-2.6 7/8] sctp: Allow bindx_del to accept 0 port
From: Wei Yongjun @ 2011-04-19 5:14 UTC (permalink / raw)
To: David Miller; +Cc: netdev@vger.kernel.org, lksctp
In-Reply-To: <4DAD18AB.3040401@cn.fujitsu.com>
From: Vlad Yasevich <vladislav.yasevich@hp.com>
We allow 0 port when adding new addresses. It only
makes sence to allow 0 port when removing addresses.
When removing the currently bound port will be used
when the port in the address is set to 0.
Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
Signed-off-by: Wei Yongjun <yjwei@cn.fujitsu.com>
---
net/sctp/socket.c | 6 +++++-
1 files changed, 5 insertions(+), 1 deletions(-)
diff --git a/net/sctp/socket.c b/net/sctp/socket.c
index 5c9980a..431b890 100644
--- a/net/sctp/socket.c
+++ b/net/sctp/socket.c
@@ -658,11 +658,15 @@ static int sctp_bindx_rem(struct sock *sk, struct sockaddr *addrs, int addrcnt)
goto err_bindx_rem;
}
- if (sa_addr->v4.sin_port != htons(bp->port)) {
+ if (sa_addr->v4.sin_port &&
+ sa_addr->v4.sin_port != htons(bp->port)) {
retval = -EINVAL;
goto err_bindx_rem;
}
+ if (!sa_addr->v4.sin_port)
+ sa_addr->v4.sin_port = htons(bp->port);
+
/* FIXME - There is probably a need to check if sk->sk_saddr and
* sk->sk_rcv_addr are currently set to one of the addresses to
* be removed. This is something which needs to be looked into
--
1.6.5.2
^ permalink raw reply related
* [PATCH net-next-2.6 8/8] sctp: Release all routes when processing acks ADD_IP or DEL_IP
From: Wei Yongjun @ 2011-04-19 5:15 UTC (permalink / raw)
To: David Miller; +Cc: netdev@vger.kernel.org, lksctp
In-Reply-To: <4DAD18AB.3040401@cn.fujitsu.com>
From: Vlad Yasevich <vladislav.yasevich@hp.com>
When processing an ACK for ADD_IP parameter, we only release
the routes on non-active transports. This can cause a wrong
source address to be used. We can release the routes and
cause new route lookups and source address selection so that
new addresses can be used as source. Additionally, we don't need
to lookup routes for all transports at the same time. We can let
the transmit code path update the cached route when the transport
actually sends something.
Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
Signed-off-by: Wei Yongjun <yjwei@cn.fujitsu.com>
---
net/sctp/sm_make_chunk.c | 8 ++------
1 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/net/sctp/sm_make_chunk.c b/net/sctp/sm_make_chunk.c
index 844adfd..f87ccb1 100644
--- a/net/sctp/sm_make_chunk.c
+++ b/net/sctp/sm_make_chunk.c
@@ -3193,11 +3193,8 @@ static void sctp_asconf_param_success(struct sctp_association *asoc,
local_bh_enable();
list_for_each_entry(transport, &asoc->peer.transport_addr_list,
transports) {
- if (transport->state == SCTP_ACTIVE)
- continue;
dst_release(transport->dst);
- sctp_transport_route(transport, NULL,
- sctp_sk(asoc->base.sk));
+ transport->dst = NULL;
}
break;
case SCTP_PARAM_DEL_IP:
@@ -3207,8 +3204,7 @@ static void sctp_asconf_param_success(struct sctp_association *asoc,
list_for_each_entry(transport, &asoc->peer.transport_addr_list,
transports) {
dst_release(transport->dst);
- sctp_transport_route(transport, NULL,
- sctp_sk(asoc->base.sk));
+ transport->dst = NULL;
}
break;
default:
--
1.6.5.2
^ permalink raw reply related
* [PATCH net-next-2.6 1/8 v2] sctp: delete unused macro definition of sctp_chunk_is_control
From: Wei Yongjun @ 2011-04-19 5:19 UTC (permalink / raw)
To: David Miller; +Cc: netdev@vger.kernel.org, lksctp
In-Reply-To: <4DAD1915.70503@cn.fujitsu.com>
From: Shan Wei <shanwei@cn.fujitsu.com>
The macro never be used.
And if needed, can use !sctp_chunk_is_data instead of.
Signed-off-by: Shan Wei <shanwei@cn.fujitsu.com>
Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
Signed-off-by: Wei Yongjun <yjwei@cn.fujitsu.com>
---
Sorry for missing 'From ...' in the first version
---
include/net/sctp/constants.h | 1 -
1 files changed, 0 insertions(+), 1 deletions(-)
diff --git a/include/net/sctp/constants.h b/include/net/sctp/constants.h
index c70d8cc..deac13d 100644
--- a/include/net/sctp/constants.h
+++ b/include/net/sctp/constants.h
@@ -150,7 +150,6 @@ SCTP_SUBTYPE_CONSTRUCTOR(OTHER, sctp_event_other_t, other)
SCTP_SUBTYPE_CONSTRUCTOR(PRIMITIVE, sctp_event_primitive_t, primitive)
-#define sctp_chunk_is_control(a) (a->chunk_hdr->type != SCTP_CID_DATA)
#define sctp_chunk_is_data(a) (a->chunk_hdr->type == SCTP_CID_DATA)
/* Calculate the actual data size in a data chunk */
--
1.6.5.2
^ permalink raw reply related
* Re: [PATCH net-next-2.6 0/8] sctp: some cleanup and tiny fix for add/del ip
From: Shan Wei @ 2011-04-19 5:31 UTC (permalink / raw)
To: Wei Yongjun; +Cc: David Miller, netdev@vger.kernel.org, lksctp
In-Reply-To: <4DAD18AB.3040401@cn.fujitsu.com>
Wei Yongjun wrote, at 04/19/2011 01:07 PM:
> Series of 8 patches against net-next-2.6, include some cleanup
> and tiny fix for add/del ip, which have been waiting on vlad's
> lksctp-dev tree for long times.
Thanks for your job, and expect others.
>
> Shan Wei (5):
> sctp: delete unused macro definition of sctp_chunk_is_control
> sctp: fix the comment of sctp_sf_violation_paramlen()
> sctp: use common head of addr parameter to access member in addr-unrelated code
> sctp: kill abandoned SCTP_CMD_TRANSMIT command
> sctp: use memdup_user to copy data from userspace
>
> Vlad Yasevich (3):
> sctp: teach CACC algorithm about removed transports
> sctp: Allow bindx_del to accept 0 port.
> sctp: Release all routes when processing acks ADD_IP or DEL_IP
>
> include/net/sctp/command.h | 1 -
> include/net/sctp/constants.h | 1 -
> net/sctp/input.c | 2 +-
> net/sctp/outqueue.c | 11 ++++++++---
> net/sctp/sm_make_chunk.c | 18 +++++++-----------
> net/sctp/sm_sideeffect.c | 6 ------
> net/sctp/sm_statefuns.c | 5 +++--
> net/sctp/socket.c | 28 +++++++++++-----------------
> 8 files changed, 30 insertions(+), 42 deletions(-)
>
--
Best Regards
-----
Shan Wei
^ permalink raw reply
* Re: [PATCH] acenic: Fix using the specified speed when configuring NIC
From: David Miller @ 2011-04-19 5:46 UTC (permalink / raw)
To: decot; +Cc: jes, linux-acenic, netdev, linux-kernel
In-Reply-To: <1303001827-4283-1-git-send-email-decot@google.com>
From: David Decotigny <decot@google.com>
Date: Sat, 16 Apr 2011 17:57:07 -0700
> This patch needs review, as I did not test it: I only think something
> is weird by looking at the code, but experts must confirm.
>
> This tells the NIC to take the speed specified by ethtool into account
> when configuring the NIC, instead of keeping the previous speed.
>
> Signed-off-by: David Decotigny <decot@google.com>
Looks correct, but seems to be dependent upon some other patches which
have feedback pending which you need to address.
Please resubmit that when the other series ends up being applied after
you've fixed it up.
^ permalink raw reply
* Re: [PATCH] net: myri10ge: convert to hw_features
From: David Miller @ 2011-04-19 5:49 UTC (permalink / raw)
To: mirq-linux; +Cc: jon.mason, netdev, gallatin, brice
In-Reply-To: <20110418110347.GA18324@rere.qmqm.pl>
From: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Date: Mon, 18 Apr 2011 13:03:47 +0200
> On Sun, Apr 17, 2011 at 11:30:53PM -0700, David Miller wrote:
>> From: Jon Mason <jon.mason@myri.com>
>> Date: Fri, 15 Apr 2011 13:29:22 -0500
>>
>> > On Fri, Apr 15, 2011 at 04:50:50PM +0200, Michał Mirosław wrote:
>> >> Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
>> >> ---
>> >> drivers/net/myri10ge/myri10ge.c | 66 +++++++-------------------------------
>> >> 1 files changed, 12 insertions(+), 54 deletions(-)
>> >>
>> >> diff --git a/drivers/net/myri10ge/myri10ge.c b/drivers/net/myri10ge/myri10ge.c
>> >> index 1446de5..a48eb92 100644
>> >> --- a/drivers/net/myri10ge/myri10ge.c
>> >> +++ b/drivers/net/myri10ge/myri10ge.c
>> >> @@ -205,7 +205,6 @@ struct myri10ge_priv {
>> >> int tx_boundary; /* boundary transmits cannot cross */
>> >> int num_slices;
>> >> int running; /* running? */
>> >> - int csum_flag; /* rx_csums? */
>> > Get rid of MXGEFW_FLAGS_CKSUM in drivers/net/myri10ge/myri10ge_mcp.h,
>> > as this was the only thing using it.
>> ...
>> > ethtool_op_set_tso does not support TSO6. This would remove the
>> > enable/disable of that feature.
>> Michał please fix these issues and resubmit this patch, thanks!
>
> There are no issues. MXGEFW_FLAGS_CKSUM is used elsewhere in the driver
> and TSO6 is handled by masking netdev->hw_features at devinit time.
>
> BTW, ethtool_op_set_tso() is not used at all in new offload changing scheme.
Ok, applied, thanks!
^ permalink raw reply
* Re: [PATCH v2] net: r8169: convert to hw_features
From: David Miller @ 2011-04-19 5:54 UTC (permalink / raw)
To: romieu; +Cc: dave, netdev, nic_swsd
In-Reply-To: <20110418180857.GB18469@electric-eye.fr.zoreil.com>
From: Francois Romieu <romieu@fr.zoreil.com>
Date: Mon, 18 Apr 2011 20:08:57 +0200
> [...]
>> I've attached my ancient patch, if it helps.
>
> Thanks, it works way better now (see below). It is ok for me to use
> you s-o-b on it ?
>
> I have given it a try on 8169, 8168b, 8168d, 8102e and the load can
> dramatically fall (more at 1000 Mbps than at 100 Mbps).
>
> David (M.), should it go through net-next or be made ready for net-2.6 ?
>
> Subject: [PATCH] r8169: TSO fixes.
Francois, since TSO is disabled by default I'm applying this to
net-next-2.6, thanks!
Maybe we can progressively start to try and turn these things on
by default now that we know more about the TX descriptor layout
differences.
^ permalink raw reply
* Re: [PATCH net-next 4/5] be2net: pass domain id to be_cmd_link_status_query
From: David Miller @ 2011-04-19 5:56 UTC (permalink / raw)
To: ajit.khaparde; +Cc: netdev
In-Reply-To: <20110418223033.GA9515@akhaparde-VBox>
From: Ajit Khaparde <ajit.khaparde@emulex.com>
Date: Mon, 18 Apr 2011 17:30:33 -0500
>
> Signed-off-by: Ajit Khaparde <ajit.khaparde@emulex.com>
That's not all this patch does:
> @@ -293,7 +293,6 @@ struct be_adapter {
> u8 eq_next_idx;
> struct be_drv_stats drv_stats;
>
> - struct vlan_group *vlan_grp;
> u16 vlans_added;
> u16 max_vlans; /* Number of vlans supported */
> u8 vlan_tag[VLAN_N_VID];
...
> @@ -1012,15 +1004,10 @@ static void be_rx_compl_process(struct be_adapter *adapter,
> skb->rxhash = rxcp->rss_hash;
>
>
> - if (unlikely(rxcp->vlanf)) {
> - if (!adapter->vlan_grp || adapter->vlans_added == 0) {
> - kfree_skb(skb);
> - return;
> - }
> - vlan_hwaccel_receive_skb(skb, adapter->vlan_grp, rxcp->vid);
> - } else {
> - netif_receive_skb(skb);
> - }
> + if (unlikely(rxcp->vlanf))
> + __vlan_hwaccel_put_tag(skb, rxcp->vid);
> +
> + netif_receive_skb(skb);
> }
>
> /* Process the RX completion indicated by rxcp when GRO is enabled */
It seems to be also converting the driver over to the new VLAN
interfaces.
Please seperate this part into a seperate patch and resubmit your
patch series.
Thanks.
^ permalink raw reply
* Re: [PATCH] net: fix section mismatches
From: David Miller @ 2011-04-19 5:59 UTC (permalink / raw)
To: mirq-linux; +Cc: netdev, klassert, perex, samuel, grundler
In-Reply-To: <20110418233120.E4B1F138DD@rere.qmqm.pl>
From: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Date: Tue, 19 Apr 2011 01:31:20 +0200 (CEST)
> Fix build warnings like the following:
>
> WARNING: drivers/net/built-in.o(.data+0x12434): Section mismatch in reference from the variable madgemc_driver to the variable .init.data:madgemc_adapter_ids
>
> And add some consts to EISA device ID tables along the way.
>
> Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
I've applied this, thanks!
^ permalink raw reply
* Re: [PATCH v2] net: chelsio: convert to hw_features
From: David Miller @ 2011-04-19 6:04 UTC (permalink / raw)
To: mirq-linux; +Cc: netdev
In-Reply-To: <20110418233120.CCB2313909@rere.qmqm.pl>
From: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Date: Tue, 19 Apr 2011 01:31:20 +0200 (CEST)
> Also remove flags that were not used or are now redundant to hw_features bits.
> No device had UDP_CSUM_CAPABLE set.
>
> Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
> ---
> v2: fix usage of uninitialized variable in sge_rx()
Applied.
^ permalink raw reply
* Re: [PATCH] net: qlge: convert to hw_features
From: David Miller @ 2011-04-19 6:04 UTC (permalink / raw)
To: mirq-linux; +Cc: netdev, ron.mercer, linux-driver
In-Reply-To: <20110418233121.2FF0113A65@rere.qmqm.pl>
From: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Date: Tue, 19 Apr 2011 01:31:21 +0200 (CEST)
> Another simple conversion.
>
> Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Applied.
^ permalink raw reply
page: next (older) | prev (newer) | latest
- recent:[subjects (threaded)|topics (new)|topics (active)]
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox