>From 56679a8f7e19c86de0824d9f972f935eba440d32 Mon Sep 17 00:00:00 2001
From: Ken Mills <[email protected]>
Date: Wed, 10 Nov 2010 11:54:58 -0800
Subject: [PATCH] n_gsm: Fix message length handling

If the mux is configured with a large mru/mtu, the existing code gets the
byte ordering wrong for the header.

Signed-off-by: Ken Mills <[email protected]>
---
 drivers/char/n_gsm.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/char/n_gsm.c b/drivers/char/n_gsm.c
index c60955e..dbf2d3f 100644
--- a/drivers/char/n_gsm.c
+++ b/drivers/char/n_gsm.c
@@ -724,8 +724,8 @@ static void __gsm_data_queue(struct gsm_dlci *dlci, struct 
gsm_msg *msg)
                if (msg->len < 128)
                        *--dp = (msg->len << 1) | EA;
                else {
-                       *--dp = ((msg->len & 127) << 1) | EA;
-                       *--dp = (msg->len >> 6) & 0xfe;
+                       *--dp = (msg->len >> 7);
+                       *--dp = (msg->len & 127) << 1;
                }
        }
 
-- 
1.7.0.4
_______________________________________________
MeeGo-kernel mailing list
[email protected]
http://lists.meego.com/listinfo/meego-kernel

Reply via email to