lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:	Sat, 26 Feb 2011 11:30:30 +0100
From:	Eric Dumazet <eric.dumazet@...il.com>
To:	Ajit Khaparde <ajit.khaparde@...lex.com>
Cc:	netdev@...r.kernel.org
Subject: Re: [RFC] be2net: add rxhash support

Le vendredi 25 février 2011 à 15:35 -0600, Ajit Khaparde a écrit :

> I asked that because, if a switch is part a of the configuration,
> the ASIC can receive packets other than the tcp flow.
> 
> And if hashing is enabled for IP packets, we can see this behavior.
> The other values indicate that hashing has been enabled for IPv4 packets.

To make sure RSS (and rxhash) was OK, I added following debugging aid :

diff --git a/include/net/sock.h b/include/net/sock.h
index da0534d..e9b1180 100644
--- a/include/net/sock.h
+++ b/include/net/sock.h
@@ -688,6 +688,7 @@ static inline void sock_rps_save_rxhash(struct sock *sk, u32 rxhash)
 {
 #ifdef CONFIG_RPS
 	if (unlikely(sk->sk_rxhash != rxhash)) {
+		pr_err("rxhash change from %x to %x\n", sk->sk_rxhash, rxhash);
 		sock_rps_reset_flow(sk);
 		sk->sk_rxhash = rxhash;
 	}


And got following traces :

[  201.170297] change rxhash from 0 to be0b5a87
[  232.607474] bonding: bond1: Setting eth3 as active slave.
[  232.607478] bonding: bond1: making interface eth3 the new active one.
[  232.710848] change rxhash from be0b5a87 to e56a3c1e
[  300.047500] bonding: bond1: Setting eth1 as active slave.
[  300.047504] bonding: bond1: making interface eth1 the new active one.
[  300.159162] change rxhash from e56a3c1e to be0b5a87

The flip occured when I changed my active slave (bonding mode=1).

eth1 is a bnx2 NIC, while eth3 a be2net one, so its OK to change the rxhash in this case 
(different firmware/algo)

So as far as be2net is concerned, everything seems OK : all packets for 
a given flow get an unique RSS hash and can feed skb->rxhash



--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