All of lore.kernel.org
 help / color / mirror / Atom feed
* [patch 2.6.30] WiMAX pull request
@ 2009-05-15 19:07 Inaky Perez-Gonzalez
  2009-05-15 19:07 ` [patch 2.6.30] wimax/i2400m: fix device crash: fix optimization in _roq_queue_update_ws Inaky Perez-Gonzalez
  2009-05-18  4:14 ` [patch 2.6.30] WiMAX pull request David Miller
  0 siblings, 2 replies; 5+ messages in thread
From: Inaky Perez-Gonzalez @ 2009-05-15 19:07 UTC (permalink / raw)
  To: netdev, wimax

This patch fixes a device crash due to a bad optimization. It won't
crash the system, but just render the WiMAX device unusable on bad
radio link conditions. 

The following changes since commit e1cc1c578055d20d36e084e324001fb5e0355a71:
  David S. Miller (1):
        Merge branch 'net-fixes' of git://git.kernel.org/.../chris/linux-2.6

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/inaky/wimax.git linux-2.6.30.y

Patches follow for reviewing convenience.

Inaky Perez-Gonzalez (1):
      wimax/i2400m: fix device crash: fix optimization in _roq_queue_update_ws

 drivers/net/wimax/i2400m/rx.c |    5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [patch 2.6.30] wimax/i2400m: fix device crash: fix optimization in _roq_queue_update_ws
  2009-05-15 19:07 [patch 2.6.30] WiMAX pull request Inaky Perez-Gonzalez
@ 2009-05-15 19:07 ` Inaky Perez-Gonzalez
  2009-05-18  4:14 ` [patch 2.6.30] WiMAX pull request David Miller
  1 sibling, 0 replies; 5+ messages in thread
From: Inaky Perez-Gonzalez @ 2009-05-15 19:07 UTC (permalink / raw)
  To: netdev, wimax

When the i2400m receives data and the device indicates there has to be
reordering, we keep an sliding window implementation to sort the
packets before sending them to the network stack.

One of the "operations" that the device indicates is "queue a packet
and update the window start". When the queue is empty, this is
equivalent to "deliver the packet and update the window start".

That case was optimized in i2400m_roq_queue_update_ws() so that we
would not pointlessly queue and dequeue a packet. However, when the
optimization was active, it wasn't updating the window start. That
caused the reorder management code to get confused later on with what
seemed to be wrong reorder requests from the device.

Thus the fix implemented is to do the right thing and update the
window start in both cases, when the queue is empty (and the
optimization is done) and when not.

Signed-off-by: Inaky Perez-Gonzalez <inaky@linux.intel.com>
---
 drivers/net/wimax/i2400m/rx.c |    5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/drivers/net/wimax/i2400m/rx.c b/drivers/net/wimax/i2400m/rx.c
index 02419bf..f9fc389 100644
--- a/drivers/net/wimax/i2400m/rx.c
+++ b/drivers/net/wimax/i2400m/rx.c
@@ -819,10 +819,9 @@ void i2400m_roq_queue_update_ws(struct i2400m *i2400m, struct i2400m_roq *roq,
 			roq_data = (struct i2400m_roq_data *) &skb->cb;
 			i2400m_net_erx(i2400m, skb, roq_data->cs);
 		}
-		else {
+		else
 			__i2400m_roq_queue(i2400m, roq, skb, sn, nsn);
-			__i2400m_roq_update_ws(i2400m, roq, sn + 1);
-		}
+		__i2400m_roq_update_ws(i2400m, roq, sn + 1);
 		i2400m_roq_log_add(i2400m, roq, I2400M_RO_TYPE_PACKET_WS,
 				   old_ws, len, sn, nsn, roq->ws);
 	}
-- 
1.6.2.3

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [patch 2.6.30] WiMAX pull request
  2009-05-15 19:07 [patch 2.6.30] WiMAX pull request Inaky Perez-Gonzalez
  2009-05-15 19:07 ` [patch 2.6.30] wimax/i2400m: fix device crash: fix optimization in _roq_queue_update_ws Inaky Perez-Gonzalez
@ 2009-05-18  4:14 ` David Miller
  1 sibling, 0 replies; 5+ messages in thread
From: David Miller @ 2009-05-18  4:14 UTC (permalink / raw)
  To: inaky; +Cc: netdev, wimax

From: Inaky Perez-Gonzalez <inaky@linux.intel.com>
Date: Fri, 15 May 2009 12:07:32 -0700

> This patch fixes a device crash due to a bad optimization. It won't
> crash the system, but just render the WiMAX device unusable on bad
> radio link conditions. 
> 
> The following changes since commit e1cc1c578055d20d36e084e324001fb5e0355a71:
>   David S. Miller (1):
>         Merge branch 'net-fixes' of git://git.kernel.org/.../chris/linux-2.6
> 
> are available in the git repository at:
> 
>   git://git.kernel.org/pub/scm/linux/kernel/git/inaky/wimax.git linux-2.6.30.y
> 
> Patches follow for reviewing convenience.

Pulled, thanks!

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [patch 2.6.30] WiMAX pull request
@ 2009-05-22  8:29 Inaky Perez-Gonzalez
  2009-05-26  5:56 ` David Miller
  0 siblings, 1 reply; 5+ messages in thread
From: Inaky Perez-Gonzalez @ 2009-05-22  8:29 UTC (permalink / raw)
  To: netdev, wimax

This pull contains a single patch (bigger than I'd like) that fixes a
device reset, breaking the connection.

This caused by asking the device to auto-suspend (go into USB power
saving) in a bad moment. System suspend/hibernate are not affected.

-- 

The following changes since commit 4f72427998b105392e60bae7a6798a0c96fe4f0a:
  Jean-Mickael Guerin (1):
        IPv6: set RTPROT_KERNEL to initial route

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/inaky/wimax.git linux-2.6.30.y

Patches follow for reviewing convenience.

Inaky Perez-Gonzalez (1):
      wimax/i2400m: usb: fix device reset on autosuspend while not yet idle

 drivers/net/wimax/i2400m/usb.c |   35 ++++++++++++++++++++++++++++++-----
 1 files changed, 30 insertions(+), 5 deletions(-)

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [patch 2.6.30] WiMAX pull request
  2009-05-22  8:29 Inaky Perez-Gonzalez
@ 2009-05-26  5:56 ` David Miller
  0 siblings, 0 replies; 5+ messages in thread
From: David Miller @ 2009-05-26  5:56 UTC (permalink / raw)
  To: inaky; +Cc: netdev, wimax

From: Inaky Perez-Gonzalez <inaky@linux.intel.com>
Date: Fri, 22 May 2009 01:29:40 -0700

> This pull contains a single patch (bigger than I'd like) that fixes a
> device reset, breaking the connection.
> 
> This caused by asking the device to auto-suspend (go into USB power
> saving) in a bad moment. System suspend/hibernate are not affected.

Pulled, thanks.

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2009-05-26  5:56 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-05-15 19:07 [patch 2.6.30] WiMAX pull request Inaky Perez-Gonzalez
2009-05-15 19:07 ` [patch 2.6.30] wimax/i2400m: fix device crash: fix optimization in _roq_queue_update_ws Inaky Perez-Gonzalez
2009-05-18  4:14 ` [patch 2.6.30] WiMAX pull request David Miller
  -- strict thread matches above, loose matches on Subject: below --
2009-05-22  8:29 Inaky Perez-Gonzalez
2009-05-26  5:56 ` David Miller

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.