Hi Jaikumar, On Mon, Oct 26, 2009, Jaikumar Ganesh wrote: > When the device is removed, we remove the cache and remove the device->uuids > value. So when the device is created the next time, we cannot depend on > the profiles_removed value, we need to reconstruct from device->uuids. > device_remove_drivers call is based on the profiles_removed flag and hence that > call will never be made, when a new device is created. > > My change removes the dependency of SDP records and the probe_drivers, > Thus, removal of SDP records doesn't depend on the profiles_removed flag > but rather uses device->uuids directly. > > profiles_added and profiles_removed flags are useful in the case where > the user calls discover services on an already created device and there > are changes in the SDP records. If a device was removed then we shouldn't have any records stored records for it left in the cache and so it shouldn't matter that the profiles_removed list is empty when the device is recreated again, right? It seems there's a bug in the device_remove_stored function in device.c since it doesn't remove the record cache, so that's at least something that should be fixed. Johan -- To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html