* [patch 05/11] tcp: BIC max increment too large [not found] ` <20051109183614.GA3670@kroah.com> @ 2005-11-09 18:36 ` Greg KH 2005-11-09 18:36 ` [patch 06/11] airo.c/airo_cs.c: correct prototypes Greg KH 2005-11-09 18:37 ` [patch 07/11] NET: Fix zero-size datagram reception Greg KH 2 siblings, 0 replies; 6+ messages in thread From: Greg KH @ 2005-11-09 18:36 UTC (permalink / raw) To: linux-kernel, stable, Arnaldo Carvalho de Melo, David S. Miller, netdev Cc: Justin Forbes, Zwane Mwaikambo, Theodore Ts'o, Randy Dunlap, Chuck Wolber, torvalds, akpm, alan [-- Attachment #1: tcp-bic-max-increment-too-large.patch --] [-- Type: text/plain, Size: 984 bytes --] From: Stephen Hemminger <shemminger@osdl.org> The max growth of BIC TCP is too large. Original code was based on BIC 1.0 and the default there was 32. Later code (2.6.13) included compensation for delayed acks, and should have reduced the default value to 16; since normally TCP gets one ack for every two packets sent. The current value of 32 makes BIC too aggressive and unfair to other flows. Submitted-by: Injong Rhee <rhee@eos.ncsu.edu> Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> --- net/ipv4/tcp_bic.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- linux-2.6.14.1.orig/net/ipv4/tcp_bic.c +++ linux-2.6.14.1/net/ipv4/tcp_bic.c @@ -27,7 +27,7 @@ */ static int fast_convergence = 1; -static int max_increment = 32; +static int max_increment = 16; static int low_window = 14; static int beta = 819; /* = 819/1024 (BICTCP_BETA_SCALE) */ static int low_utilization_threshold = 153; -- ^ permalink raw reply [flat|nested] 6+ messages in thread
* [patch 06/11] airo.c/airo_cs.c: correct prototypes [not found] ` <20051109183614.GA3670@kroah.com> 2005-11-09 18:36 ` [patch 05/11] tcp: BIC max increment too large Greg KH @ 2005-11-09 18:36 ` Greg KH 2005-11-09 18:37 ` [patch 07/11] NET: Fix zero-size datagram reception Greg KH 2 siblings, 0 replies; 6+ messages in thread From: Greg KH @ 2005-11-09 18:36 UTC (permalink / raw) To: linux-kernel, stable Cc: Justin Forbes, Zwane Mwaikambo, Theodore Ts'o, Randy Dunlap, Chuck Wolber, torvalds, akpm, alan, jgarzik, bunk, netdev, Benjamin Reed [-- Attachment #1: airo.c-airo_cs.c-correct-prototypes.patch --] [-- Type: text/plain, Size: 2139 bytes --] From: Adrian Bunk <bunk@stusta.de> This patch creates a file airo.h containing prototypes of the global functions in airo.c used by airo_cs.c . If you got strange problems with either airo_cs devices or in any other completely unrelated part of the kernel shortly or long after a airo_cs device was detected by the kernel, this might have been caused by the fact that caller and callee disagreed regarding the size of the first argument to init_airo_card()... Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> --- drivers/net/wireless/airo.c | 2 ++ drivers/net/wireless/airo.h | 9 +++++++++ drivers/net/wireless/airo_cs.c | 6 ++---- 3 files changed, 13 insertions(+), 4 deletions(-) --- /dev/null +++ linux-2.6.14.1/drivers/net/wireless/airo.h @@ -0,0 +1,9 @@ +#ifndef _AIRO_H_ +#define _AIRO_H_ + +struct net_device *init_airo_card(unsigned short irq, int port, int is_pcmcia, + struct device *dmdev); +int reset_airo_card(struct net_device *dev); +void stop_airo_card(struct net_device *dev, int freeres); + +#endif /* _AIRO_H_ */ --- linux-2.6.14.1.orig/drivers/net/wireless/airo.c +++ linux-2.6.14.1/drivers/net/wireless/airo.c @@ -46,6 +46,8 @@ #include <linux/pci.h> #include <asm/uaccess.h> +#include "airo.h" + #ifdef CONFIG_PCI static struct pci_device_id card_ids[] = { { 0x14b9, 1, PCI_ANY_ID, PCI_ANY_ID, }, --- linux-2.6.14.1.orig/drivers/net/wireless/airo_cs.c +++ linux-2.6.14.1/drivers/net/wireless/airo_cs.c @@ -42,6 +42,8 @@ #include <asm/io.h> #include <asm/system.h> +#include "airo.h" + /* All the PCMCIA modules use PCMCIA_DEBUG to control debugging. If you do not define PCMCIA_DEBUG at all, all the debug code will be @@ -78,10 +80,6 @@ MODULE_SUPPORTED_DEVICE("Aironet 4500, 4 event handler. */ -struct net_device *init_airo_card( int, int, int, struct device * ); -void stop_airo_card( struct net_device *, int ); -int reset_airo_card( struct net_device * ); - static void airo_config(dev_link_t *link); static void airo_release(dev_link_t *link); static int airo_event(event_t event, int priority, -- ^ permalink raw reply [flat|nested] 6+ messages in thread
* [patch 07/11] NET: Fix zero-size datagram reception [not found] ` <20051109183614.GA3670@kroah.com> 2005-11-09 18:36 ` [patch 05/11] tcp: BIC max increment too large Greg KH 2005-11-09 18:36 ` [patch 06/11] airo.c/airo_cs.c: correct prototypes Greg KH @ 2005-11-09 18:37 ` Greg KH 2 siblings, 0 replies; 6+ messages in thread From: Greg KH @ 2005-11-09 18:37 UTC (permalink / raw) To: linux-kernel, stable, Arnaldo Carvalho de Melo, netdev Cc: Justin Forbes, Zwane Mwaikambo, Theodore Ts'o, Randy Dunlap, Chuck Wolber, torvalds, akpm, alan, herbert, phillips [-- Attachment #1: fix-zero-size-datagram-reception.patch --] [-- Type: text/plain, Size: 657 bytes --] From: Herbert Xu <herbert@gondor.apana.org.au> The recent rewrite of skb_copy_datagram_iovec broke the reception of zero-size datagrams. This patch fixes it. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> --- net/core/datagram.c | 4 ++++ 1 file changed, 4 insertions(+) --- linux-2.6.14.1.orig/net/core/datagram.c +++ linux-2.6.14.1/net/core/datagram.c @@ -213,6 +213,10 @@ int skb_copy_datagram_iovec(const struct { int i, err, fraglen, end = 0; struct sk_buff *next = skb_shinfo(skb)->frag_list; + + if (!len) + return 0; + next_skb: fraglen = skb_headlen(skb); i = -1; -- ^ permalink raw reply [flat|nested] 6+ messages in thread
[parent not found: <20051223222652.GA18252@kroah.com>]
* [patch 05/11] tcp: BIC max increment too large [not found] ` <20051223222652.GA18252@kroah.com> @ 2005-12-23 22:27 ` Greg KH 2005-12-23 22:27 ` [patch 06/11] airo.c/airo_cs.c: correct prototypes Greg KH 2005-12-23 22:27 ` [patch 07/11] NET: Fix zero-size datagram reception Greg KH 2 siblings, 0 replies; 6+ messages in thread From: Greg KH @ 2005-12-23 22:27 UTC (permalink / raw) To: linux-kernel, stable, Arnaldo Carvalho de Melo, David S. Miller, netdev Cc: Justin Forbes, Zwane Mwaikambo, Theodore Ts'o, Randy Dunlap, Chuck Wolber, torvalds, akpm, alan [-- Attachment #1: tcp-bic-max-increment-too-large.patch --] [-- Type: text/plain, Size: 984 bytes --] From: Stephen Hemminger <shemminger@osdl.org> The max growth of BIC TCP is too large. Original code was based on BIC 1.0 and the default there was 32. Later code (2.6.13) included compensation for delayed acks, and should have reduced the default value to 16; since normally TCP gets one ack for every two packets sent. The current value of 32 makes BIC too aggressive and unfair to other flows. Submitted-by: Injong Rhee <rhee@eos.ncsu.edu> Signed-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> --- net/ipv4/tcp_bic.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- linux-2.6.14.1.orig/net/ipv4/tcp_bic.c +++ linux-2.6.14.1/net/ipv4/tcp_bic.c @@ -27,7 +27,7 @@ */ static int fast_convergence = 1; -static int max_increment = 32; +static int max_increment = 16; static int low_window = 14; static int beta = 819; /* = 819/1024 (BICTCP_BETA_SCALE) */ static int low_utilization_threshold = 153; -- ^ permalink raw reply [flat|nested] 6+ messages in thread
* [patch 06/11] airo.c/airo_cs.c: correct prototypes [not found] ` <20051223222652.GA18252@kroah.com> 2005-12-23 22:27 ` [patch 05/11] tcp: BIC max increment too large Greg KH @ 2005-12-23 22:27 ` Greg KH 2005-12-23 22:27 ` [patch 07/11] NET: Fix zero-size datagram reception Greg KH 2 siblings, 0 replies; 6+ messages in thread From: Greg KH @ 2005-12-23 22:27 UTC (permalink / raw) To: linux-kernel, stable Cc: Justin Forbes, Zwane Mwaikambo, Theodore Ts'o, Randy Dunlap, Chuck Wolber, torvalds, akpm, alan, jgarzik, bunk, netdev, Benjamin Reed [-- Attachment #1: airo.c-airo_cs.c-correct-prototypes.patch --] [-- Type: text/plain, Size: 2139 bytes --] From: Adrian Bunk <bunk@stusta.de> This patch creates a file airo.h containing prototypes of the global functions in airo.c used by airo_cs.c . If you got strange problems with either airo_cs devices or in any other completely unrelated part of the kernel shortly or long after a airo_cs device was detected by the kernel, this might have been caused by the fact that caller and callee disagreed regarding the size of the first argument to init_airo_card()... Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> --- drivers/net/wireless/airo.c | 2 ++ drivers/net/wireless/airo.h | 9 +++++++++ drivers/net/wireless/airo_cs.c | 6 ++---- 3 files changed, 13 insertions(+), 4 deletions(-) --- /dev/null +++ linux-2.6.14.1/drivers/net/wireless/airo.h @@ -0,0 +1,9 @@ +#ifndef _AIRO_H_ +#define _AIRO_H_ + +struct net_device *init_airo_card(unsigned short irq, int port, int is_pcmcia, + struct device *dmdev); +int reset_airo_card(struct net_device *dev); +void stop_airo_card(struct net_device *dev, int freeres); + +#endif /* _AIRO_H_ */ --- linux-2.6.14.1.orig/drivers/net/wireless/airo.c +++ linux-2.6.14.1/drivers/net/wireless/airo.c @@ -46,6 +46,8 @@ #include <linux/pci.h> #include <asm/uaccess.h> +#include "airo.h" + #ifdef CONFIG_PCI static struct pci_device_id card_ids[] = { { 0x14b9, 1, PCI_ANY_ID, PCI_ANY_ID, }, --- linux-2.6.14.1.orig/drivers/net/wireless/airo_cs.c +++ linux-2.6.14.1/drivers/net/wireless/airo_cs.c @@ -42,6 +42,8 @@ #include <asm/io.h> #include <asm/system.h> +#include "airo.h" + /* All the PCMCIA modules use PCMCIA_DEBUG to control debugging. If you do not define PCMCIA_DEBUG at all, all the debug code will be @@ -78,10 +80,6 @@ MODULE_SUPPORTED_DEVICE("Aironet 4500, 4 event handler. */ -struct net_device *init_airo_card( int, int, int, struct device * ); -void stop_airo_card( struct net_device *, int ); -int reset_airo_card( struct net_device * ); - static void airo_config(dev_link_t *link); static void airo_release(dev_link_t *link); static int airo_event(event_t event, int priority, -- ^ permalink raw reply [flat|nested] 6+ messages in thread
* [patch 07/11] NET: Fix zero-size datagram reception [not found] ` <20051223222652.GA18252@kroah.com> 2005-12-23 22:27 ` [patch 05/11] tcp: BIC max increment too large Greg KH 2005-12-23 22:27 ` [patch 06/11] airo.c/airo_cs.c: correct prototypes Greg KH @ 2005-12-23 22:27 ` Greg KH 2 siblings, 0 replies; 6+ messages in thread From: Greg KH @ 2005-12-23 22:27 UTC (permalink / raw) To: linux-kernel, stable, Arnaldo Carvalho de Melo, netdev Cc: Justin Forbes, Zwane Mwaikambo, Theodore Ts'o, Randy Dunlap, Chuck Wolber, torvalds, akpm, alan, herbert, phillips [-- Attachment #1: fix-zero-size-datagram-reception.patch --] [-- Type: text/plain, Size: 657 bytes --] From: Herbert Xu <herbert@gondor.apana.org.au> The recent rewrite of skb_copy_datagram_iovec broke the reception of zero-size datagrams. This patch fixes it. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> --- net/core/datagram.c | 4 ++++ 1 file changed, 4 insertions(+) --- linux-2.6.14.1.orig/net/core/datagram.c +++ linux-2.6.14.1/net/core/datagram.c @@ -213,6 +213,10 @@ int skb_copy_datagram_iovec(const struct { int i, err, fraglen, end = 0; struct sk_buff *next = skb_shinfo(skb)->frag_list; + + if (!len) + return 0; + next_skb: fraglen = skb_headlen(skb); i = -1; -- ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2005-12-23 22:27 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20051109182205.294803000@press.kroah.org>
[not found] ` <20051109183614.GA3670@kroah.com>
2005-11-09 18:36 ` [patch 05/11] tcp: BIC max increment too large Greg KH
2005-11-09 18:36 ` [patch 06/11] airo.c/airo_cs.c: correct prototypes Greg KH
2005-11-09 18:37 ` [patch 07/11] NET: Fix zero-size datagram reception Greg KH
[not found] ` <20051223222652.GA18252@kroah.com>
2005-12-23 22:27 ` [patch 05/11] tcp: BIC max increment too large Greg KH
2005-12-23 22:27 ` [patch 06/11] airo.c/airo_cs.c: correct prototypes Greg KH
2005-12-23 22:27 ` [patch 07/11] NET: Fix zero-size datagram reception Greg KH
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).