diff options
author | Jean Delvare <khali@linux-fr.org> | 2010-05-04 11:09:28 +0200 |
---|---|---|
committer | Jean Delvare <khali@linux-fr.org> | 2010-05-04 11:09:28 +0200 |
commit | 6629dcff19470a894ce294d0adb9cbab94ee1fb9 (patch) | |
tree | 18f75a3f5ca83de96a0fe353fafa02bab174cd36 /include/linux | |
parent | b1d4b390ea4bb480e65974ce522a04022608a8df (diff) | |
download | op-kernel-dev-6629dcff19470a894ce294d0adb9cbab94ee1fb9.zip op-kernel-dev-6629dcff19470a894ce294d0adb9cbab94ee1fb9.tar.gz |
i2c-core: Use per-adapter userspace device lists
Using a single list for all userspace devices leads to a dead lock
on multiplexed buses in some circumstances (mux chip instantiated
from userspace). This is solved by using a separate list for each
bus segment.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Acked-by: Michael Lawnick <ml.lawnick@gmx.de>
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/i2c.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/i2c.h b/include/linux/i2c.h index 0a5da63..6ed1d59 100644 --- a/include/linux/i2c.h +++ b/include/linux/i2c.h @@ -355,6 +355,8 @@ struct i2c_adapter { int nr; char name[48]; struct completion dev_released; + + struct list_head userspace_clients; }; #define to_i2c_adapter(d) container_of(d, struct i2c_adapter, dev) |