[PATCH] r8169: incorrect args to oob notify
From: Stephen Hemminger <hidden>
Date: 2011-02-23 17:52:39
Sparse detected this bug. The function oob_notify was being passed the private ptr, but expected to get the ioaddr. Compile checked only; not tested on real hardware. Patch against net-next-2.6 but should be applied to net-2.6. Bug not present in 2.6.37 and earlier. Signed-off-by: Stephen Hemminger <redacted>
--- a/drivers/net/r8169.c 2011-02-23 09:46:30.042289776 -0800
+++ b/drivers/net/r8169.c 2011-02-23 09:48:00.167355773 -0800@@ -617,8 +617,9 @@ static void ocp_write(struct rtl8169_pri } } -static void rtl8168_oob_notify(void __iomem *ioaddr, u8 cmd) +static void rtl8168_oob_notify(struct rtl8169_private *tp, u8 cmd) { + void __iomem *ioaddr = tp->mmio_addr; int i; RTL_W8(ERIDR, cmd);
@@ -630,7 +631,7 @@ static void rtl8168_oob_notify(void __io break; } - ocp_write(ioaddr, 0x1, 0x30, 0x00000001); + ocp_write(tp, 0x1, 0x30, 0x00000001); } #define OOB_CMD_RESET 0x00