From 6a6b25130689f3ee5af8511f452116e3b807e3cd Mon Sep 17 00:00:00 2001 From: stephen hemminger Date: Mon, 20 Dec 2010 17:58:33 +0000 Subject: [PATCH] --- yaml --- r: 223759 b: refs/heads/master c: d39cd5e99a0ad88aba6793fb5e5f34e29cda6e6f h: refs/heads/master i: 223757: d652e95022fcbae6e016aed8f07bbc8ae3fe9013 223755: 79b443a7e4504dd687a690e6e0d7e6a19bbd489a 223751: b60702a76c80c91d6af13cd1f67859d8dda11fbf 223743: 63afd0d8de012fe33e9b9bfe9a7264d17a5abe23 v: v3 --- [refs] | 2 +- trunk/drivers/net/ppp_generic.c | 9 +++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index 0f541965d7ee..71be8437960e 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: c4711786986af0cce654f493426ee0a1055e4b17 +refs/heads/master: d39cd5e99a0ad88aba6793fb5e5f34e29cda6e6f diff --git a/trunk/drivers/net/ppp_generic.c b/trunk/drivers/net/ppp_generic.c index 39659976a1ac..89294b43c4a9 100644 --- a/trunk/drivers/net/ppp_generic.c +++ b/trunk/drivers/net/ppp_generic.c @@ -1285,6 +1285,11 @@ ppp_push(struct ppp *ppp) } #ifdef CONFIG_PPP_MULTILINK +static bool mp_protocol_compress __read_mostly = true; +module_param(mp_protocol_compress, bool, S_IRUGO | S_IWUSR); +MODULE_PARM_DESC(mp_protocol_compress, + "compress protocol id in multilink fragments"); + /* * Divide a packet to be transmitted into fragments and * send them out the individual links. @@ -1347,10 +1352,10 @@ static int ppp_mp_explode(struct ppp *ppp, struct sk_buff *skb) if (nfree == 0 || nfree < navail / 2) return 0; /* can't take now, leave it in xmit_pending */ - /* Do protocol field compression (XXX this should be optional) */ + /* Do protocol field compression */ p = skb->data; len = skb->len; - if (*p == 0) { + if (*p == 0 && mp_protocol_compress) { ++p; --len; }