Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2236baa7 authored by Jean Delvare's avatar Jean Delvare Committed by Jean Delvare
Browse files

i2c: Sanity checks on adapter registration



Make sure I2C adapters being registered have the required struct
fields set. If they don't, problems will happen later.

Signed-off-by: default avatarJean Delvare <khali@linux-fr.org>
parent e1e18ee1
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
@@ -848,6 +848,18 @@ static int i2c_register_adapter(struct i2c_adapter *adap)
		goto out_list;
	}

	/* Sanity checks */
	if (unlikely(adap->name[0] == '\0')) {
		pr_err("i2c-core: Attempt to register an adapter with "
		       "no name!\n");
		return -EINVAL;
	}
	if (unlikely(!adap->algo)) {
		pr_err("i2c-core: Attempt to register adapter '%s' with "
		       "no algo!\n", adap->name);
		return -EINVAL;
	}

	rt_mutex_init(&adap->bus_lock);
	mutex_init(&adap->userspace_clients_lock);
	INIT_LIST_HEAD(&adap->userspace_clients);