Netdev List
 help / color / mirror / Atom feed
* Re: write() udp socket
From: Huajun Li @ 2011-07-24  8:33 UTC (permalink / raw)
  To: ZHOU Xiaobo; +Cc: netdev
In-Reply-To: <tencent_287F494544728EDB6DA9C8ED@qq.com>

2011/7/23 ZHOU Xiaobo <xb.zhou@qq.com>:
> question No1:
> When I call
> ssize_t write(int fd, const void *buf, size_t count);
>
>
> on a nonblocking UDP socket, is the return value  always equal to 'count'?
>
>

I don't think so.  The function may be interrupt by signal or return
due to other reason, so the return value only represents the size it
writes successfully to the fd.

> question No2:
> Can I write() a UDP socket in multiple threads without locking?
>

In my opinion, you could. However, the receiver may not get what you expected.
>
> thanks
>
>
> ------------------
> Sincerely yours
>                         ZHOU Xiaobo

^ permalink raw reply

* Re: IPv6: autoconfiguration and suspend/resume or link down/up
From: Nicolas de Pesloüan @ 2011-07-24  8:35 UTC (permalink / raw)
  To: Herbert Xu; +Cc: Stephen Hemminger, David Miller, jbohac, netdev
In-Reply-To: <20110724001816.GA14051@gondor.apana.org.au>

Le 24/07/2011 02:18, Herbert Xu a écrit :
> On Sat, Jul 23, 2011 at 09:37:43AM -0700, Stephen Hemminger wrote:
>>
>> Would it be possible to do live migration without dropping carrier
>> or setting interface down?
>
> I think LM uses the same mechanism as suspend and resume so whatever
> happens in one case will happen in the other case as well.

So we need to distinguish between two kind of link events:

1/ Really having the link goes down then up. This should trigger a renegotiation.

2/ Having the system suspend then resume :
2a/ This should trigger link down/link up events to force a renegotiation, for normal suspend/resume 
where the network might have changed between suspend and resume.
2/ This should *not* trigger link down/link up events to avoid a renegotiation (for live migration) 
because it is assumed that the network didn't change while suspended.

Can't we allow the user to set a global "link-down-link-up-timeout" and only force a renegotiation 
if the time between link down and link up events is longer than this timeout? Normal user would set 
this timeout close to 0 (default value). Live migration user would set this timeout to about twice 
the time it normally takes to do a live migration. That way, in a VM environment, if the 
suspend/resume cycle happens to take far more than a normal live migration time, the kernel would 
renegotiate, which sounds reasonable, from my point of view.

Does this make sense?

	Nicolas.

^ permalink raw reply

* Re: LInux kernel 3.0 sit creation bug report
From: Eric Dumazet @ 2011-07-24  8:42 UTC (permalink / raw)
  To: jsr; +Cc: netdev, davem
In-Reply-To: <E1Qkf2u-0007ZF-DS@dex.edzone.net>

Le samedi 23 juillet 2011 à 12:27 -0400, Jay Rouman a écrit :
> Kernel 3.0 (release version)
> Summary:  sit tunnel creation fails with "No buffer space available"
> 
> Example:
> 
> icebox:/home/u/jsr(3)# /sbin/ip tunnel add sit0 mode sit local 216.111.203.89 remote 209.51.18.1 ttl 255
> add tunnel sit0 failed: No buffer space available
> 
> icebox:/home/u/jsr(8)# /sbin/ifconfig sit0 inet6 tunnel ::209.51.18.1
> SIOCSIFDSTADDR: No buffer space available
> 
> Notes:
> 
> Oddly, the ifconfig example creates a working sit0.  The "ip" example
> does not.  The problem existed in rc1 but unfortunately I did not test
> sit creation then.  This was discovered when I upgraded a machine with
> an HE tunnel to the 3.0 kernel.  I am happy to do further testing or
> provide whatever additional info I can.
> 

I believe you use a deprecated (~10 years ago ?) way to setup your
tunnel, its not a linux-3.0 new behavior.

sit0 is reserved (fall back tunnel), you should use a different name.

Try :

# ip tunnel add aster mode sit local 216.111.203.89 remote 209.51.18.1 ttl 255
# ifconfig aster up

# ip tunnel
sit0: ipv6/ip  remote any  local any  ttl 64  nopmtudisc
aster: ipv6/ip  remote 209.51.18.1  local 216.111.203.89  ttl 255 



^ permalink raw reply

* Re: pull request: wireless-next-2.6 2011-07-22
From: David Miller @ 2011-07-24 10:09 UTC (permalink / raw)
  To: linville-2XuSBdqkA4R54TAoqtyWWQ
  Cc: linux-wireless-u79uwXL29TY76Z2rM5mHXA,
	netdev-u79uwXL29TY76Z2rM5mHXA,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA
In-Reply-To: <20110722.171635.1154932336401179368.davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>

From: David Miller <davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>
Date: Fri, 22 Jul 2011 17:16:35 -0700 (PDT)

> From: "John W. Linville" <linville-2XuSBdqkA4R54TAoqtyWWQ@public.gmane.org>
> Date: Fri, 22 Jul 2011 18:23:09 -0400
> 
>> Here is the last big pull request of new wireless bits intended
>> for 3.1.  This includes the usual big batch of updates to iwlagn,
>> a number of updates to ath9k, mwifiex, carl9170, libertas, and other
>> drivers, and soem updates to mac80211 and cfg80211 from Johannes.
>> The most noteworth bits are most of the final push from Rafał for
>> supporting current Broadcom wireless hardware in b43.
>> 
>> Please let me know if there are problems!
> 
> A little late to be submitting this since the merge window is
> already open, but I pulled anyways.
> 
> Thanks!

Please fix this build regression, the suspend/resume ops are only
available when CONFIG_PM is defined.

drivers/net/wireless/iwlwifi/iwl-agn.c:3464: error: unknown field 'suspend' specified in initializer
drivers/net/wireless/iwlwifi/iwl-agn.c:3464: warning: initialization from incompatible pointer type
drivers/net/wireless/iwlwifi/iwl-agn.c:3465: error: unknown field 'resume' specified in initializer
drivers/net/wireless/iwlwifi/iwl-agn.c:3465: warning: initialization from incompatible pointer type
 
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply

* Re: LInux kernel 3.0 sit creation bug report
From: Jay Rouman @ 2011-07-24 12:15 UTC (permalink / raw)
  To: Eric Dumazet; +Cc: netdev, davem
In-Reply-To: <1311496931.6669.16.camel@edumazet-laptop>

Thank you for the reply.  I was not aware that sit0 was deprecated,
but something has changed in 3.0.  The "SIOCSIFDSTADDR: No buffer
space available" error does not happen in 2.6.39.  The Linux-net-tools
command creates a working tunnel to Hurricane Electric's tunnel broker,
even though the error message is generated.  I have tried the route-2
commands and while they work without error, I can't get the tunnel to
function.  I get I never tried the route-2 (/bin/ip) setup in 2.6.39.
--
Jay Rouman (jsr@dexter.mi.org jsr@edzone.net)


/sbin/ifconfig sit0 inet6 tunnel ::<ip address>
> Le samedi 23 juillet 2011 ? 12:27 -0400, Jay Rouman a ?crit :
> > Kernel 3.0 (release version)
> > Summary:  sit tunnel creation fails with "No buffer space available"
> > 
> > Example:
> > 
> > icebox:/home/u/jsr(3)# /sbin/ip tunnel add sit0 mode sit local 216.111.203.89 remote 209.51.18.1 ttl 255
> > add tunnel sit0 failed: No buffer space available
> > 
> > icebox:/home/u/jsr(8)# /sbin/ifconfig sit0 inet6 tunnel ::209.51.18.1
> > SIOCSIFDSTADDR: No buffer space available
> > 
> > Notes:
> > 
> > Oddly, the ifconfig example creates a working sit0.  The "ip" example
> > does not.  The problem existed in rc1 but unfortunately I did not test
> > sit creation then.  This was discovered when I upgraded a machine with
> > an HE tunnel to the 3.0 kernel.  I am happy to do further testing or
> > provide whatever additional info I can.
> > 
> 
> I believe you use a deprecated (~10 years ago ?) way to setup your
> tunnel, its not a linux-3.0 new behavior.
> 
> sit0 is reserved (fall back tunnel), you should use a different name.
> 
> Try :
> 
> # ip tunnel add aster mode sit local 216.111.203.89 remote 209.51.18.1 ttl 255
> # ifconfig aster up
> 
> # ip tunnel
> sit0: ipv6/ip  remote any  local any  ttl 64  nopmtudisc
> aster: ipv6/ip  remote 209.51.18.1  local 216.111.203.89  ttl 255 

^ permalink raw reply

* [PATCH 2/6] bnx2x: fix loopback for non 10G link
From: Dmitry Kravkov @ 2011-07-24 13:53 UTC (permalink / raw)
  To: netdev@vger.kernel.org, David Miller; +Cc: eilon Greenstein, "; yanivr"

From: Yaniv Rosner <yanivr@broadcom.com>

Also fixes minor formatting in that function.

Signed-off-by: Dmitry Kravkov <dmitry@broadcom.com>
Signed-off-by: Yaniv Rosner <yanivr@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
---
 drivers/net/bnx2x/bnx2x_main.c |   24 ++++++++++++++++++------
 1 files changed, 18 insertions(+), 6 deletions(-)

diff --git a/drivers/net/bnx2x/bnx2x_main.c b/drivers/net/bnx2x/bnx2x_main.c
index e1ec1a3..48490da 100644
--- a/drivers/net/bnx2x/bnx2x_main.c
+++ b/drivers/net/bnx2x/bnx2x_main.c
@@ -2151,10 +2151,12 @@ u8 bnx2x_initial_phy_init(struct bnx2x *bp, int load_mode)
 		u8 rc;
 		int cfx_idx = bnx2x_get_link_cfg_idx(bp);
 		u16 req_line_speed = bp->link_params.req_line_speed[cfx_idx];
-		/* Initialize link parameters structure variables */
-		/* It is recommended to turn off RX FC for jumbo frames
-		   for better performance */
-		if ((CHIP_IS_E1x(bp)) && (bp->dev->mtu > 5000))
+		/*
+		 * Initialize link parameters structure variables
+		 * It is recommended to turn off RX FC for jumbo frames
+		 * for better performance
+		 */
+		if (CHIP_IS_E1x(bp) && (bp->dev->mtu > 5000))
 			bp->link_params.req_fc_auto_adv = BNX2X_FLOW_CTRL_TX;
 		else
 			bp->link_params.req_fc_auto_adv = BNX2X_FLOW_CTRL_BOTH;
