]> git.neil.brown.name Git - history.git/commitdiff
[PATCH] I2C: Prevent i2c-dev oops with debug
authorJean Delvare <khali@linux-fr.org>
Tue, 9 Mar 2004 06:57:49 +0000 (22:57 -0800)
committerGreg Kroah-Hartman <greg@kroah.com>
Tue, 9 Mar 2004 06:57:49 +0000 (22:57 -0800)
Looks like i2c-dev suffers the same problem with dev_dbg as i2c-core did
twice. Here is a patch that fixed a oops I and another user were
experiencing when running sensors-detect.

drivers/i2c/i2c-dev.c

index b3a2a98aeaffe2147862a72498d9a225413d75a6..e99133adccfd5dd3e622706426ddd6d45e7d9f82 100644 (file)
@@ -189,7 +189,7 @@ int i2cdev_ioctl (struct inode *inode, struct file *file, unsigned int cmd,
        int i,datasize,res;
        unsigned long funcs;
 
-       dev_dbg(&client->dev, "i2c-%d ioctl, cmd: 0x%x, arg: %lx.\n",
+       dev_dbg(&client->adapter->dev, "i2c-%d ioctl, cmd: 0x%x, arg: %lx.\n",
                iminor(inode),cmd, arg);
 
        switch ( cmd ) {
@@ -310,7 +310,7 @@ int i2cdev_ioctl (struct inode *inode, struct file *file, unsigned int cmd,
                    (data_arg.size != I2C_SMBUS_BLOCK_DATA) &&
                    (data_arg.size != I2C_SMBUS_I2C_BLOCK_DATA) &&
                    (data_arg.size != I2C_SMBUS_BLOCK_PROC_CALL)) {
-                       dev_dbg(&client->dev,
+                       dev_dbg(&client->adapter->dev,
                                "size out of range (%x) in ioctl I2C_SMBUS.\n",
                                data_arg.size);
                        return -EINVAL;
@@ -319,7 +319,7 @@ int i2cdev_ioctl (struct inode *inode, struct file *file, unsigned int cmd,
                   so the check is valid if size==I2C_SMBUS_QUICK too. */
                if ((data_arg.read_write != I2C_SMBUS_READ) && 
                    (data_arg.read_write != I2C_SMBUS_WRITE)) {
-                       dev_dbg(&client->dev, 
+                       dev_dbg(&client->adapter->dev, 
                                "read_write out of range (%x) in ioctl I2C_SMBUS.\n",
                                data_arg.read_write);
                        return -EINVAL;
@@ -338,7 +338,7 @@ int i2cdev_ioctl (struct inode *inode, struct file *file, unsigned int cmd,
                                              data_arg.size, NULL);
 
                if (data_arg.data == NULL) {
-                       dev_dbg(&client->dev,
+                       dev_dbg(&client->adapter->dev,
                                "data is NULL pointer in ioctl I2C_SMBUS.\n");
                        return -EINVAL;
                }