--- x/drivers/i2c/i2c-core-base.c +++ y/drivers/i2c/i2c-core-base.c @@ -1573,7 +1573,6 @@ static int i2c_register_adapter(struct i res = device_add(&adap->dev); if (res) { pr_err("adapter '%s': can't register device (%d)\n", adap->name, res); - put_device(&adap->dev); goto out_list; }