@@ -2162,8 +2164,18 @@ u8 bnx2x_initial_phy_init(struct bnx2x *bp, int load_mode)
 		bnx2x_acquire_phy_lock(bp);
 
 		if (load_mode == LOAD_DIAG) {
-			bp->link_params.loopback_mode = LOOPBACK_XGXS;
-			bp->link_params.req_line_speed[cfx_idx] = SPEED_10000;
+			struct link_params *lp = &bp->link_params;
+			lp->loopback_mode = LOOPBACK_XGXS;
+			/* do PHY loopback at 10G speed, if possible */
+			if (lp->req_line_speed[cfx_idx] < SPEED_10000) {
+				if (lp->speed_cap_mask[cfx_idx] &
+				    PORT_HW_CFG_SPEED_CAPABILITY_D0_10G)
+					lp->req_line_speed[cfx_idx] =
+					SPEED_10000;
+				else
+					lp->req_line_speed[cfx_idx] =
+					SPEED_1000;
+			}
 		}
 
 		rc = bnx2x_phy_init(&bp->link_params, &bp->link_vars);
-- 
1.7.2.2





^ permalink raw reply related

* [PATCH 3/6] bnx2x: count statistic ramrods on EQ to prevent MC assert
From: Dmitry Kravkov @ 2011-07-24 13:54 UTC (permalink / raw)
  To: davem, netdev@vger.kernel.org; +Cc: Vladislav Zolotarov, Eilon Greenstein

From: Vladislav Zolotarov <vladz@broadcom.com>

This patch includes:
 - Counting statistics ramrods as EQ ramrods the way they should be. This
   accounting is meant to prevent MC asserts in case of software bugs.
 - Fixes in debug facilities which were added while working on one of such
   bugs.

Signed-off-by: Dmitry Kravkov <dmitry@broadcom.com>
Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
---
 drivers/net/bnx2x/bnx2x_main.c |   63 ++++++++++++++++++++-------------------
 1 files changed, 32 insertions(+), 31 deletions(-)

diff --git a/drivers/net/bnx2x/bnx2x_main.c b/drivers/net/bnx2x/bnx2x_main.c
index 48490da..9c146f7 100644
--- a/drivers/net/bnx2x/bnx2x_main.c
+++ b/drivers/net/bnx2x/bnx2x_main.c
@@ -1671,11 +1671,12 @@ void bnx2x_sp_event(struct bnx2x_fastpath *fp, union eth_rx_cqe *rr_cqe)
 
 	switch (command) {
 	case (RAMROD_CMD_ID_ETH_CLIENT_UPDATE):
-		DP(NETIF_MSG_IFUP, "got UPDATE ramrod. CID %d\n", cid);
+		DP(BNX2X_MSG_SP, "got UPDATE ramrod. CID %d\n", cid);
 		drv_cmd = BNX2X_Q_CMD_UPDATE;
 		break;
+
 	case (RAMROD_CMD_ID_ETH_CLIENT_SETUP):
-		DP(NETIF_MSG_IFUP, "got MULTI[%d] setup ramrod\n", cid);
+		DP(BNX2X_MSG_SP, "got MULTI[%d] setup ramrod\n", cid);
 		drv_cmd = BNX2X_Q_CMD_SETUP;
 		break;
 
@@ -1685,17 +1686,17 @@ void bnx2x_sp_event(struct bnx2x_fastpath *fp, union eth_rx_cqe *rr_cqe)
 		break;
 
 	case (RAMROD_CMD_ID_ETH_HALT):
-		DP(NETIF_MSG_IFDOWN, "got MULTI[%d] halt ramrod\n", cid);
+		DP(BNX2X_MSG_SP, "got MULTI[%d] halt ramrod\n", cid);
 		drv_cmd = BNX2X_Q_CMD_HALT;
 		break;
 
 	case (RAMROD_CMD_ID_ETH_TERMINATE):
-		DP(NETIF_MSG_IFDOWN, "got MULTI[%d] teminate ramrod\n", cid);
+		DP(BNX2X_MSG_SP, "got MULTI[%d] teminate ramrod\n", cid);
 		drv_cmd = BNX2X_Q_CMD_TERMINATE;
 		break;
 
 	case (RAMROD_CMD_ID_ETH_EMPTY):
-		DP(NETIF_MSG_IFDOWN, "got MULTI[%d] empty ramrod\n", cid);
+		DP(BNX2X_MSG_SP, "got MULTI[%d] empty ramrod\n", cid);
 		drv_cmd = BNX2X_Q_CMD_EMPTY;
 		break;
 
@@ -1725,6 +1726,8 @@ void bnx2x_sp_event(struct bnx2x_fastpath *fp, union eth_rx_cqe *rr_cqe)
 	/* push the change in bp->spq_left and towards the memory */
 	smp_mb__after_atomic_inc();
 
+	DP(BNX2X_MSG_SP, "bp->cq_spq_left %x\n", atomic_read(&bp->cq_spq_left));
+
 	return;
 }
 
@@ -3089,26 +3092,23 @@ int bnx2x_sp_post(struct bnx2x *bp, int command, int cid,
 	spe->data.update_data_addr.hi = cpu_to_le32(data_hi);
 	spe->data.update_data_addr.lo = cpu_to_le32(data_lo);
 
-	/* stats ramrod has it's own slot on the spq */
-	if (command != RAMROD_CMD_ID_COMMON_STAT_QUERY) {
-		/*
-		 * It's ok if the actual decrement is issued towards the memory
-		 * somewhere between the spin_lock and spin_unlock. Thus no
-		 * more explict memory barrier is needed.
-		 */
-		if (common)
-			atomic_dec(&bp->eq_spq_left);
-		else
-			atomic_dec(&bp->cq_spq_left);
-	}
+	/*
+	 * It's ok if the actual decrement is issued towards the memory
+	 * somewhere between the spin_lock and spin_unlock. Thus no
+	 * more explict memory barrier is needed.
+	 */
+	if (common)
+		atomic_dec(&bp->eq_spq_left);
+	else
+		atomic_dec(&bp->cq_spq_left);
 
 
 	DP(BNX2X_MSG_SP/*NETIF_MSG_TIMER*/,
-	   "SPQE[%x] (%x:%x)  command %d  hw_cid %x  data (%x:%x) "
-	   "type(0x%x) left (ETH, COMMON) (%x,%x)\n",
+	   "SPQE[%x] (%x:%x)  (cmd, common?) (%d,%d)  hw_cid %x  data (%x:%x) "
+	   "type(0x%x) left (CQ, EQ) (%x,%x)\n",
 	   bp->spq_prod_idx, (u32)U64_HI(bp->spq_mapping),
 	   (u32)(U64_LO(bp->spq_mapping) +
-	   (void *)bp->spq_prod_bd - (void *)bp->spq), command,
+	   (void *)bp->spq_prod_bd - (void *)bp->spq), command, common,
 	   HW_CID(bp, cid), data_hi, data_lo, type,
 	   atomic_read(&bp->cq_spq_left), atomic_read(&bp->eq_spq_left));
 
