From fcfc762f17616e9c720214d85b88ed672e767499 Mon Sep 17 00:00:00 2001 From: Johan Hovold Date: Tue, 3 Nov 2015 12:11:26 +0100 Subject: [PATCH] greybus: connection: kill gb_hd_connections_exit Connections are destroyed as part of interface tear down. If we fail to do that properly it's a bug that should be fixed rather than papered over by a fall-back clean up function. Signed-off-by: Johan Hovold Reviewed-by: Viresh Kumar Signed-off-by: Greg Kroah-Hartman --- drivers/staging/greybus/connection.c | 8 -------- drivers/staging/greybus/connection.h | 1 - drivers/staging/greybus/core.c | 6 ------ 3 files changed, 15 deletions(-) diff --git a/drivers/staging/greybus/connection.c b/drivers/staging/greybus/connection.c index 294e72e8e1c0..de774b988213 100644 --- a/drivers/staging/greybus/connection.c +++ b/drivers/staging/greybus/connection.c @@ -489,14 +489,6 @@ void gb_connection_latency_tag_disable(struct gb_connection *connection) } EXPORT_SYMBOL_GPL(gb_connection_latency_tag_disable); -void gb_hd_connections_exit(struct greybus_host_device *hd) -{ - struct gb_connection *connection; - - list_for_each_entry(connection, &hd->connections, hd_links) - gb_connection_destroy(connection); -} - int gb_connection_bind_protocol(struct gb_connection *connection) { struct gb_protocol *protocol; diff --git a/drivers/staging/greybus/connection.h b/drivers/staging/greybus/connection.h index af425a2dc5d2..06c7711da422 100644 --- a/drivers/staging/greybus/connection.h +++ b/drivers/staging/greybus/connection.h @@ -58,7 +58,6 @@ struct gb_connection *gb_connection_create_range(struct greybus_host_device *hd, u16 cport_id, u8 protocol_id, u32 ida_start, u32 ida_end); void gb_connection_destroy(struct gb_connection *connection); -void gb_hd_connections_exit(struct greybus_host_device *hd); void greybus_data_rcvd(struct greybus_host_device *hd, u16 cport_id, u8 *data, size_t length); diff --git a/drivers/staging/greybus/core.c b/drivers/staging/greybus/core.c index be75456a835d..726bf6480af3 100644 --- a/drivers/staging/greybus/core.c +++ b/drivers/staging/greybus/core.c @@ -242,12 +242,6 @@ void greybus_remove_hd(struct greybus_host_device *hd) if (hd->initial_svc_connection) gb_connection_destroy(hd->initial_svc_connection); - /* - * Make sure there are no leftovers that can potentially corrupt sysfs. - */ - if (WARN_ON(!list_empty(&hd->connections))) - gb_hd_connections_exit(hd); - kref_put_mutex(&hd->kref, free_hd, &hd_mutex); } EXPORT_SYMBOL_GPL(greybus_remove_hd); -- 2.39.5