kgudipat | 1 Feb 2012 01:06
Favicon

[PATCH] bna: Implement ethtool flash_device entry point.

From: Krishna Gudipati <kgudipat <at> brocade.com>

Change details:
	- Implement ethtool flash_device() entry point to write the
	  firmware image to the flash firmware partition.

Signed-off-by: Krishna Gudipati <kgudipat <at> brocade.com>
---
 drivers/net/ethernet/brocade/bna/bfa_defs.h     |    1 +
 drivers/net/ethernet/brocade/bna/bnad_ethtool.c |   36 +++++++++++++++++++++++
 2 files changed, 37 insertions(+), 0 deletions(-)

diff --git a/drivers/net/ethernet/brocade/bna/bfa_defs.h b/drivers/net/ethernet/brocade/bna/bfa_defs.h
index 871c630..48f8773 100644
--- a/drivers/net/ethernet/brocade/bna/bfa_defs.h
+++ b/drivers/net/ethernet/brocade/bna/bfa_defs.h
 <at>  <at>  -297,6 +297,7  <at>  <at>  enum bfa_mode {
 #define BFA_FLASH_PART_ENTRY_SIZE	32	/* partition entry size */
 #define BFA_FLASH_PART_MAX		32	/* maximal # of partitions */
 #define BFA_TOTAL_FLASH_SIZE		0x400000
+#define BFA_FLASH_PART_FWIMG		2
 #define BFA_FLASH_PART_MFG		7

 /*
diff --git a/drivers/net/ethernet/brocade/bna/bnad_ethtool.c b/drivers/net/ethernet/brocade/bna/bnad_ethtool.c
index 9b44ec8..3e18ee7 100644
--- a/drivers/net/ethernet/brocade/bna/bnad_ethtool.c
+++ b/drivers/net/ethernet/brocade/bna/bnad_ethtool.c
 <at>  <at>  -1072,6 +1072,41  <at>  <at>  done:
 	return ret;
(Continue reading)

Shawn Lu | 1 Feb 2012 01:50
Picon
Favicon

(unknown)

From: Shawn Lu <shawn.lu <at> ericsson.com>
Subject: [PATCH] tcp: md5: fix md5 RST when both sides have listener
In-Reply-To: RE: [PATCH] tcp: md5: fix md5 RST when both sides have listener

Shawn Lu | 1 Feb 2012 01:50
Picon
Favicon

[PATCH] tcp: md5: fix md5 RST when both sides have listener

TCP RST mechanism is broken in TCP md5(RFC2385). When
connection is gone, md5 key is lost, sending RST
without md5 hash is deem to ignored by peer. This can
be a problem since RST help protocal like bgp to fast
recove from peer crash.

In most case, users of tcp md5, such as bgp and ldp,
have listeners on both sides. md5 keys for peers are
saved in listening socket. When passive side connection
is gone, we can still get md5 key from listening socket.
When active side of connection is gone, we can try to
find listening socket through source port, and then md5
key.
we are not loosing sercuriy here:
packet is valified checked with md5 hash. No RST is generated
if md5 hash doesn't match or no md5 key can be found.

Signed-off-by: Shawn Lu <shawn.lu <at> ericsson.com>
---
 net/ipv4/tcp_ipv4.c |   45 ++++++++++++++++++++++++++++++++++++++++++---
 net/ipv6/tcp_ipv6.c |   43 +++++++++++++++++++++++++++++++++++++++++--
 2 files changed, 83 insertions(+), 5 deletions(-)

diff --git a/net/ipv4/tcp_ipv4.c b/net/ipv4/tcp_ipv4.c
index da5d322..1a761c8 100644
--- a/net/ipv4/tcp_ipv4.c
+++ b/net/ipv4/tcp_ipv4.c
 <at>  <at>  -593,6 +593,10  <at>  <at>  static void tcp_v4_send_reset(struct sock *sk, struct sk_buff *skb)
 	struct ip_reply_arg arg;
 #ifdef CONFIG_TCP_MD5SIG
(Continue reading)

Prashant Badsheshi | 1 Feb 2012 03:16
Picon

Regarding carl9170 wifi linux driver

Hi,

We are planning to use the below wifi dongle as station and AP.

https://www.thinkpenguin.com/gnu-linux/penguin-wireless-n-usb-adapter

We got the linux driver from the below path

git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-testing.git

We found the driver source in drivers/net/wireless/ath/carl9170.

Our Question:

Is the carl9170 driver present in the above folder is a complete open
source driver?

Or is it not complete driver and is there any NON-GPL code that is not
provided as an open source?

Please clarify it. Your immediate response would be really appreciated.

Also it would be great if there is any design document or programmer’s
document for the above mentioned Wifi dongle chipset available.

Regards,

Prashant
Stephen Rothwell | 1 Feb 2012 03:39
Picon
Picon

linux-next: manual merge of the wireless-next tree with the net-next tree

Hi John,

Today's linux-next merge of the wireless-next tree got a conflict in
drivers/net/wireless/rtlwifi/rtl8192se/sw.c between commit e404decb0fb0
("drivers/net: Remove unnecessary k.alloc/v.alloc OOM messages") from the
net-next tree and commit f30d7507a811 ("rtlwifi: Convert RT_TRACE macro
to use ##__VA_ARGS__") from the wireless-next tree.

The former removed the code modified by the latter, so I did that (see
below).
-- 
Cheers,
Stephen Rothwell                    sfr <at> canb.auug.org.au

diff --cc drivers/net/wireless/rtlwifi/rtl8192se/sw.c
index 36140cc,ca38dd9..0000000
--- a/drivers/net/wireless/rtlwifi/rtl8192se/sw.c
+++ b/drivers/net/wireless/rtlwifi/rtl8192se/sw.c
 <at>  <at>  <at>  -186,9 -226,14 +226,11  <at>  <at>  <at>  static int rtl92s_init_sw_vars(struct i

  	/* for firmware buf */
  	rtlpriv->rtlhal.pfirmware = vzalloc(sizeof(struct rt_firmware));
 -	if (!rtlpriv->rtlhal.pfirmware) {
 -		RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG,
 -			 "Can't alloc buffer for fw\n");
 +	if (!rtlpriv->rtlhal.pfirmware)
  		return 1;
 -	}