@@ -3465,6 +3465,7 @@ static inline void bnx2x_attn_int_deasserted3(struct bnx2x *bp, u32 attn)
 		} else if (attn & BNX2X_MC_ASSERT_BITS) {
 
 			BNX2X_ERR("MC assert!\n");
+			bnx2x_mc_assert(bp);
 			REG_WR(bp, MISC_REG_AEU_GENERAL_ATTN_10, 0);
 			REG_WR(bp, MISC_REG_AEU_GENERAL_ATTN_9, 0);
 			REG_WR(bp, MISC_REG_AEU_GENERAL_ATTN_8, 0);
@@ -4424,7 +4425,7 @@ static void bnx2x_eq_int(struct bnx2x *bp)
 	sw_cons = bp->eq_cons;
 	sw_prod = bp->eq_prod;
 
-	DP(BNX2X_MSG_SP, "EQ:  hw_cons %u  sw_cons %u bp->cq_spq_left %u\n",
+	DP(BNX2X_MSG_SP, "EQ:  hw_cons %u  sw_cons %u bp->eq_spq_left %x\n",
 			hw_cons, sw_cons, atomic_read(&bp->eq_spq_left));
 
 	for (; sw_cons != hw_cons;
@@ -4443,7 +4444,7 @@ static void bnx2x_eq_int(struct bnx2x *bp)
 			DP(NETIF_MSG_TIMER, "got statistics comp event %d\n",
 			   bp->stats_comp++);
 			/* nothing to do with stats comp */
-			continue;
+			goto next_spqe;
 
 		case EVENT_RING_OPCODE_CFC_DEL:
 			/* handle according to cid range */
@@ -4451,7 +4452,7 @@ static void bnx2x_eq_int(struct bnx2x *bp)
 			 * we may want to verify here that the bp state is
 			 * HALTING
 			 */
-			DP(NETIF_MSG_IFDOWN,
+			DP(BNX2X_MSG_SP,
 			   "got delete ramrod for MULTI[%d]\n", cid);
 #ifdef BCM_CNIC
 			if (!bnx2x_cnic_handle_cfc_del(bp, cid, elem))
@@ -4467,7 +4468,7 @@ static void bnx2x_eq_int(struct bnx2x *bp)
 			goto next_spqe;
 
 		case EVENT_RING_OPCODE_STOP_TRAFFIC:
-			DP(NETIF_MSG_IFUP, "got STOP TRAFFIC\n");
+			DP(BNX2X_MSG_SP, "got STOP TRAFFIC\n");
 			if (f_obj->complete_cmd(bp, f_obj,
 						BNX2X_F_CMD_TX_STOP))
 				break;
@@ -4475,21 +4476,21 @@ static void bnx2x_eq_int(struct bnx2x *bp)
 			goto next_spqe;
 
 		case EVENT_RING_OPCODE_START_TRAFFIC:
-			DP(NETIF_MSG_IFUP, "got START TRAFFIC\n");
+			DP(BNX2X_MSG_SP, "got START TRAFFIC\n");
 			if (f_obj->complete_cmd(bp, f_obj,
 						BNX2X_F_CMD_TX_START))
 				break;
 			bnx2x_dcbx_set_params(bp, BNX2X_DCBX_STATE_TX_RELEASED);
 			goto next_spqe;
 		case EVENT_RING_OPCODE_FUNCTION_START:
-			DP(NETIF_MSG_IFUP, "got FUNC_START ramrod\n");
+			DP(BNX2X_MSG_SP, "got FUNC_START ramrod\n");
 			if (f_obj->complete_cmd(bp, f_obj, BNX2X_F_CMD_START))
 				break;
 
 			goto next_spqe;
 
 		case EVENT_RING_OPCODE_FUNCTION_STOP:
-			DP(NETIF_MSG_IFDOWN, "got FUNC_STOP ramrod\n");
+			DP(BNX2X_MSG_SP, "got FUNC_STOP ramrod\n");
 			if (f_obj->complete_cmd(bp, f_obj, BNX2X_F_CMD_STOP))
 				break;
 
@@ -4503,7 +4504,7 @@ static void bnx2x_eq_int(struct bnx2x *bp)
 		      BNX2X_STATE_OPENING_WAIT4_PORT):
 			cid = elem->message.data.eth_event.echo &
 				BNX2X_SWCID_MASK;
-			DP(NETIF_MSG_IFUP, "got RSS_UPDATE ramrod. CID %d\n",
+			DP(BNX2X_MSG_SP, "got RSS_UPDATE ramrod. CID %d\n",
 			   cid);
 			rss_raw->clear_pending(rss_raw);
 			break;
@@ -4518,7 +4519,7 @@ static void bnx2x_eq_int(struct bnx2x *bp)
 		      BNX2X_STATE_DIAG):
 		case (EVENT_RING_OPCODE_CLASSIFICATION_RULES |
 		      BNX2X_STATE_CLOSING_WAIT4_HALT):
-			DP(NETIF_MSG_IFUP, "got (un)set mac ramrod\n");
+			DP(BNX2X_MSG_SP, "got (un)set mac ramrod\n");
 			bnx2x_handle_classification_eqe(bp, elem);
 			break;
 
@@ -4528,7 +4529,7 @@ static void bnx2x_eq_int(struct bnx2x *bp)
 		      BNX2X_STATE_DIAG):
 		case (EVENT_RING_OPCODE_MULTICAST_RULES |
 		      BNX2X_STATE_CLOSING_WAIT4_HALT):
-			DP(NETIF_MSG_IFUP, "got mcast ramrod\n");
+			DP(BNX2X_MSG_SP, "got mcast ramrod\n");
 			bnx2x_handle_mcast_eqe(bp);
 			break;
 
@@ -4538,7 +4539,7 @@ static void bnx2x_eq_int(struct bnx2x *bp)
 		      BNX2X_STATE_DIAG):
 		case (EVENT_RING_OPCODE_FILTERS_RULES |
 		      BNX2X_STATE_CLOSING_WAIT4_HALT):
-			DP(NETIF_MSG_IFUP, "got rx_mode ramrod\n");
+			DP(BNX2X_MSG_SP, "got rx_mode ramrod\n");
 			bnx2x_handle_rx_mode_eqe(bp);
 			break;
 		default:
-- 
1.7.2.2





^ permalink raw reply related

* [PATCH 4/6] bnx2x: enable internal target-read for 57712 and up only
From: Dmitry Kravkov @ 2011-07-24 13:57 UTC (permalink / raw)
  To: netdev@vger.kernel.org, David Miller; +Cc: Eilon Greenstein, shmulikr

From: Shmulik Ravid <shmulikr@broadcom.com> 

Signed-off-by: Dmitry Kravkov <dmitry@broadcom.com>
Signed-off-by: Shmulik Ravid <shmulikr@broadcom.com> 
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
---
 drivers/net/bnx2x/bnx2x_main.c |    9 ++++++---
 1 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/drivers/net/bnx2x/bnx2x_main.c b/drivers/net/bnx2x/bnx2x_main.c
index 9c146f7..9c62092 100644
--- a/drivers/net/bnx2x/bnx2x_main.c
+++ b/drivers/net/bnx2x/bnx2x_main.c
@@ -10242,11 +10242,14 @@ static int __devinit bnx2x_init_dev(struct pci_dev *pdev,
 	REG_WR(bp, PXP2_REG_PGL_ADDR_90_F0 + BP_PORT(bp)*16, 0);
 	REG_WR(bp, PXP2_REG_PGL_ADDR_94_F0 + BP_PORT(bp)*16, 0);
 
-	/**
+	/*
 	 * Enable internal target-read (in case we are probed after PF FLR).
-	 * Must be done prior to any BAR read access
+	 * Must be done prior to any BAR read access. Only for 57712 and up
 	 */
-	REG_WR(bp, PGLUE_B_REG_INTERNAL_PFID_ENABLE_TARGET_READ, 1);
+	if (board_type != BCM57710 &&
+	    board_type != BCM57711 &&
+	    board_type != BCM57711E)
+		REG_WR(bp, PGLUE_B_REG_INTERNAL_PFID_ENABLE_TARGET_READ, 1);
 
 	/* Reset the load counter */
 	bnx2x_clear_load_cnt(bp);
-- 
1.7.2.2





^ permalink raw reply related

* [PATCH 5/6] bnx2x: fix bnx2x_stop_on_error flow in bnx2x_sp_rtnl_task
From: Dmitry Kravkov @ 2011-07-24 13:57 UTC (permalink / raw)
  To: davem, netdev@vger.kernel.org; +Cc: Vladislav Zolotarov, Eilon Greenstein

From: Vladislav Zolotarov <vladz@broadcom.com>


Signed-off-by: Dmitry Kravkov <dmitry@broadcom.com>
Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
---
 drivers/net/bnx2x/bnx2x_main.c |   36 +++++++++++++++++++++++++-----------
 1 files changed, 25 insertions(+), 11 deletions(-)

diff --git a/drivers/net/bnx2x/bnx2x_main.c b/drivers/net/bnx2x/bnx2x_main.c
index 9c62092..475f66f 100644
--- a/drivers/net/bnx2x/bnx2x_main.c
+++ b/drivers/net/bnx2x/bnx2x_main.c
@@ -8413,31 +8413,45 @@ static void bnx2x_sp_rtnl_task(struct work_struct *work)
 	if (!netif_running(bp->dev))
 		goto sp_rtnl_exit;
 
-	if (test_and_clear_bit(BNX2X_SP_RTNL_SETUP_TC, &bp->sp_rtnl_state))
-		bnx2x_setup_tc(bp->dev, bp->dcbx_port_params.ets.num_of_cos);
-
 	/* if stop on error is defined no recovery flows should be executed */
 #ifdef BNX2X_STOP_ON_ERROR
 	BNX2X_ERR("recovery flow called but STOP_ON_ERROR defined "
 		  "so reset not done to allow debug dump,\n"
 		  "you will need to reboot when done\n");
-	goto sp_rtnl_exit;
+	goto sp_rtnl_not_reset;
 #endif
 
 	if (unlikely(bp->recovery_state != BNX2X_RECOVERY_DONE)) {
 		/*
-		 * Clear TX_TIMEOUT bit as we are going to reset the function
-		 * anyway.
+		 * Clear all pending SP commands as we are going to reset the
+		 * function anyway.
 		 */
-		smp_mb__before_clear_bit();
-		clear_bit(BNX2X_SP_RTNL_TX_TIMEOUT, &bp->sp_rtnl_state);
-		smp_mb__after_clear_bit();
+		bp->sp_rtnl_state = 0;
+		smp_mb();
+
 		bnx2x_parity_recover(bp);
-	} else if (test_and_clear_bit(BNX2X_SP_RTNL_TX_TIMEOUT,
-				    &bp->sp_rtnl_state)){
+
+		goto sp_rtnl_exit;
+	}
+
+	if (test_and_clear_bit(BNX2X_SP_RTNL_TX_TIMEOUT, &bp->sp_rtnl_state)) {
+		/*
+		 * Clear all pending SP commands as we are going to reset the
+		 * function anyway.
+		 */
+		bp->sp_rtnl_state = 0;
+		smp_mb();
+
 		bnx2x_nic_unload(bp, UNLOAD_NORMAL);
 		bnx2x_nic_load(bp, LOAD_NORMAL);
+
+		goto sp_rtnl_exit;
 	}
+#ifdef BNX2X_STOP_ON_ERROR
+sp_rtnl_not_reset:
+#endif
+	if (test_and_clear_bit(BNX2X_SP_RTNL_SETUP_TC, &bp->sp_rtnl_state))
+		bnx2x_setup_tc(bp->dev, bp->dcbx_port_params.ets.num_of_cos);
 
 sp_rtnl_exit:
 	rtnl_unlock();
-- 
1.7.2.2





^ permalink raw reply related

* [PATCH 1/6] bnx2x: dcb - send all unmapped priorities to same COS as L2
From: Dmitry Kravkov @ 2011-07-24 14:09 UTC (permalink / raw)
  To: davem, netdev@vger.kernel.org; +Cc: Eilon Greenstein, ariele

As a result of DCBX negotiation some priorities maybe untouched and still 
unmapped to any COS; instead of sending them to COS0 we assign them
to the same COS as L2 traffic - to avoid collisions with storage class of
service. 

Signed-off-by: Dmitry Kravkov <dmitry@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
---
 drivers/net/bnx2x/bnx2x_dcb.c |   39 +++++++++++++++++++++++++++++++++------
 1 files changed, 33 insertions(+), 6 deletions(-)

diff --git a/drivers/net/bnx2x/bnx2x_dcb.c b/drivers/net/bnx2x/bnx2x_dcb.c
index d028794..a4ea35f 100644
--- a/drivers/net/bnx2x/bnx2x_dcb.c
+++ b/drivers/net/bnx2x/bnx2x_dcb.c
@@ -19,15 +19,13 @@
 #include <linux/netdevice.h>
 #include <linux/types.h>
 #include <linux/errno.h>
+#include <linux/rtnetlink.h>
+#include <net/dcbnl.h>
 
 #include "bnx2x.h"
 #include "bnx2x_cmn.h"
 #include "bnx2x_dcb.h"
 
-#ifdef BCM_DCBNL
-#include <linux/rtnetlink.h>
-#endif
-
 /* forward declarations of dcbx related functions */
 static int bnx2x_dcbx_stop_hw_tx(struct bnx2x *bp);
 static void bnx2x_pfc_set_pfc(struct bnx2x *bp);
@@ -333,6 +331,32 @@ static void  bnx2x_dcbx_get_pfc_feature(struct bnx2x *bp,
 	}
 }
 
+/* maps unmapped priorities to to the same COS as L2 */
+static void bnx2x_dcbx_map_nw(struct bnx2x *bp)
+{
+	int i;
+	u32 unmapped = (1 << MAX_PFC_PRIORITIES) - 1; /* all ones */
+	u32 *ttp = bp->dcbx_port_params.app.traffic_type_priority;
+	u32 nw_prio = 1 << ttp[LLFC_TRAFFIC_TYPE_NW];
+	struct bnx2x_dcbx_cos_params *cos_params =
+			bp->dcbx_port_params.ets.cos_params;
+
+	/* get unmapped priorities by clearing mapped bits */
+	for (i = 0; i < LLFC_DRIVER_TRAFFIC_TYPE_MAX; i++)
+		unmapped &= ~(1 << ttp[i]);
+
+	/* find cos for nw prio and extend it with unmapped */
+	for (i = 0; i < ARRAY_SIZE(bp->dcbx_port_params.ets.cos_params); i++) {
+		if (cos_params[i].pri_bitmask & nw_prio) {
+			/* extend the bitmask with unmapped */
+			DP(NETIF_MSG_LINK,
+			   "cos %d extended with 0x%08x", i, unmapped);
+			cos_params[i].pri_bitmask |= unmapped;
+			break;
+		}
+	}
+}
+
 static void bnx2x_get_dcbx_drv_param(struct bnx2x *bp,
 				     struct dcbx_features *features,
 				     u32 error)
@@ -342,6 +366,8 @@ static void bnx2x_get_dcbx_drv_param(struct bnx2x *bp,
 	bnx2x_dcbx_get_pfc_feature(bp, &features->pfc, error);
 
 	bnx2x_dcbx_get_ets_feature(bp, &features->ets, error);
+
+	bnx2x_dcbx_map_nw(bp);
 }
 
 #define DCBX_LOCAL_MIB_MAX_TRY_READ		(100)
@@ -682,6 +708,8 @@ static inline void bnx2x_dcbx_update_tc_mapping(struct bnx2x *bp)
 			if (bp->dcbx_port_params.ets.cos_params[cos].pri_bitmask
 			    & (1 << prio)) {
 				bp->prio_to_cos[prio] = cos;
+				DP(NETIF_MSG_LINK,
+				   "tx_mapping %d --> %d\n", prio, cos);
 			}
 		}
 	}
