[i2c] [patch 2.6.22-rc1] i2c legacy drivers shouldn't issue uevents
David Brownell
david-b at pacbell.net
Tue May 15 04:32:55 CEST 2007
Prevent legacy drivers from issuing uevents for device creation/removal,
so that userspace can't cause modprobing loops for them. This became a
problem for some legacy PC drivers. I can't easily see it becoming an
issue with I2C legacy drivers, but consistency-in-paranoia seems likely
to be a good thing here. For usable i2c-level driver model uevents, just
switch to a new-style driver.
Signed-off-by: David Brownell <dbrownell at users.sourceforge.net>
---
drivers/i2c/i2c-core.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
--- g26.orig/drivers/i2c/i2c-core.c 2007-05-08 07:45:06.000000000 -0700
+++ g26/drivers/i2c/i2c-core.c 2007-05-08 07:47:34.000000000 -0700
@@ -710,9 +710,10 @@ int i2c_attach_client(struct i2c_client
if (client->driver)
client->dev.driver = &client->driver->driver;
- if (client->driver && !is_newstyle_driver(client->driver))
+ if (client->driver && !is_newstyle_driver(client->driver)) {
client->dev.release = i2c_client_release;
- else
+ client->dev.uevent_suppress = 1;
+ } else
client->dev.release = i2c_client_dev_release;
snprintf(&client->dev.bus_id[0], sizeof(client->dev.bus_id),
More information about the i2c
mailing list