+ 	rtlpriv->max_fw_size = sizeof(struct rt_firmware);
(Continue reading)

Eric Dumazet | 1 Feb 2012 05:08
Picon

Re: [PATCH] tcp: md5: fix md5 RST when both sides have listener

Le mardi 31 janvier 2012 à 16:50 -0800, Shawn Lu a écrit :
> TCP RST mechanism is broken in TCP md5(RFC2385). When
> connection is gone, md5 key is lost, sending RST
> without md5 hash is deem to ignored by peer. This can
> be a problem since RST help protocal like bgp to fast
> recove from peer crash.
> 
> In most case, users of tcp md5, such as bgp and ldp,
> have listeners on both sides. md5 keys for peers are
> saved in listening socket. When passive side connection
> is gone, we can still get md5 key from listening socket.
> When active side of connection is gone, we can try to
> find listening socket through source port, and then md5
> key.
> we are not loosing sercuriy here:
> packet is valified checked with md5 hash. No RST is generated
> if md5 hash doesn't match or no md5 key can be found.
> 
> Signed-off-by: Shawn Lu <shawn.lu <at> ericsson.com>
> ---
>  net/ipv4/tcp_ipv4.c |   45 ++++++++++++++++++++++++++++++++++++++++++---
>  net/ipv6/tcp_ipv6.c |   43 +++++++++++++++++++++++++++++++++++++++++--
>  2 files changed, 83 insertions(+), 5 deletions(-)
> 

Hmm, ok but using RCU for the md5 lookup (instead of mere sock lock as
done today) also means we need to protect struct tcp_md5sig_info itself

I send a patch for this in a separate patch first, then David can apply
your patch when I add my "Signed-off-by: ..."
(Continue reading)

Eric Dumazet | 1 Feb 2012 05:45
Picon

[PATCH net-next] tcp: md5: protects md5sig_info with RCU

This patch makes sure we use appropriate memory barriers before
publishing tp->md5sig_info, allowing tcp_md5_do_lookup() being used from
tcp_v4_send_reset() without holding socket lock (upcoming patch from
Shawn Lu)

Note we also need to respect rcu grace period before its freeing, since
we can free socket without this grace period thanks to
SLAB_DESTROY_BY_RCU