@@ -749,7 +777,7 @@ void bnx2x_dcbx_set_params(struct bnx2x *bp, u32 state)
 		DP(NETIF_MSG_LINK, "BNX2X_DCBX_STATE_TX_RELEASED\n");
 		bnx2x_fw_command(bp, DRV_MSG_CODE_DCBX_PMF_DRV_OK, 0);
 #ifdef BCM_DCBNL
-		/**
+		/*
 		 * Send a notification for the new negotiated parameters
 		 */
 		dcbnl_cee_notify(bp->dev, RTM_GETDCB, DCB_CMD_CEE_GET, 0, 0);
@@ -1732,7 +1760,6 @@ static void bnx2x_dcbx_fill_cos_params(struct bnx2x *bp,
 							  pri_join_mask,
 							  num_of_dif_pri);
 
-
 	for (i = 0; i < cos_data.num_of_cos ; i++) {
 		struct bnx2x_dcbx_cos_params *p =
 			&bp->dcbx_port_params.ets.cos_params[i];
-- 
1.7.2.2






^ permalink raw reply related

* [PATCH 0/6] bnx2x fixes
From: Dmitry Kravkov @ 2011-07-24 14:03 UTC (permalink / raw)
  To: davem, netdev@vger.kernel.org; +Cc: Eilon Greenstein

Hello Dave,

Following the short series of "last minute" fixes. Will you able to
apply it to the net-next?

Thanks a lot!
Dmitry








^ permalink raw reply

* [PATCH 6/6] bnx2x: use pci_pcie_cap()
From: Dmitry Kravkov @ 2011-07-24 13:58 UTC (permalink / raw)
  To: netdev@vger.kernel.org, David Miller
  Cc: Vladislav Zolotarov, Eilon Greenstein

From: Vladislav Zolotarov <vladz@broadcom.com>


Signed-off-by: Dmitry Kravkov <dmitry@broadcom.com>
Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
---
 drivers/net/bnx2x/bnx2x_main.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/net/bnx2x/bnx2x_main.c b/drivers/net/bnx2x/bnx2x_main.c
index 475f66f..b049fe1 100644
--- a/drivers/net/bnx2x/bnx2x_main.c
+++ b/drivers/net/bnx2x/bnx2x_main.c
@@ -5652,7 +5652,7 @@ static void bnx2x_init_pxp(struct bnx2x *bp)
 	int r_order, w_order;
 
 	pci_read_config_word(bp->pdev,
-			     bp->pdev->pcie_cap + PCI_EXP_DEVCTL, &devctl);
+			     pci_pcie_cap(bp->pdev) + PCI_EXP_DEVCTL, &devctl);
 	DP(NETIF_MSG_HW, "read 0x%x from devctl\n", devctl);
 	w_order = ((devctl & PCI_EXP_DEVCTL_PAYLOAD) >> 5);
 	if (bp->mrrs == -1)
-- 
1.7.2.2





^ permalink raw reply related

* Re: LInux kernel 3.0 sit creation bug report
From: Jay Rouman @ 2011-07-24 15:40 UTC (permalink / raw)
  To: Eric Dumazet; +Cc: netdev, davem
In-Reply-To: <1311496931.6669.16.camel@edumazet-laptop>

I got the route2 configuration to work.  Sorry for the bother.  There
does seem to be a change in behavior as noted between 2.6.39 and 3.0
when using ifconfig and sit0.  Perhaps this was intended.

--Jay Rouman

> Le samedi 23 juillet 2011 ? 12:27 -0400, Jay Rouman a ?crit :
> > Kernel 3.0 (release version)
> > Summary:  sit tunnel creation fails with "No buffer space available"
> > 
> > Example:
> > 
> > icebox:/home/u/jsr(3)# /sbin/ip tunnel add sit0 mode sit local 216.111.203.89 remote 209.51.18.1 ttl 255
> > add tunnel sit0 failed: No buffer space available
> > 
> > icebox:/home/u/jsr(8)# /sbin/ifconfig sit0 inet6 tunnel ::209.51.18.1
> > SIOCSIFDSTADDR: No buffer space available
> > 
> > Notes:
> > 
> > Oddly, the ifconfig example creates a working sit0.  The "ip" example
> > does not.  The problem existed in rc1 but unfortunately I did not test
> > sit creation then.  This was discovered when I upgraded a machine with
> > an HE tunnel to the 3.0 kernel.  I am happy to do further testing or
> > provide whatever additional info I can.
> > 
> 
> I believe you use a deprecated (~10 years ago ?) way to setup your
> tunnel, its not a linux-3.0 new behavior.
> 
> sit0 is reserved (fall back tunnel), you should use a different name.
> 
> Try :
> 
> # ip tunnel add aster mode sit local 216.111.203.89 remote 209.51.18.1 ttl 255
> # ifconfig aster up
> 
> # ip tunnel
> sit0: ipv6/ip  remote any  local any  ttl 64  nopmtudisc
> aster: ipv6/ip  remote 209.51.18.1  local 216.111.203.89  ttl 255 

^ permalink raw reply

* [PATCH] iwlagn: wrap suspend/resume definitions in CONFIG_PM block
From: John W. Linville @ 2011-07-24 19:19 UTC (permalink / raw)
  To: davem-fT/PcQaiUtIeIZ0/mPfg9Q
  Cc: Johannes Berg, Wey-Yi Guy, linux-wireless-u79uwXL29TY76Z2rM5mHXA,
	netdev-u79uwXL29TY76Z2rM5mHXA,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA, John W. Linville
In-Reply-To: <20110724.030949.1727841105144911931.davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>

drivers/net/wireless/iwlwifi/iwl-agn.c:3464: error: unknown field 'suspend' specified in initializer
drivers/net/wireless/iwlwifi/iwl-agn.c:3464: warning: initialization from incompatible pointer type
drivers/net/wireless/iwlwifi/iwl-agn.c:3465: error: unknown field 'resume' specified in initializer
drivers/net/wireless/iwlwifi/iwl-agn.c:3465: warning: initialization from incompatible pointer type

This was caused by commit c8ac61cf ("iwlagn: implement WoWLAN").

Signed-off-by: John W. Linville <linville-2XuSBdqkA4R54TAoqtyWWQ@public.gmane.org>
Cc: Johannes Berg <johannes.berg-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
Cc: Wey-Yi Guy <wey-yi.w.guy-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
---
 drivers/net/wireless/iwlwifi/iwl-agn.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/drivers/net/wireless/iwlwifi/iwl-agn.c b/drivers/net/wireless/iwlwifi/iwl-agn.c
index 4b666b7..ff3e6c0 100644
--- a/drivers/net/wireless/iwlwifi/iwl-agn.c
+++ b/drivers/net/wireless/iwlwifi/iwl-agn.c
@@ -3461,8 +3461,10 @@ struct ieee80211_ops iwlagn_hw_ops = {
 	.tx = iwlagn_mac_tx,
 	.start = iwlagn_mac_start,
 	.stop = iwlagn_mac_stop,
+#ifdef CONFIG_PM
 	.suspend = iwlagn_mac_suspend,
 	.resume = iwlagn_mac_resume,
+#endif /* CONFIG_PM */
 	.add_interface = iwl_mac_add_interface,
 	.remove_interface = iwl_mac_remove_interface,
 	.change_interface = iwl_mac_change_interface,
-- 
1.7.4.4

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

^ permalink raw reply related

* Re: [Bugme-new] [Bug 39742] New: 2.6.39.3 crash and hangs in 1-2 minutes with igb-RSS and L2TP PPTP services on the NAS server
From: Rustam Afanasyev @ 2011-07-24 19:38 UTC (permalink / raw)
  To: Andrew Morton; +Cc: netdev, bugme-daemon, Patrick McHardy
In-Reply-To: <20110722144214.577718f0.akpm@linux-foundation.org>

Andrew Morton wrote:
> (switched to email.  Please respond via emailed reply-to-all, not via the
> bugzilla web interface).
I apply patch from this thread.
-----------------------------------------
--- Comment #2 from xeb@mail.ru  2011-07-23 15:42:04 ---
Please check this message http://www.spinics.net/lists/netdev/msg170766.html
maybe it is the reason.
-----------------------------------------
Now :
[root@nas3 ~]# uptime
  23:36:49 up 1 day, 41 min,  1 user,  load average: 0.00, 0.01, 0.05
[root@nas3 ~]#
Seems it work! There is now strange hangs and panic.

^ permalink raw reply

* Re: [PATCH] iwlagn: wrap suspend/resume definitions in CONFIG_PM block
From: David Miller @ 2011-07-24 20:08 UTC (permalink / raw)
  To: linville
  Cc: johannes.berg, wey-yi.w.guy, linux-wireless, netdev, linux-kernel
In-Reply-To: <1311535150-28686-1-git-send-email-linville@tuxdriver.com>

From: "John W. Linville" <linville@tuxdriver.com>
Date: Sun, 24 Jul 2011 15:19:10 -0400

> drivers/net/wireless/iwlwifi/iwl-agn.c:3464: error: unknown field 'suspend' specified in initializer
> drivers/net/wireless/iwlwifi/iwl-agn.c:3464: warning: initialization from incompatible pointer type
> drivers/net/wireless/iwlwifi/iwl-agn.c:3465: error: unknown field 'resume' specified in initializer
> drivers/net/wireless/iwlwifi/iwl-agn.c:3465: warning: initialization from incompatible pointer type
> 
> This was caused by commit c8ac61cf ("iwlagn: implement WoWLAN").
> 
> Signed-off-by: John W. Linville <linville@tuxdriver.com>

Since I already minimally fixed up my build locally last night I know
that your patch leads to a set of warnings because the methods whose
hookup are now commented out become completely unused and they are all
marked "static".  And recursively functions that those methods use
become unused too.

Did you turn off CONFIG_PM and test the build of this file to see
what the compiler actually does with it?

I'm checking in the following, but I expect much better from you John.

diff --git a/drivers/net/wireless/iwlwifi/iwl-agn.c b/drivers/net/wireless/iwlwifi/iwl-agn.c
index 4b666b7..b0ae4de 100644
--- a/drivers/net/wireless/iwlwifi/iwl-agn.c
+++ b/drivers/net/wireless/iwlwifi/iwl-agn.c
@@ -2279,6 +2279,7 @@ static void iwlagn_mac_stop(struct ieee80211_hw *hw)
 	IWL_DEBUG_MAC80211(priv, "leave\n");
 }
 
