summaryrefslogtreecommitdiffstats
path: root/target
diff options
context:
space:
mode:
authorflorian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73>2011-02-20 19:59:25 +0000
committerflorian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73>2011-02-20 19:59:25 +0000
commit9de1efd6be9b09bee9b2a5428dafb615ee25936f (patch)
tree19e63070e5c62cd2c6dd480811533e44d5b9021f /target
parent57b9051544b31cdb7f33c8a36ba4ed1d719f8935 (diff)
[kernel] add two solos-releated patches from Philip Prindeville
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@25630 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target')
-rw-r--r--target/linux/generic/patches-2.6.35/280-solos_dont_null_deref.patch14
-rw-r--r--target/linux/generic/patches-2.6.36/280-solos_dont_null_deref.patch14
-rw-r--r--target/linux/generic/patches-2.6.37/280-solos_dont_null_deref.patch14
-rw-r--r--target/linux/generic/patches-2.6.37/281-solos_uniform_vpi_vci.patch16
-rw-r--r--target/linux/generic/patches-2.6.38/280-solos_dont_null_deref.patch14
-rw-r--r--target/linux/x86/patches-2.6.35/110-net5501_modstuff.patch6
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 000000000..ae609573e
--- /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 000000000..13595725c
--- /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 000000000..13595725c
--- /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 000000000..2071ac4b8
--- /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 000000000..13595725c
--- /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 cd5395224..ae41e548e 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);