diff options
author | Florian Fainelli <florian@openwrt.org> | 2011-02-20 19:59:25 +0000 |
---|---|---|
committer | Florian Fainelli <florian@openwrt.org> | 2011-02-20 19:59:25 +0000 |
commit | 8d7ca65dab585df56a8bbb69a48d42fb63104e1c (patch) | |
tree | 8102341d85c5682ec03c411c94c49f510a4025b3 | |
parent | 94a22b91fc2acb3d28882c4660d0a7505a9b5d2e (diff) | |
download | upstream-8d7ca65dab585df56a8bbb69a48d42fb63104e1c.tar.gz upstream-8d7ca65dab585df56a8bbb69a48d42fb63104e1c.tar.bz2 upstream-8d7ca65dab585df56a8bbb69a48d42fb63104e1c.zip |
add two solos-releated patches from Philip Prindeville
SVN-Revision: 25630
6 files changed, 75 insertions, 3 deletions
diff --git a/target/linux/generic/patches-2.6.35/280-solos_dont_null_deref.patch b/target/linux/generic/patches-2.6.35/280-solos_dont_null_deref.patch new file mode 100644 index 0000000000..ae609573ee --- /dev/null +++ b/target/linux/generic/patches-2.6.35/280-solos_dont_null_deref.patch @@ -0,0 +1,14 @@ +--- a/drivers/atm/solos-pci.c ++++ b/drivers/atm/solos-pci.c +@@ -864,8 +864,9 @@ static int popen(struct atm_vcc *vcc) + } + + skb = alloc_skb(sizeof(*header), GFP_ATOMIC); +- if (!skb && net_ratelimit()) { +- dev_warn(&card->dev->dev, "Failed to allocate sk_buff in popen()\n"); ++ if (!skb) { ++ if (net_ratelimit()) ++ dev_warn(&card->dev->dev, "Failed to allocate sk_buff in popen()\n"); + return -ENOMEM; + } + header = (void *)skb_put(skb, sizeof(*header)); diff --git a/target/linux/generic/patches-2.6.36/280-solos_dont_null_deref.patch b/target/linux/generic/patches-2.6.36/280-solos_dont_null_deref.patch new file mode 100644 index 0000000000..13595725ca --- /dev/null +++ b/target/linux/generic/patches-2.6.36/280-solos_dont_null_deref.patch @@ -0,0 +1,14 @@ +--- a/drivers/atm/solos-pci.c ++++ b/drivers/atm/solos-pci.c +@@ -866,8 +866,9 @@ static int popen(struct atm_vcc *vcc) + } + + skb = alloc_skb(sizeof(*header), GFP_ATOMIC); +- if (!skb && net_ratelimit()) { +- dev_warn(&card->dev->dev, "Failed to allocate sk_buff in popen()\n"); ++ if (!skb) { ++ if (net_ratelimit()) ++ dev_warn(&card->dev->dev, "Failed to allocate sk_buff in popen()\n"); + return -ENOMEM; + } + header = (void *)skb_put(skb, sizeof(*header)); diff --git a/target/linux/generic/patches-2.6.37/280-solos_dont_null_deref.patch b/target/linux/generic/patches-2.6.37/280-solos_dont_null_deref.patch new file mode 100644 index 0000000000..13595725ca --- /dev/null +++ b/target/linux/generic/patches-2.6.37/280-solos_dont_null_deref.patch @@ -0,0 +1,14 @@ +--- a/drivers/atm/solos-pci.c ++++ b/drivers/atm/solos-pci.c +@@ -866,8 +866,9 @@ static int popen(struct atm_vcc *vcc) + } + + skb = alloc_skb(sizeof(*header), GFP_ATOMIC); +- if (!skb && net_ratelimit()) { +- dev_warn(&card->dev->dev, "Failed to allocate sk_buff in popen()\n"); ++ if (!skb) { ++ if (net_ratelimit()) ++ dev_warn(&card->dev->dev, "Failed to allocate sk_buff in popen()\n"); + return -ENOMEM; + } + header = (void *)skb_put(skb, sizeof(*header)); diff --git a/target/linux/generic/patches-2.6.37/281-solos_uniform_vpi_vci.patch b/target/linux/generic/patches-2.6.37/281-solos_uniform_vpi_vci.patch new file mode 100644 index 0000000000..2071ac4b80 --- /dev/null +++ b/target/linux/generic/patches-2.6.37/281-solos_uniform_vpi_vci.patch @@ -0,0 +1,16 @@ +--- /dev/null ++++ b/linux/generic/patches-2.6.37/281-solos_vpi_order.patch +@@ -0,0 +1,13 @@ ++--- a/drivers/atm/solos-pci.c 2010-12-24 01:07:09.000000000 -0700 +++++ b/drivers/atm/solos-pci.c 2010-12-24 14:18:45.000000000 -0700 ++@@ -734,8 +734,8 @@ void solos_bh(unsigned long card_arg) ++ le16_to_cpu(header->vci)); ++ if (!vcc) { ++ if (net_ratelimit()) ++- dev_warn(&card->dev->dev, "Received packet for unknown VCI.VPI %d.%d on port %d\n", ++- le16_to_cpu(header->vci), le16_to_cpu(header->vpi), +++ dev_warn(&card->dev->dev, "Received packet for unknown VPI.VCI %d.%d on port %d\n", +++ le16_to_cpu(header->vpi), le16_to_cpu(header->vci), ++ port); ++ continue; ++ } diff --git a/target/linux/generic/patches-2.6.38/280-solos_dont_null_deref.patch b/target/linux/generic/patches-2.6.38/280-solos_dont_null_deref.patch new file mode 100644 index 0000000000..13595725ca --- /dev/null +++ b/target/linux/generic/patches-2.6.38/280-solos_dont_null_deref.patch @@ -0,0 +1,14 @@ +--- a/drivers/atm/solos-pci.c ++++ b/drivers/atm/solos-pci.c +@@ -866,8 +866,9 @@ static int popen(struct atm_vcc *vcc) + } + + skb = alloc_skb(sizeof(*header), GFP_ATOMIC); +- if (!skb && net_ratelimit()) { +- dev_warn(&card->dev->dev, "Failed to allocate sk_buff in popen()\n"); ++ if (!skb) { ++ if (net_ratelimit()) ++ dev_warn(&card->dev->dev, "Failed to allocate sk_buff in popen()\n"); + return -ENOMEM; + } + header = (void *)skb_put(skb, sizeof(*header)); diff --git a/target/linux/x86/patches-2.6.35/110-net5501_modstuff.patch b/target/linux/x86/patches-2.6.35/110-net5501_modstuff.patch index cd53952249..ae41e548ec 100644 --- a/target/linux/x86/patches-2.6.35/110-net5501_modstuff.patch +++ b/target/linux/x86/patches-2.6.35/110-net5501_modstuff.patch @@ -1,6 +1,6 @@ ---- a/drivers/leds/leds-net5501.c.orig 2010-09-28 19:09:08.000000000 -0600 -+++ b/drivers/leds/leds-net5501.c 2010-11-05 14:23:57.000000000 -0600 -@@ -92,3 +92,8 @@ +--- a/drivers/leds/leds-net5501.c ++++ b/drivers/leds/leds-net5501.c +@@ -92,3 +92,8 @@ unmap: } arch_initcall(soekris_init); |