+#ifdef CONFIG_PM
 static int iwlagn_send_patterns(struct iwl_priv *priv,
 				struct cfg80211_wowlan *wowlan)
 {
@@ -2320,6 +2321,7 @@ static int iwlagn_send_patterns(struct iwl_priv *priv,
 	kfree(pattern_cmd);
 	return err;
 }
+#endif
 
 static void iwlagn_mac_set_rekey_data(struct ieee80211_hw *hw,
 				      struct ieee80211_vif *vif,
@@ -2352,6 +2354,7 @@ struct wowlan_key_data {
 	bool error, use_rsc_tsc, use_tkip;
 };
 
+#ifdef CONFIG_PM
 static void iwlagn_convert_p1k(u16 *p1k, __le16 *out)
 {
 	int i;
@@ -2739,6 +2742,7 @@ static int iwlagn_mac_resume(struct ieee80211_hw *hw)
 
 	return 1;
 }
+#endif
 
 static void iwlagn_mac_tx(struct ieee80211_hw *hw, struct sk_buff *skb)
 {
@@ -3461,8 +3465,10 @@ struct ieee80211_ops iwlagn_hw_ops = {
 	.tx = iwlagn_mac_tx,
 	.start = iwlagn_mac_start,
 	.stop = iwlagn_mac_stop,
+#ifdef CONFIG_PM
 	.suspend = iwlagn_mac_suspend,
 	.resume = iwlagn_mac_resume,
+#endif
 	.add_interface = iwl_mac_add_interface,
 	.remove_interface = iwl_mac_remove_interface,
 	.change_interface = iwl_mac_change_interface,

^ permalink raw reply related

* Re: [PATCH 0/6] bnx2x fixes
From: David Miller @ 2011-07-24 20:12 UTC (permalink / raw)
  To: dmitry; +Cc: netdev, eilong
In-Reply-To: <1311516194.23243.14.camel@lb-tlvb-dmitry>

From: "Dmitry Kravkov" <dmitry@broadcom.com>
Date: Sun, 24 Jul 2011 17:03:14 +0300

> Following the short series of "last minute" fixes. Will you able to
> apply it to the net-next?

All applied, thanks.

^ permalink raw reply

* [GIT] Networking
From: David Miller @ 2011-07-24 20:28 UTC (permalink / raw)
  To: torvalds; +Cc: akpm, netdev, linux-kernel


The bulk of this is a final syncup with the wireless folks, updates
to the BNA and BNX2X driver, and:

1) GRE tunnel ICMP error handler packet parser has wrong expectation
   of where the IPv4 header is at this point, fix from Dmitry Kozlov.

2) rt->rt_tos --> iph->tos is not a valid conversion unless RT_TOS()
   is applied to filter out iph->tos value, fix from Julian Anastasov.

3) Duplicate header include removals from Huang Weiyi.

4) Linkwatch del_timer_sync() fix from Stephen Hemminger.

5) Malformed STP config packets need to be ignored, from Stephen
   Hemminger.

Please pull, thanks a lot!

The following changes since commit b6844e8f64920cdee620157252169ba63afb0c89:

  Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm (2011-07-24 10:20:54 -0700)

are available in the git repository at:

  master.kernel.org:/pub/scm/linux/kernel/git/davem/net.git master

Amitkumar Karwar (3):
      mwifiex: put multicast/broadcast packets to the same RA
      mwifiex: check SDIO multi-port aggregation buffer room correctly
      mwifiex: disable auto deep sleep before unloading the driver

Andy Shevchenko (3):
      wireless: rtlwifi: throw away MAC_FMT and use %pM instead
      wireless: ath9k: use %pM to print MAC
      wireless: mwifiex: print hw address via %pM

Bing Zhao (1):
      MAINTAINERS: add entry for Marvell mwifiex wireless driver

Christian Lamparter (3):
      carl9170 firmware: update firmware headers
      carl9170: move beacon_update into tx.c
      carl9170: set beacon xmit power to the max

Daniel Drake (2):
      libertas: mesh: misc cleanup
      libertas: only enable mesh when interface is active

David S. Miller (2):
      Merge branch 'for-davem' of ssh://master.kernel.org/.../linville/wireless-next-2.6
      iwlwifi: Fix build with CONFIG_PM disabled.

Dmitry Kravkov (1):
      bnx2x: dcb - send all unmapped priorities to same COS as L2

Eliad Peller (3):
      mac80211: reconfigure tx on device reconfiguration
      cfg80211: enter psm when working as p2p_cli
      mac80211: check sta_info_get() return value

Emmanuel Grumbach (21):
      iwlagn: move Tx datapath to transport layer
      iwlagn: move the tasklet / irq to the transport layer
      iwlagn: move sync_irq to transport layer
      iwlagn: move the Rx dispatching to the upper layer
      iwlagn: add comment to tx and get_tx_cmd in iwl_trans_ops
      iwlagn: move rx transport functions to iwl-trans-rx-pcie.c
      iwlagn: move tx transport functions to iwl-trans-tx-pcie.c
      iwlagn: move iwlagn_stop_device to transport layer
      iwlagn: move all the ICT related functions to iwl-trans-rx-pcie.c
      iwlagn: add tx start API to transport layer
      iwlagn: add kick_nic API to transport layer
      iwlagn: kill iwlagn_rx_handler_setup
      iwlagn: kill iwlagn_setup_deferred_work
      iwlagn: SCD configuration for AMPDU moves to transport layer
      iwlagn: move more functions from the start flow to the transport layer
      iwlagn: move iwl_prepare_card_hw to the transport layer
      iwlagn: transport layer receives struct iwl_trans*
      iwlagn: simplify the bus architecture
      iwlagn: iwl_bus holds drv_data as void * instead of iwl_priv
      iwlagn: add comment to warn about WoWLAN in resume / suspend flows
      iwlagn: probe would crash with DEBUG_SHIRQ

Felix Fietkau (2):
      ath9k: improve reliability of MIC error detection
      ath9k_hw: validate and fix broken eeprom chainmask settings

Fry, Donald H (1):
      iwlagn: remove indirection for iwlagn_hw_valid_rtc_data_addr

Hsu, Kenny (1):
      iwlagn: set default of uCode ownership to driver

Huang Weiyi (5):
      bnad: remove duplicated #include
      can: c_can: remove duplicated #include
      igb: remove duplicated #include
      qlge: remove duplicated #include
      via-velocity: remove duplicated #include

Joe Perches (1):
      rtlwifi: Convert printks to pr_<level>

Johannes Berg (15):
      nl80211: advertise GTK rekey support, new triggers
      mac80211: allow driver access to TKIP RX P1K
      mac80211: let key iteration get keys in install order
      mac80211: be more careful in suspend/resume
      iwlagn: simplify TX flags assignments
      cfg80211: allow userspace to control supported rates in scan
      mac80211: implement scan supported rates
      mac80211: sync driver before TX
      cfg80211: fix scan crash on single-band cards
      iwlagn: remove keyinfo cache
      iwlagn: remove forgotten debugfs function
      iwlagn: rewrite HW crypto
      iwlagn: implement WoWLAN
      iwlagn: track beacon interval sent to device
      iwlagn: rename iwlagn_set_dynamic_key

John W. Linville (2):
      bcma: fix 'SSB_PCICORE_BFL_NOPCI' undeclared build breakage
      Merge branch 'master' of git://git.kernel.org/.../linville/wireless-next-2.6 into for-davem

Julian Anastasov (1):
      ipv4: use RT_TOS after some rt_tos conversions

Kalle Valo (1):
      ieee80211: add few wmm tspec values

Luciano Coelho (3):
      nl80211/cfg80211: add max_sched_scan_ssids in the hw description
      nl80211/cfg80211: add max_sched_scan_ie_len in the hw description
      MAINTAINERS: change maintainer of the wl1251 driver

Pavel Roskin (11):
      orinoco: minor fixes for problems found by checkpatch.pl
      carl9170: fix formatting issues found by checkpatch
      ath: use get_unaligned_le{16,32} in ath_hw_keysetmac()
      ath9k: use get_unaligned_{b16, le16, le32} where possible
      ath9k: remove defines in reg.h that exist in ../reg.h
      ath9k: use ath_opmode_to_string()
      ath5k: merge ath5k_hw and ath5k_softc
      carl9170: fix sparse warnings enabled by CONFIG_SPARSE_RCU_POINTER
      ath5k: merge ath5k_{init, deinit}_hw() with their thin wrappers
      ath5k: remove ath5k_hw_get_capability(), don't use VEOL on AR5210
      ath5k: use get_unaligned_le32() in ath5k_write_pwr_to_pdadc_table()

Rafał Miłecki (25):
      ssb: SPROM: add LED duty cycle fields
      bcma: cc: set GPIOTIMER register
      bcma: extract SPROM rev 9 the same way as rev 8
      b43: bus: drop inline from SSB functions
      b43: use agent R/W ops for BCMA_IOCTL
      b43: HT-PHY: switch to channel after enabling radio
      b43: HT-PHY: find channel entry with regs data
      b43: HT-PHY: fix typo in 0x2059 radio init
      bcma: handle alternative SPROM location
      bcma: define IO status register
      b43: bcma: define 80211 core specific IO status bits
      b43: bcma: read info about supported bands
      b43: HT-PHY: fix masks in radio ctl
      b43: correctly display longer chipsets ids
      bcma: move define of BCMA_CLKCTLST register
      bcma: trivial: add helpers for masking/setting
      bcma: allow setting FAST clockmode for a core
      bcma: allow enabling PLL
      b43: bcma: implement full core reset
      b43: disable parity check on BCMA devices
      ssb: return correct translation bit for 64-bit DMA
      bcma: inform drivers about translation bits needed for the core
      b43: bcma: get DMA translation bits
      b43: (un)initialize driver on the BCMA bus
      b43legacy: dma: cache translation (routing bits)

Rajkumar Manoharan (2):
      ath9k: Fix sparse warnings
      ath9k: Fix some smatch warnings

