Commit a81bdcf3 authored by Ziye Yang's avatar Ziye Yang Committed by Jim Harris
Browse files

sock: Fix the spdk_sock_remove_sock_group_from_map_table



We need to compare the group info, then delete the
related entry.

Signed-off-by: default avatarZiye Yang <ziye.yang@intel.com>
Change-Id: Ie5ed7f3ce8611fd61448788f54a63f624c813c19
Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/463176


Reviewed-by: default avatarBroadcom SPDK FC-NVMe CI <spdk-ci.pdl@broadcom.com>
Reviewed-by: default avatarBen Walker <benjamin.walker@intel.com>
Reviewed-by: default avatarJim Harris <james.r.harris@intel.com>
Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
parent 90520634
Loading
Loading
Loading
Loading
+5 −3
Original line number Diff line number Diff line
@@ -133,12 +133,14 @@ spdk_sock_map_lookup(int placement_id, struct spdk_sock_group **group)
static void
spdk_sock_remove_sock_group_from_map_table(struct spdk_sock_group *group)
{
	struct spdk_sock_placement_id_entry *entry;
	struct spdk_sock_placement_id_entry *entry, *tmp;

	pthread_mutex_lock(&g_map_table_mutex);
	STAILQ_FOREACH(entry, &g_placement_id_map, link) {
	STAILQ_FOREACH_SAFE(entry, &g_placement_id_map, link, tmp) {
		if (entry->group == group) {
			STAILQ_REMOVE(&g_placement_id_map, entry, spdk_sock_placement_id_entry, link);
		}
	}
	pthread_mutex_unlock(&g_map_table_mutex);

}