Signed-off-by: Eric Dumazet <eric.dumazet <at> gmail.com>
Cc: Shawn Lu <shawn.lu <at> ericsson.com>
---
 include/linux/tcp.h |    2 +-
 include/net/tcp.h   |    1 +
 net/ipv4/tcp_ipv4.c |   32 ++++++++++++++++++++------------
 net/ipv6/tcp_ipv6.c |    2 --
 4 files changed, 22 insertions(+), 15 deletions(-)

diff --git a/include/linux/tcp.h b/include/linux/tcp.h
index c2025f1..115389e 100644
--- a/include/linux/tcp.h
+++ b/include/linux/tcp.h
 <at>  <at>  -463,7 +463,7  <at>  <at>  struct tcp_sock {
 	const struct tcp_sock_af_ops	*af_specific;

 /* TCP MD5 Signature Option information */
-	struct tcp_md5sig_info	*md5sig_info;
+	struct tcp_md5sig_info	__rcu *md5sig_info;
 #endif

(Continue reading)

Eric Dumazet | 1 Feb 2012 06:09
Picon

Re: [PATCH] tcp: md5: fix md5 RST when both sides have listener

Le mardi 31 janvier 2012 à 15:53 -0800, Shawn Lu a écrit :
> TCP RST mechanism is broken in TCP md5(RFC2385). When
> connection is gone, md5 key is lost, sending RST
> without md5 hash is deem to ignored by peer. This can
> be a problem since RST help protocal like bgp to fast
> recove from peer crash.
> 
> In most case, users of tcp md5, such as bgp and ldp,
> have listeners on both sides. md5 keys for peers are
> saved in listening socket. When passive side connection
> is gone, we can still get md5 key from listening socket.
> When active side of connection is gone, we can try to
> find listening socket through source port, and then md5
> key.
> we are not loosing sercuriy here:
> packet is valified checked with md5 hash. No RST is generated
> if md5 hash doesn't match or no md5 key can be found.
> 
> Signed-off-by: Shawn Lu <shawn.lu <at> ericsson.com>
> ---

Small notes : 

1) Always add [PATCH Vx] on your submission if it was a new version of a
previous patch. (V2, V3, V4, ...)

If possible, add after the "---" separator an explanation of what
changed in your new submission :

V3: added some rcu_read_lock()/rcu_read_unlock() sections
(Continue reading)

David Lamparter | 1 Feb 2012 06:56
Gravatar

Re: Introducing open source MSTP daemon

On Tue, Jan 31, 2012 at 09:38:33AM +0000, augusto wrote:
> I am trying to implement your solution on an embedded system, but I dont have a 
> clear idea of how to use it.
> 
> My scenario is like this:
> 
> eth0.2 and eth1.2 belong to br1
> eth0.4 and eth3.4 belong to br2
> eth1.5 and eth3.5 belong to br3
> 
> I added br1 br2 and br3 to bridge-stp.
> 
> What steps should I take now?

None. The Linux kernel bridge only supports 802.1D bridging / [R]STP,
but not 802.1Q bridging / MSTP kernel part.

You can add eth0 & eth1 to a bridge and put the VLANs on the bridge
(br0.2 / br0.4 / br0.5). That would be a .1D bridge, then.

Or, you can take a look at OpenVSwitch, no idea if it does .1Q/MSTP.

-David
Li Zefan | 1 Feb 2012 07:56
Favicon

[PATCH 6/6] cls_cgroup: remove redundant rcu_read_lock/unlock

We've already used rcu_read_lock/unlock inside task_classid(),
so don't use the lock/unlock pair twice in this hot path.

Signed-off-by: Li Zefan <lizf <at> cn.fujitsu.com>
---
 net/core/sock.c |    2 --
 1 files changed, 0 insertions(+), 2 deletions(-)

diff --git a/net/core/sock.c b/net/core/sock.c
index 213c856..c0bab23 100644
--- a/net/core/sock.c
+++ b/net/core/sock.c
 <at>  <at>  -1160,9 +1160,7  <at>  <at>  void sock_update_classid(struct sock *sk)
 {
 	u32 classid;

-	rcu_read_lock();  /* doing current task, which cannot vanish. */
 	classid = task_cls_classid(current);
-	rcu_read_unlock();
 	if (classid && classid != sk->sk_classid)
 		sk->sk_classid = classid;
 }
--

-- 
1.7.3.1

Gmane