Rasesh Mody (10):
      bna: Print Driver Version
      bna: CheckPatch Cleanup
      bna: IOC Event Notification Enhancement
      bna: State Machine Fault Handling Cleanup
      bna: Minor IRQ Index and Definition Change
      bna: Mboxq Flush When IOC Disabled
      bna: IOC Event Name Change
      bna: Add HW Semaphore Unlock Logic
      bna: HW Error Counter Fix
      bna: Header File Consolidation

Sergei Shtylyov (2):
      r8169: use pci_dev->subsystem_{vendor|device}
      sbni: use pci_dev->subsystem_device

Shmulik Ravid (1):
      bnx2x: enable internal target-read for 57712 and up only

Vladislav Zolotarov (3):
      bnx2x: count statistic ramrods on EQ to prevent MC assert
      bnx2x: fix bnx2x_stop_on_error flow in bnx2x_sp_rtnl_task
      bnx2x: use pci_pcie_cap()

Wey-Yi Guy (13):
      iwlagn: remove un-necessary file
      iwlagn: remove dual-indirect call to simply the code
      iwlagn: another double indirect removed
      iwlagn: comments for iwl_cfg
      iwlagn: calibration bitmap
      iwlagn: set correct calibration flag
      iwlagn: remove legacy calibration command
      iwlagn: define valid init calibration mask
      iwlagn: radio sensor offset in le16 format
      iwlagn: testmode fixed rate available for testmode only
      iwlagn: remove un-necessary "_agn"
      iwlagn: write iq invert register for 105/135 device
      iwlagn: remove "disable otp refresh" W/A

Yaniv Rosner (1):
      bnx2x: fix loopback for non 10G link

Yogesh Ashok Powar (1):
      mwl8k: Fixing sta dereference when ieee80211_tx_info->control.sta is NULL

stephen hemminger (6):
      bridge: send proper message_age in config BPDU
      bridge: ignore bogus STP config packets
      bridge: notifier called with the wrong device
      bridge: add notification over netlink when STP changes state
      bridge: minor cleanups
      net: allow netif_carrier to be called safely from IRQ

xeb@mail.ru (1):
      gre: fix improper error handling

 MAINTAINERS                                        |   10 +-
 drivers/bcma/core.c                                |   72 ++
 drivers/bcma/driver_chipcommon.c                   |   14 +
 drivers/bcma/driver_pci.c                          |    2 +
 drivers/bcma/sprom.c                               |   14 +-
 drivers/net/bna/bfa_cee.c                          |   65 +-
 drivers/net/bna/bfa_cee.h                          |    3 +-
 drivers/net/bna/{bfa_sm.h => bfa_cs.h}             |   78 +-
 drivers/net/bna/bfa_defs.h                         |    5 +-
 drivers/net/bna/bfa_defs_mfg_comm.h                |   20 +-
 drivers/net/bna/bfa_defs_status.h                  |  134 +-
 drivers/net/bna/bfa_ioc.c                          |  157 ++-
 drivers/net/bna/bfa_ioc.h                          |   51 +-
 drivers/net/bna/bfa_wc.h                           |   69 -
 drivers/net/bna/bfi.h                              |   20 +-
 drivers/net/bna/bna.h                              |   18 +-
 drivers/net/bna/bna_ctrl.c                         |   45 +-
 drivers/net/bna/bna_hw.h                           |   92 +-
 drivers/net/bna/bna_txrx.c                         |   44 +-
 drivers/net/bna/bna_types.h                        |   58 +-
 drivers/net/bna/bnad.c                             |   65 +-
 drivers/net/bna/bnad.h                             |   27 +-
 drivers/net/bna/bnad_ethtool.c                     |    2 +-
 drivers/net/bna/cna.h                              |    2 +-
 drivers/net/bnx2x/bnx2x_dcb.c                      |   39 +-
 drivers/net/bnx2x/bnx2x_main.c                     |  134 ++-
 drivers/net/can/c_can/c_can.c                      |    1 -
 drivers/net/can/c_can/c_can_platform.c             |    1 -
 drivers/net/igb/igb_main.c                         |    1 -
 drivers/net/qlge/qlge_main.c                       |    1 -
 drivers/net/r8169.c                                |    7 +-
 drivers/net/via-velocity.c                         |    1 -
 drivers/net/wan/sbni.c                             |    5 +-
 drivers/net/wireless/ath/ath5k/ahb.c               |   44 +-
 drivers/net/wireless/ath/ath5k/ani.c               |   84 +-
 drivers/net/wireless/ath/ath5k/ath5k.h             |  272 ++++-
 drivers/net/wireless/ath/ath5k/attach.c            |   31 +-
 drivers/net/wireless/ath/ath5k/base.c              | 1138 ++++++++---------
 drivers/net/wireless/ath/ath5k/base.h              |  205 +---
 drivers/net/wireless/ath/ath5k/caps.c              |   45 -
 drivers/net/wireless/ath/ath5k/debug.c             |  218 ++--
 drivers/net/wireless/ath/ath5k/debug.h             |   21 +-
 drivers/net/wireless/ath/ath5k/desc.c              |   10 +-
 drivers/net/wireless/ath/ath5k/dma.c               |   12 +-
 drivers/net/wireless/ath/ath5k/eeprom.c            |    4 +-
 drivers/net/wireless/ath/ath5k/initvals.c          |    2 +-
 drivers/net/wireless/ath/ath5k/led.c               |   68 +-
 drivers/net/wireless/ath/ath5k/mac80211-ops.c      |  257 ++--
 drivers/net/wireless/ath/ath5k/pci.c               |   38 +-
 drivers/net/wireless/ath/ath5k/pcu.c               |   24 +-
 drivers/net/wireless/ath/ath5k/phy.c               |   41 +-
 drivers/net/wireless/ath/ath5k/qcu.c               |    9 +-
 drivers/net/wireless/ath/ath5k/reset.c             |   44 +-
 drivers/net/wireless/ath/ath5k/rfkill.c            |   65 +-
 drivers/net/wireless/ath/ath5k/sysfs.c             |   32 +-
 drivers/net/wireless/ath/ath5k/trace.h             |   12 +-
 drivers/net/wireless/ath/ath9k/ar9003_eeprom.c     |   12 +-
 drivers/net/wireless/ath/ath9k/btcoex.c            |    8 +-
 drivers/net/wireless/ath/ath9k/debug.c             |   22 +-
 drivers/net/wireless/ath/ath9k/eeprom_4k.c         |   12 +-
 drivers/net/wireless/ath/ath9k/eeprom_9287.c       |   12 +-
 drivers/net/wireless/ath/ath9k/eeprom_def.c        |   12 +-
 drivers/net/wireless/ath/ath9k/hif_usb.c           |    9 +-
 drivers/net/wireless/ath/ath9k/htc_drv_debug.c     |    7 +-
 drivers/net/wireless/ath/ath9k/hw.c                |   22 +
 drivers/net/wireless/ath/ath9k/init.c              |   25 +-
 drivers/net/wireless/ath/ath9k/recv.c              |   53 +-
 drivers/net/wireless/ath/ath9k/reg.h               |   23 -
 drivers/net/wireless/ath/ath9k/xmit.c              |    4 +
 drivers/net/wireless/ath/carl9170/carl9170.h       |   10 +-
 drivers/net/wireless/ath/carl9170/cmd.h            |    4 +-
 drivers/net/wireless/ath/carl9170/debug.c          |    2 +-
 drivers/net/wireless/ath/carl9170/fwdesc.h         |    3 +
 drivers/net/wireless/ath/carl9170/hw.h             |   41 +-
 drivers/net/wireless/ath/carl9170/led.c            |    2 +-
 drivers/net/wireless/ath/carl9170/mac.c            |  129 --
 drivers/net/wireless/ath/carl9170/main.c           |    2 +-
 drivers/net/wireless/ath/carl9170/phy.c            |    6 +-
 drivers/net/wireless/ath/carl9170/tx.c             |  290 ++++-
 drivers/net/wireless/ath/key.c                     |    7 +-
 drivers/net/wireless/b43/b43.h                     |    7 +
 drivers/net/wireless/b43/bus.c                     |   27 +-
 drivers/net/wireless/b43/dma.c                     |   27 +-
 drivers/net/wireless/b43/dma.h                     |    4 +
 drivers/net/wireless/b43/main.c                    |  106 ++-
 drivers/net/wireless/b43/phy_ht.c                  |   21 +-
 drivers/net/wireless/b43/phy_n.c                   |    4 +-
 drivers/net/wireless/b43/radio_2059.c              |    9 +
 drivers/net/wireless/b43legacy/b43legacy.h         |    2 +
 drivers/net/wireless/b43legacy/dma.c               |    7 +-
 drivers/net/wireless/iwlwifi/Makefile              |    8 +-
 drivers/net/wireless/iwlwifi/iwl-1000.c            |   11 +-
 drivers/net/wireless/iwlwifi/iwl-2000.c            |   46 +-
 drivers/net/wireless/iwlwifi/iwl-5000.c            |   22 +-
 drivers/net/wireless/iwlwifi/iwl-6000.c            |   58 +-
 drivers/net/wireless/iwlwifi/iwl-agn-calib.c       |   65 +-
 drivers/net/wireless/iwlwifi/iwl-agn-hcmd.c        |  210 ----
 drivers/net/wireless/iwlwifi/iwl-agn-ict.c         |  306 -----
 drivers/net/wireless/iwlwifi/iwl-agn-lib.c         |  504 +-------
 drivers/net/wireless/iwlwifi/iwl-agn-rs.c          |    8 +-
 drivers/net/wireless/iwlwifi/iwl-agn-rxon.c        |  115 ++-
 drivers/net/wireless/iwlwifi/iwl-agn-sta.c         |  380 +++----
 drivers/net/wireless/iwlwifi/iwl-agn-tx.c          |  411 +------
 drivers/net/wireless/iwlwifi/iwl-agn-ucode.c       |  179 +---
 drivers/net/wireless/iwlwifi/iwl-agn.c             | 1240 ++++++++++---------
 drivers/net/wireless/iwlwifi/iwl-agn.h             |   65 +-
 .../net/wireless/iwlwifi/{iwl-pci.h => iwl-bus.h}  |   70 +
 drivers/net/wireless/iwlwifi/iwl-commands.h        |  180 +++-
 drivers/net/wireless/iwlwifi/iwl-core.c            |   28 +-
 drivers/net/wireless/iwlwifi/iwl-core.h            |   64 +-
 drivers/net/wireless/iwlwifi/iwl-csr.h             |    1 +
 drivers/net/wireless/iwlwifi/iwl-debug.h           |   10 +-
 drivers/net/wireless/iwlwifi/iwl-debugfs.c         |   87 +-
 drivers/net/wireless/iwlwifi/iwl-dev.h             |  197 +--
 drivers/net/wireless/iwlwifi/iwl-eeprom.c          |   10 +-
 drivers/net/wireless/iwlwifi/iwl-hcmd.c            |  271 ----
 drivers/net/wireless/iwlwifi/iwl-io.h              |    7 +-
 drivers/net/wireless/iwlwifi/iwl-led.c             |    4 +-
 drivers/net/wireless/iwlwifi/iwl-pci.c             |  101 +-
 drivers/net/wireless/iwlwifi/iwl-power.c           |    8 +-
 drivers/net/wireless/iwlwifi/iwl-prph.h            |   82 +-
 drivers/net/wireless/iwlwifi/iwl-rx.c              |  212 +---
 drivers/net/wireless/iwlwifi/iwl-scan.c            |    8 +-
 drivers/net/wireless/iwlwifi/iwl-sta.c             |    8 +-
 drivers/net/wireless/iwlwifi/iwl-sta.h             |    5 +-
 drivers/net/wireless/iwlwifi/iwl-sv-open.c         |   10 +-
 drivers/net/wireless/iwlwifi/iwl-trans-int-pcie.h  |   82 ++
 drivers/net/wireless/iwlwifi/iwl-trans-rx-pcie.c   |  979 +++++++++++++++
 .../iwlwifi/{iwl-tx.c => iwl-trans-tx-pcie.c}      |  484 +++++++-
 drivers/net/wireless/iwlwifi/iwl-trans.c           |  643 +++++++++-
 drivers/net/wireless/iwlwifi/iwl-trans.h           |  154 ++-
 drivers/net/wireless/libertas/dev.h                |    2 -
 drivers/net/wireless/libertas/main.c               |    2 +-
 drivers/net/wireless/libertas/mesh.c               | 1320 +++++++++-----------
 drivers/net/wireless/libertas/mesh.h               |   31 -
 drivers/net/wireless/libertas/tx.c                 |    2 +-
 drivers/net/wireless/mwifiex/debugfs.c             |   33 +-
 drivers/net/wireless/mwifiex/ioctl.h               |    1 +
 drivers/net/wireless/mwifiex/main.h                |    1 +
 drivers/net/wireless/mwifiex/sdio.c                |    5 +-
 drivers/net/wireless/mwifiex/sta_ioctl.c           |   14 +
 drivers/net/wireless/mwifiex/wmm.c                 |    2 +
 drivers/net/wireless/mwl8k.c                       |    6 +-
 drivers/net/wireless/orinoco/airport.c             |    9 +-
 drivers/net/wireless/orinoco/cfg.c                 |    6 +-
 drivers/net/wireless/orinoco/fw.c                  |    7 +-
 drivers/net/wireless/orinoco/fw.h                  |    2 +-
 drivers/net/wireless/orinoco/hermes.c              |   40 +-
 drivers/net/wireless/orinoco/hermes.h              |   37 +-
 drivers/net/wireless/orinoco/hermes_dld.c          |    8 +-
 drivers/net/wireless/orinoco/hermes_dld.h          |   12 +-
 drivers/net/wireless/orinoco/hw.c                  |   48 +-
 drivers/net/wireless/orinoco/hw.h                  |    2 +-
 drivers/net/wireless/orinoco/main.c                |   46 +-
 drivers/net/wireless/orinoco/mic.c                 |    8 +-
 drivers/net/wireless/orinoco/orinoco.h             |   16 +-
 drivers/net/wireless/orinoco/orinoco_cs.c          |    6 +-
 drivers/net/wireless/orinoco/orinoco_nortel.c      |    3 +-
 drivers/net/wireless/orinoco/orinoco_pci.c         |    4 +-
 drivers/net/wireless/orinoco/orinoco_plx.c         |    6 +-
 drivers/net/wireless/orinoco/orinoco_tmd.c         |    2 +-
 drivers/net/wireless/orinoco/orinoco_usb.c         |   23 +-
 drivers/net/wireless/orinoco/spectrum_cs.c         |   10 +-
 drivers/net/wireless/orinoco/wext.c                |   14 +-
 drivers/net/wireless/rtlwifi/base.c                |   20 +-
 drivers/net/wireless/rtlwifi/cam.c                 |    8 +-
 drivers/net/wireless/rtlwifi/core.c                |    6 +-
 drivers/net/wireless/rtlwifi/debug.h               |    5 -
 drivers/net/wireless/rtlwifi/rtl8192c/fw_common.c  |    5 +-
 drivers/net/wireless/rtlwifi/rtl8192ce/hw.c        |    2 +-
 drivers/net/wireless/rtlwifi/rtl8192cu/hw.c        |   69 +-
 drivers/net/wireless/rtlwifi/rtl8192cu/mac.c       |   11 +-
 drivers/net/wireless/rtlwifi/rtl8192de/hw.c        |    2 +-
 drivers/net/wireless/rtlwifi/rtl8192de/sw.c        |    8 +-
 drivers/net/wireless/rtlwifi/rtl8192se/hw.c        |   12 +-
 drivers/net/wireless/rtlwifi/rtl8192se/phy.c       |    5 +-
 drivers/net/wireless/rtlwifi/rtl8192se/rf.c        |    4 +-
 drivers/net/wireless/rtlwifi/rtl8192se/sw.c        |    6 +-
 drivers/net/wireless/rtlwifi/usb.c                 |   12 +-
 drivers/ssb/main.c                                 |    5 +-
 include/linux/bcma/bcma.h                          |   21 +
 include/linux/bcma/bcma_driver_chipcommon.h        |   13 +-
 include/linux/bcma/bcma_regs.h                     |   27 +-
 include/linux/ieee80211.h                          |   37 +
 include/linux/nl80211.h                            |   33 +-
 include/linux/ssb/ssb.h                            |    2 +
 include/net/cfg80211.h                             |   33 +-
 include/net/mac80211.h                             |   60 +
 net/bridge/br_if.c                                 |    2 +-
 net/bridge/br_netlink.c                            |    2 +
 net/bridge/br_private.h                            |    1 +
 net/bridge/br_private_stp.h                        |    3 +-
 net/bridge/br_stp.c                                |   31 +-
 net/bridge/br_stp_bpdu.c                           |   15 +-
 net/bridge/br_stp_if.c                             |    3 +
 net/bridge/br_stp_timer.c                          |    1 +
 net/core/link_watch.c                              |    2 +-
 net/ipv4/gre.c                                     |   21 +-
 net/ipv4/ipmr.c                                    |    2 +-
 net/ipv4/route.c                                   |    2 +-
 net/mac80211/agg-rx.c                              |   10 +-
 net/mac80211/cfg.c                                 |    4 +
 net/mac80211/driver-ops.h                          |   31 +
 net/mac80211/driver-trace.h                        |   43 +
 net/mac80211/ieee80211_i.h                         |    7 +-
 net/mac80211/key.c                                 |    2 +-
 net/mac80211/mlme.c                                |   30 +-
 net/mac80211/pm.c                                  |    3 +
 net/mac80211/scan.c                                |    6 +-
 net/mac80211/tkip.c                                |   11 +
 net/mac80211/util.c                                |   71 +-
 net/mac80211/work.c                                |   28 +-
 net/wireless/core.c                                |    7 +-
 net/wireless/core.h                                |    4 +
 net/wireless/nl80211.c                             |  109 ++-
 net/wireless/scan.c                                |    4 +
 net/wireless/util.c                                |   38 +
 217 files changed, 8010 insertions(+), 6814 deletions(-)
 rename drivers/net/bna/{bfa_sm.h => bfa_cs.h} (60%)
 delete mode 100644 drivers/net/bna/bfa_wc.h
 delete mode 100644 drivers/net/wireless/iwlwifi/iwl-agn-hcmd.c
 delete mode 100644 drivers/net/wireless/iwlwifi/iwl-agn-ict.c
 rename drivers/net/wireless/iwlwifi/{iwl-pci.h => iwl-bus.h} (61%)
 delete mode 100644 drivers/net/wireless/iwlwifi/iwl-hcmd.c
 create mode 100644 drivers/net/wireless/iwlwifi/iwl-trans-int-pcie.h
 create mode 100644 drivers/net/wireless/iwlwifi/iwl-trans-rx-pcie.c
 rename drivers/net/wireless/iwlwifi/{iwl-tx.c => iwl-trans-tx-pcie.c} (53%)

