Hi Jean, On 03/30/2013 08:55 AM, Jean Delvare wrote: > Hi Lars-Peter, > > On Sat, 9 Mar 2013 19:16:46 +0100, Lars-Peter Clausen wrote: >> i2c_del_adapter() always returns 0. > > I beg you pardon? i2c_del_adapter() starts with: > > int i2c_del_adapter(struct i2c_adapter *adap) > { > int res = 0; > struct i2c_adapter *found; > struct i2c_client *client, *next; > > /* First make sure that this adapter was ever added */ > mutex_lock(&core_lock); > found = idr_find(&i2c_adapter_idr, adap->nr); > mutex_unlock(&core_lock); > if (found != adap) { > pr_debug("i2c-core: attempting to delete unregistered " > "adapter [%s]\n", adap->name); > return -EINVAL; > } > > /* Tell drivers about this removal */ > mutex_lock(&core_lock); > res = bus_for_each_drv(&i2c_bus_type, NULL, adap, > __process_removed_adapter); > mutex_unlock(&core_lock); > if (res) > return res; > (...) > > So, no, it doesn't "always return 0". > Patch 1 and 2 in this series remove those two instances: https://lkml.org/lkml/2013/3/9/72 https://lkml.org/lkml/2013/3/9/86 For an explanation why this should be done please take a look at the cover letter to this patch series https://lkml.org/lkml/2013/3/9/73 - Lars -- To unsubscribe from this list: send the line "unsubscribe linux-i2c" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html