[PATCH] ssb: Fix regression in 2.6.23-git3 due to change incalling add_uevent_var

From: Larry Finger
Date: Sun Oct 14 2007 - 01:02:46 EST


In commit 7eff2e7a8b65c25920207324e56611150eb1cd9a, the calling sequence
for add_uevent_var was changed, but the ssb driver was not modified, which
leads to a "Unable to handle kernel paging request" oops. This patch fixes
the problem.

Signed-off-by: Larry Finger <Larry.Finger@xxxxxxxxxxxx>
---

drivers/ssb/main.c | 11 +++--------
1 file changed, 3 insertions(+), 8 deletions(-)

Index: linux-2.6/drivers/ssb/main.c
===================================================================
--- linux-2.6.orig/drivers/ssb/main.c
+++ linux-2.6/drivers/ssb/main.c
@@ -320,22 +320,17 @@ static int ssb_bus_match(struct device *
return 0;
}

-static int ssb_device_uevent(struct device *dev, char **envp, int num_envp,
- char *buffer, int buffer_size)
+static int ssb_device_uevent(struct device *dev, struct kobj_uevent_env *env)
{
struct ssb_device *ssb_dev = dev_to_ssb_dev(dev);
- int ret, i = 0, length = 0;
+ int ret;

if (!dev)
return -ENODEV;

- ret = add_uevent_var(envp, num_envp, &i,
- buffer, buffer_size, &length,
- "MODALIAS=ssb:v%04Xid%04Xrev%02X",
+ ret = add_uevent_var(env, "MODALIAS=ssb:v%04Xid%04Xrev%02X",
ssb_dev->id.vendor, ssb_dev->id.coreid,
ssb_dev->id.revision);
- envp[i] = NULL;
-
return ret;
}

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/