^ permalink raw reply

* Re: [PATCH] iwlagn: wrap suspend/resume definitions in CONFIG_PM block
From: John W. Linville @ 2011-07-24 20:39 UTC (permalink / raw)
  To: David Miller
  Cc: johannes.berg, wey-yi.w.guy, linux-wireless, netdev, linux-kernel
In-Reply-To: <20110724.130840.1093555047179460794.davem@davemloft.net>

On Sun, Jul 24, 2011 at 01:08:40PM -0700, David Miller wrote:
> From: "John W. Linville" <linville@tuxdriver.com>
> Date: Sun, 24 Jul 2011 15:19:10 -0400
> 
> > drivers/net/wireless/iwlwifi/iwl-agn.c:3464: error: unknown field 'suspend' specified in initializer
> > drivers/net/wireless/iwlwifi/iwl-agn.c:3464: warning: initialization from incompatible pointer type
> > drivers/net/wireless/iwlwifi/iwl-agn.c:3465: error: unknown field 'resume' specified in initializer
> > drivers/net/wireless/iwlwifi/iwl-agn.c:3465: warning: initialization from incompatible pointer type
> > 
> > This was caused by commit c8ac61cf ("iwlagn: implement WoWLAN").
> > 
> > Signed-off-by: John W. Linville <linville@tuxdriver.com>
> 
> Since I already minimally fixed up my build locally last night I know
> that your patch leads to a set of warnings because the methods whose
> hookup are now commented out become completely unused and they are all
> marked "static".  And recursively functions that those methods use
> become unused too.
> 
> Did you turn off CONFIG_PM and test the build of this file to see
> what the compiler actually does with it?
> 
> I'm checking in the following, but I expect much better from you John.

Sorry, Dave.  I confess that I was hoping for a quick fix on a Sunday afternoon. :-)

Thanks for making it better!

John
-- 
John W. Linville		Someday the world will need a hero, and you
linville@tuxdriver.com			might be all we have.  Be ready.

^ permalink raw reply

* LOAN UPDATE Email:fastwayloanlender@hotmail.com
From: Mary C Kuhns @ 2011-07-24 20:33 UTC (permalink / raw)


I am Patrick Fisher of the Fast Way Finance Company NIGERIA a Money 

Lending Firm for real estate and any kind of business financing. We 

offer Loan to individuals     person(s), Firms and cooperate bodies 

at 3% interest    rate per annum. The Minimum amount you can borrow 

is $2,000.00 to $700.000,000.00 US Dollars.

All replies should be forwarded to the Company's
E-mails:fastwayloanlender@hotmail.com
Contact Name: Mr Patrick Fisher 

We are certified, trustworthy, reliable, efficient,
Fast and dynamic. A trial will convince you.....    Provide us with 

the
following:

* Name Of Applicant:.......
* Address:.................
* Country:.................
* Phone Number:............
* Amount Requested: .......
* Loan Duration/years:.....
* Occupation...............
* Have you applied for a Loan ONLINE..

