]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
.25 patches added
authorGreg Kroah-Hartman <gregkh@suse.de>
Sat, 16 Aug 2008 23:53:33 +0000 (16:53 -0700)
committerGreg Kroah-Hartman <gregkh@suse.de>
Sat, 16 Aug 2008 23:53:33 +0000 (16:53 -0700)
queue-2.6.25/cifs-fix-compiler-warning-on-64-bit.patch [new file with mode: 0644]
queue-2.6.25/i2c-fix-null-pointer-dereference-in-i2c_new_probed_device.patch [new file with mode: 0644]
queue-2.6.25/netfilter-nf_nat_snmp_basic-fix-a-range-check-in-nat-for-snmp.patch [new file with mode: 0644]
queue-2.6.25/r8169-avoid-thrashing-pci-conf-space-above-rtl_giga_mac_ver_06.patch [new file with mode: 0644]
queue-2.6.25/radeon-misc-corrections.patch [new file with mode: 0644]
queue-2.6.25/series

diff --git a/queue-2.6.25/cifs-fix-compiler-warning-on-64-bit.patch b/queue-2.6.25/cifs-fix-compiler-warning-on-64-bit.patch
new file mode 100644 (file)
index 0000000..80ada00
--- /dev/null
@@ -0,0 +1,29 @@
+From 04e1e0cccade330ab3715ce59234f7e3b087e246 Mon Sep 17 00:00:00 2001
+From: Jan Beulich <jbeulich@novell.com>
+Date: Tue, 22 Jul 2008 13:04:18 +0000
+Subject: CIFS: Fix compiler warning on 64-bit
+Message-ID: <489B8E32.3030703@redhat.com>
+
+From: Jan Beulich <jbeulich@novell.com>
+
+commit 04e1e0cccade330ab3715ce59234f7e3b087e246 upstream.
+
+Signed-off-by: Steve French <sfrench@us.ibm.com>
+Cc: Eugene Teo <eteo@redhat.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ fs/cifs/asn1.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/fs/cifs/asn1.c
++++ b/fs/cifs/asn1.c
+@@ -400,7 +400,7 @@ asn1_oid_decode(struct asn1_ctx *ctx,
+       size = eoc - ctx->pointer + 1;
+       /* first subid actually encodes first two subids */
+-      if (size < 2 || size > ULONG_MAX/sizeof(unsigned long))
++      if (size < 2 || size > UINT_MAX/sizeof(unsigned long))
+               return 0;
+       *oid = kmalloc(size * sizeof(unsigned long), GFP_ATOMIC);
diff --git a/queue-2.6.25/i2c-fix-null-pointer-dereference-in-i2c_new_probed_device.patch b/queue-2.6.25/i2c-fix-null-pointer-dereference-in-i2c_new_probed_device.patch
new file mode 100644 (file)
index 0000000..a3b6bf3
--- /dev/null
@@ -0,0 +1,42 @@
+From stable-bounces@linux.kernel.org Tue Aug 12 02:34:13 2008
+From: Hans Verkuil <hverkuil@xs4all.nl>
+Date: Tue, 12 Aug 2008 10:50:29 +0200
+Subject: i2c: Fix NULL pointer dereference in i2c_new_probed_device
+To: stable@kernel.org
+Cc: Hans Verkuil <hverkuil@xs4all.nl>
+Message-ID: <20080812105029.3d156597@hyperion.delvare>
+
+
+From: Hans Verkuil <hverkuil@xs4all.nl>
+
+Already in Linus' tree:
+http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b25b791b13aaa336b56c4f9bd417ff126363f80b
+
+Fix a NULL pointer dereference that happened when calling
+i2c_new_probed_device on one of the addresses for which we use byte
+reads instead of quick write for detection purpose (that is: 0x30-0x37
+and 0x50-0x5f).
+
+Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
+Signed-off-by: Jean Delvare <khali@linux-fr.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/i2c/i2c-core.c |    4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+--- a/drivers/i2c/i2c-core.c
++++ b/drivers/i2c/i2c-core.c
+@@ -1173,9 +1173,11 @@ i2c_new_probed_device(struct i2c_adapter
+               if ((addr_list[i] & ~0x07) == 0x30
+                || (addr_list[i] & ~0x0f) == 0x50
+                || !i2c_check_functionality(adap, I2C_FUNC_SMBUS_QUICK)) {
++                      union i2c_smbus_data data;
++
+                       if (i2c_smbus_xfer(adap, addr_list[i], 0,
+                                          I2C_SMBUS_READ, 0,
+-                                         I2C_SMBUS_BYTE, NULL) >= 0)
++                                         I2C_SMBUS_BYTE, &data) >= 0)
+                               break;
+               } else {
+                       if (i2c_smbus_xfer(adap, addr_list[i], 0,
diff --git a/queue-2.6.25/netfilter-nf_nat_snmp_basic-fix-a-range-check-in-nat-for-snmp.patch b/queue-2.6.25/netfilter-nf_nat_snmp_basic-fix-a-range-check-in-nat-for-snmp.patch
new file mode 100644 (file)
index 0000000..aabbd7c
--- /dev/null
@@ -0,0 +1,36 @@
+From 252815b0cfe711001eff0327872209986b36d490 Mon Sep 17 00:00:00 2001
+From: David Howells <dhowells@redhat.com>
+Date: Wed, 9 Jul 2008 15:06:45 -0700
+Subject: netfilter: nf_nat_snmp_basic: fix a range check in NAT for SNMP
+Message-ID: <489B977A.2000506@redhat.com>
+
+From: David Howells <dhowells@redhat.com>
+
+commit 252815b0cfe711001eff0327872209986b36d490 upstream
+
+Fix a range check in netfilter IP NAT for SNMP to always use a big enough size
+variable that the compiler won't moan about comparing it to ULONG_MAX/8 on a
+64-bit platform.
+
+Signed-off-by: David Howells <dhowells@redhat.com>
+Signed-off-by: Patrick McHardy <kaber@trash.net>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+Cc: Eugene Teo <eteo@redhat.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ net/ipv4/netfilter/nf_nat_snmp_basic.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/net/ipv4/netfilter/nf_nat_snmp_basic.c
++++ b/net/ipv4/netfilter/nf_nat_snmp_basic.c
+@@ -438,8 +438,8 @@ static unsigned char asn1_oid_decode(str
+                                    unsigned int *len)
+ {
+       unsigned long subid;
+-      unsigned int  size;
+       unsigned long *optr;
++      size_t size;
+       size = eoc - ctx->pointer + 1;
diff --git a/queue-2.6.25/r8169-avoid-thrashing-pci-conf-space-above-rtl_giga_mac_ver_06.patch b/queue-2.6.25/r8169-avoid-thrashing-pci-conf-space-above-rtl_giga_mac_ver_06.patch
new file mode 100644 (file)
index 0000000..b00203a
--- /dev/null
@@ -0,0 +1,63 @@
+From 77332894c21165404496c56763d7df6c15c4bb09 Mon Sep 17 00:00:00 2001
+From: Marcus Sundberg <marcus@ingate.com>
+Date: Thu, 10 Jul 2008 21:28:08 +0200
+Subject: r8169: avoid thrashing PCI conf space above RTL_GIGA_MAC_VER_06
+MIME-Version: 1.0
+Content-Type: text/plain; charset=utf-8
+Content-Transfer-Encoding: 8bit
+
+From: Marcus Sundberg <marcus@ingate.com>
+
+commit 77332894c21165404496c56763d7df6c15c4bb09 upstream
+
+The magic write to register 0x82 will often cause PCI config space on
+my 8168 (PCI ID 10ec:8168, revision 2. mounted in an LG P300 laptop)
+to be filled with ones during driver load, and thus breaking NIC
+operation until reboot. If it does not happen on first driver load it
+can easily be reproduced by unloading and loading the driver a few
+times.
+
+The magic write was added long ago by this commit:
+
+Author: François Romieu <romieu@fr.zoreil.com>
+Date:   Sat Jan 10 06:00:46 2004 -0500
+
+     [netdrvr r8169] Merge of changes done by Realtek to rtl8169_init_one():
+     - phy capability settings allows lower or equal capability as suggested
+       in Realtek's changes;
+     - I/O voodoo;
+     - no need to s/mdio_write/RTL8169_WRITE_GMII_REG/;
+     - s/rtl8169_hw_PHY_config/rtl8169_hw_phy_config/;
+     - rtl8169_hw_phy_config(): ad-hoc struct "phy_magic" to limit duplication
+       of code (yep, the u16 -> int conversions should work as expected);
+     - variable renames and whitepace changes ignored.
+
+As the 8168 wasn't supported by that version this patch simply removes
+the bogus write from mac versions <= RTL_GIGA_MAC_VER_06.
+
+[The change above makes sense for the 8101/8102 too -- Ueimor]
+
+Signed-off-by: Marcus Sundberg <marcus@ingate.com>
+Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
+Cc: Karsten Keil <kkeil@suse.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/net/r8169.c |    6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+--- a/drivers/net/r8169.c
++++ b/drivers/net/r8169.c
+@@ -1438,8 +1438,10 @@ static void rtl8169_init_phy(struct net_
+       rtl_hw_phy_config(dev);
+-      dprintk("Set MAC Reg C+CR Offset 0x82h = 0x01h\n");
+-      RTL_W8(0x82, 0x01);
++      if (tp->mac_version <= RTL_GIGA_MAC_VER_06) {
++              dprintk("Set MAC Reg C+CR Offset 0x82h = 0x01h\n");
++              RTL_W8(0x82, 0x01);
++      }
+       pci_write_config_byte(tp->pci_dev, PCI_LATENCY_TIMER, 0x40);
diff --git a/queue-2.6.25/radeon-misc-corrections.patch b/queue-2.6.25/radeon-misc-corrections.patch
new file mode 100644 (file)
index 0000000..428f8ed
--- /dev/null
@@ -0,0 +1,82 @@
+From stable-bounces@linux.kernel.org Wed Aug  6 15:28:59 2008
+From: David Miller <davem@davemloft.net>
+Date: Wed, 6 Aug 2008 15:28:12 -0700
+Subject: radeon: misc corrections
+To: stable@kernel.org
+Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>, "David S. Miller" <davem@davemloft.net>
+Message-ID: <20080806152812.51242c18.akpm@linux-foundation.org>
+
+From: David Miller <davem@davemloft.net>
+
+Commit efc491814308f89d5ef6c4fe19ae4552a67d4132 upstream
+
+radeon: misc corrections
+
+I have a new PCI-E radeon RV380 series card (PCI device ID 5b64) that
+hangs in my sparc64 boxes when the init scripts set the font.  The problem
+goes away if I disable acceleration.
+
+I haven't figured out that bug yet, but along the way I found some
+corrections to make based upon some auditing.
+
+1) The RB2D_DC_FLUSH_ALL value used by the kernel fb driver
+   and the XORG video driver differ.  I've made the kernel
+   match what XORG is using.
+
+2) In radeonfb_engine_reset() we have top-level code structure
+   that roughly looks like:
+
+       if (family is 300, 350, or V350)
+               do this;
+       else
+               do that;
+       ...
+       if (family is NOT 300, OR
+           family is NOT 350, OR
+           family is NOT V350)
+               do another thing;
+
+   this last conditional makes no sense, is always true,
+   and obviously was likely meant to be "family is NOT
+   300, 350, or V350".  So I've made the code match the
+   intent.
+
+Signed-off-by: David S. Miller <davem@davemloft.net>
+Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
+Tested-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
+Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
+Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/video/aty/radeon_accel.c |    4 ++--
+ include/video/radeon.h           |    5 +++--
+ 2 files changed, 5 insertions(+), 4 deletions(-)
+
+--- a/drivers/video/aty/radeon_accel.c
++++ b/drivers/video/aty/radeon_accel.c
+@@ -249,8 +249,8 @@ void radeonfb_engine_reset(struct radeon
+       INREG(HOST_PATH_CNTL);
+       OUTREG(HOST_PATH_CNTL, host_path_cntl);
+-      if (rinfo->family != CHIP_FAMILY_R300 ||
+-          rinfo->family != CHIP_FAMILY_R350 ||
++      if (rinfo->family != CHIP_FAMILY_R300 &&
++          rinfo->family != CHIP_FAMILY_R350 &&
+           rinfo->family != CHIP_FAMILY_RV350)
+               OUTREG(RBBM_SOFT_RESET, rbbm_soft_reset);
+--- a/include/video/radeon.h
++++ b/include/video/radeon.h
+@@ -527,8 +527,9 @@
+ /* DSTCACHE_CTLSTAT bit constants */
+-#define RB2D_DC_FLUSH                            (3 << 0)
+-#define RB2D_DC_FLUSH_ALL                        0xf
++#define RB2D_DC_FLUSH_2D                         (1 << 0)
++#define RB2D_DC_FREE_2D                                  (1 << 2)
++#define RB2D_DC_FLUSH_ALL                        (RB2D_DC_FLUSH_2D | RB2D_DC_FREE_2D)
+ #define RB2D_DC_BUSY                             (1 << 31)
index b6b5f3996df5ad7c0346ac6b38f69ee15dd3e4a0..dfb25b922258300780eef958611edfea596aaef7 100644 (file)
@@ -38,3 +38,8 @@ uml-work-around-broken-host-ptrace_sysemu.patch
 uml-fix-gcc-ices-and-unresolved-externs.patch
 uml-fix-boot-crash.patch
 uml-path_max-needs-limits.h.patch
+radeon-misc-corrections.patch
+r8169-avoid-thrashing-pci-conf-space-above-rtl_giga_mac_ver_06.patch
+netfilter-nf_nat_snmp_basic-fix-a-range-check-in-nat-for-snmp.patch
+i2c-fix-null-pointer-dereference-in-i2c_new_probed_device.patch
+cifs-fix-compiler-warning-on-64-bit.patch