Order of unloading drivers shell be preserved as given in audio_manager_exit. It was reverted in 'c772636 Fix unloading of adapter drivers', which causes in turn bluetoothd crash on exit. Removing of media end-point results in removing of A2DP end-point for the corresponding A2DP server but not vice versa. Therefore, unregistering and destroying A2DP server, which clears all A2DP end-points, before media server is incorrect. --- src/adapter.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/adapter.c b/src/adapter.c index 8c368fe..9fa7c4d 100644 --- a/src/adapter.c +++ b/src/adapter.c @@ -2258,8 +2258,8 @@ static void probe_driver(struct btd_adapter *adapter, gpointer user_data) return; } - adapter->loaded_drivers = g_slist_prepend(adapter->loaded_drivers, - driver); + adapter->loaded_drivers = g_slist_append(adapter->loaded_drivers, + driver); } static void load_drivers(struct btd_adapter *adapter) -- 1.7.1 -- 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