In acknowledgment to this mail, we can start with the  processing of 

your
loan.
  
Contact us for more information via
Email:fastwayloanlender@hotmail.com

Mr.Patrick Fisher 
Managing Director.

^ permalink raw reply

* [PATCH] Do not leave router anycast address for /127 prefixes.
From: yoshfuji @ 2011-07-24 21:44 UTC (permalink / raw)
  To: netdev; +Cc: davem, YOSHIFUJI Hideaki, Bjørn Mork, Brian Haley

From: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>

Original commit 2bda8a0c8af... "Disable router anycast
address for /127 prefixes" says:

|   No need for matching code in addrconf_leave_anycast() as it
|   will silently ignore any attempt to leave an unknown anycast
|   address.

After analysis, because 1) we may add two or more prefixes on the
same interface, or 2)user may have manually joined that anycast,
we may hit chances to have anycast address which as if we had
generated one by /127 prefix and we should not leave from subnet-
router anycast address unconditionally.

CC: Bjørn Mork <bjorn@mork.no>
CC: Brian Haley <brian.haley@hp.com>
Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
---
 net/ipv6/addrconf.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
index a06c53c..a55500c 100644
--- a/net/ipv6/addrconf.c
+++ b/net/ipv6/addrconf.c
@@ -1481,6 +1481,8 @@ static void addrconf_join_anycast(struct inet6_ifaddr *ifp)
 static void addrconf_leave_anycast(struct inet6_ifaddr *ifp)
 {
 	struct in6_addr addr;
+	if (ifp->prefix_len == 127) /* RFC 6164 */
+		return;
 	ipv6_addr_prefix(&addr, &ifp->addr, ifp->prefix_len);
 	if (ipv6_addr_any(&addr))
 		return;
-- 
1.7.0.4


^ permalink raw reply related

* Re: Linux Kernel | Intel Driver Bug - please update
From: Jeff Kirsher @ 2011-07-24 22:47 UTC (permalink / raw)
  To: Nicolás Sigal | LocalHost Soluciones Innovadoras
  Cc: kristoffer@gaisler.com, Brandeburg, Jesse, Allan, Bruce W,
	Ronciak, John, support, netdev
In-Reply-To: <0BE7A0BD7DFE4537AA0C03E333326E52@NOTENIKO>

[-- Attachment #1: Type: text/plain, Size: 2072 bytes --]

On Sun, 2011-07-24 at 13:28 -0700, Nicolás Sigal | LocalHost Soluciones
Innovadoras wrote:
> Please, can you update the e1000e driver of the kernel to v1.4.4?
>  
> http://downloadcenter.intel.com/Detail_Desc.aspx?agr=Y&ProdId=3299&DwnldID=15817&ProductFamily=Componentes+Ethernet&ProductLine=Controladores+Ethernet&ProductProduct=Controlador+Intel%C2%AE+82579+Gigabit+Ethernet&DownloadType=Controladoresspa
>  
> This version have an important bug fixed:
> * 82579: Fix for Tx Hang on FTS ME Platform
> 
> And we have this problem in all of our servers with this NIC and ME
> on.
>  
> Debug:
>  
> Jul 24 14:23:27 [kernel] e1000e 0000:00:19.0: eth0: Detected Hardware
> Unit Hang:
> Jul 24 14:23:27 [kernel]   TDH                  <0>
> Jul 24 14:23:27 [kernel]   TDT                  <16>
> Jul 24 14:23:27 [kernel]   next_to_use          <16>
> Jul 24 14:23:27 [kernel]   next_to_clean        <0>
> Jul 24 14:23:27 [kernel] buffer_info[next_to_clean]:
> Jul 24 14:23:27 [kernel]   time_stamp           <10282156f>
> Jul 24 14:23:27 [kernel]   next_to_watch        <0>
> Jul 24 14:23:27 [kernel]   jiffies              <102821aed>
> Jul 24 14:23:27 [kernel]   next_to_watch.status <0>
> Jul 24 14:23:27 [kernel] MAC Status             <80143>
> Jul 24 14:23:27 [kernel] PHY Status             <796d>
> Jul 24 14:23:27 [kernel] PHY 1000BASE-T Status  <0>
> Jul 24 14:23:27 [kernel] PHY Extended Status    <3000>
> Jul 24 14:23:27 [kernel] PCI Status             <10>
> Jul 24 14:23:28 [kernel] e1000e 0000:00:19.0: eth0: Reset adapter
> Jul 24 14:23:30 [kernel] e1000e: eth0 NIC Link is Up 100 Mbps Full
> Duplex, Flow Control: Rx/Tx
> Jul 24 14:23:30 [kernel] e1000e 0000:00:19.0: eth0: 10/100 speed:
> disabling TSO
>  


[removed ixgbe/igb Intel maintainers, and Linus from the email thread]
Added a more appropriate mailing list (netdev)

We currently have the kernel patches in review and testing to update the
e1000e driver to v1.4.4.  I should be able to push some, if not all of
the changes upstream later this week.

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 490 bytes --]

^ permalink raw reply

* Re: [PATCH] iwlagn: wrap suspend/resume definitions in CONFIG_PM block
From: Guy, Wey-Yi @ 2011-07-24 23:01 UTC (permalink / raw)
  To: John W. Linville
  Cc: David Miller, Berg, Johannes,
	linux-wireless-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
In-Reply-To: <20110724203956.GA29630-2XuSBdqkA4R54TAoqtyWWQ@public.gmane.org>

On Sun, 2011-07-24 at 13:39 -0700, John W. Linville wrote:
> On Sun, Jul 24, 2011 at 01:08:40PM -0700, David Miller wrote:
> > From: "John W. Linville" <linville-2XuSBdqkA4R54TAoqtyWWQ@public.gmane.org>
> > Date: Sun, 24 Jul 2011 15:19:10 -0400
> > 
> > > drivers/net/wireless/iwlwifi/iwl-agn.c:3464: error: unknown field 'suspend' specified in initializer
> > > drivers/net/wireless/iwlwifi/iwl-agn.c:3464: warning: initialization from incompatible pointer type
> > > drivers/net/wireless/iwlwifi/iwl-agn.c:3465: error: unknown field 'resume' specified in initializer
> > > drivers/net/wireless/iwlwifi/iwl-agn.c:3465: warning: initialization from incompatible pointer type
> > > 
> > > This was caused by commit c8ac61cf ("iwlagn: implement WoWLAN").
> > > 
> > > Signed-off-by: John W. Linville <linville-2XuSBdqkA4R54TAoqtyWWQ@public.gmane.org>
> > 
> > Since I already minimally fixed up my build locally last night I know
> > that your patch leads to a set of warnings because the methods whose
> > hookup are now commented out become completely unused and they are all
> > marked "static".  And recursively functions that those methods use
> > become unused too.
> > 
> > Did you turn off CONFIG_PM and test the build of this file to see
> > what the compiler actually does with it?
> > 
> > I'm checking in the following, but I expect much better from you John.
> 
> Sorry, Dave.  I confess that I was hoping for a quick fix on a Sunday afternoon. :-)
> 
> Thanks for making it better!
> 
> John
My mistake to not catch this to begin with, sorry for cause all the
trouble.

Wey

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

^ permalink raw reply

* Re: Linux Kernel | Intel Driver Bug - please update
From: Nicolás Sigal | LocalHost Soluciones Innovadoras @ 2011-07-24 23:21 UTC (permalink / raw)
  To: jeffrey.t.kirsher
  Cc: kristoffer, Brandeburg, Jesse, Allan, Bruce W, Ronciak, John,
	netdev
In-Reply-To: <1311547638.2835.72.camel@jtkirshe-mobl>

really really thanks Jeff!

we are fighting to this problem for a long time with the intel executive 
series motherboards with amt that are failing for this bug in the driver..

Regards;

.................................................
Nicolás Sigal
CEO :: LocalHost Soluciones Innovadoras
Mendoza 2917 :: C1428DKY
Ciudad Autónoma de Buenos Aires :: Argentina
Tel/Fax: 0810 55 LOCALHOST :: (011) 4784.6993
http://www.localhost.net.ar/
nicolas.sigal@localhost.net.ar



----- Original Message ----- 
From: "Jeff Kirsher" <jeffrey.t.kirsher@intel.com>
To: "Nicolás Sigal | LocalHost Soluciones Innovadoras" 
<nicolas.sigal@localhost.net.ar>
Cc: <kristoffer@gaisler.com>; "Brandeburg, Jesse" 
<jesse.brandeburg@intel.com>; "Allan, Bruce W" <bruce.w.allan@intel.com>; 
"Ronciak, John" <john.ronciak@intel.com>; <support@localhost.net.ar>; 
"netdev" <netdev@vger.kernel.org>
Sent: Sunday, July 24, 2011 7:47 PM
Subject: Re: Linux Kernel | Intel Driver Bug - please update



^ permalink raw reply

* [PATCH 1/1] IPv4: Send gratuitous ARP for secondary IP addresses also
From: Zoltan, Kiss @ 2011-07-24 23:09 UTC (permalink / raw)
  To: David S. Miller, Alexey Kuznetsov, Pekka Savola, James Morris,
	Hideaki YOSHIFUJI
  Cc: linux-kernel, Zoltan Kiss

From: Zoltan Kiss <schaman@sch.bme.hu>

If a device event generates gratuitous ARP messages, only primary
address is used for sending. This patch iterates through the whole
list. Tested with 2 IP addresses configuration on bonding interface.

Signed-off-by: Zoltan Kiss <schaman@sch.bme.hu>
---
 net/ipv4/devinet.c |   16 ++++++++--------
 1 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/net/ipv4/devinet.c b/net/ipv4/devinet.c
index 37b3c18..bc19bd0 100644
--- a/net/ipv4/devinet.c
+++ b/net/ipv4/devinet.c
@@ -1134,15 +1134,15 @@ static void inetdev_send_gratuitous_arp(struct net_device *dev,
 					struct in_device *in_dev)
 
 {
-	struct in_ifaddr *ifa = in_dev->ifa_list;
-
-	if (!ifa)
-		return;
+	struct in_ifaddr *ifa;
 
-	arp_send(ARPOP_REQUEST, ETH_P_ARP,
-		 ifa->ifa_local, dev,
-		 ifa->ifa_local, NULL,
-		 dev->dev_addr, NULL);
+	for (ifa = in_dev->ifa_list; ifa;
+	     ifa = ifa->ifa_next) {
+		arp_send(ARPOP_REQUEST, ETH_P_ARP,
+			 ifa->ifa_local, dev,
+			 ifa->ifa_local, NULL,
+			 dev->dev_addr, NULL);
+	}
 }
 
 /* Called only under RTNL semaphore */
-- 
1.7.4.1


^ permalink raw reply related


This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox