View | Details | Raw Unified | Return to bug 204340 | Differences between
and this patch

Collapse All | Expand All

(-)rpc/svc.c (+6 lines)
Lines 189-198 svcpool_destroy(SVCPOOL *pool) Link Here
189
	for (g = 0; g < SVC_MAXGROUPS; g++) {
189
	for (g = 0; g < SVC_MAXGROUPS; g++) {
190
		grp = &pool->sp_groups[g];
190
		grp = &pool->sp_groups[g];
191
		mtx_lock(&grp->sg_lock);
191
		mtx_lock(&grp->sg_lock);
192
	}
193
	for (g = 0; g < SVC_MAXGROUPS; g++) {
194
		grp = &pool->sp_groups[g];
192
		while ((xprt = TAILQ_FIRST(&grp->sg_xlist)) != NULL) {
195
		while ((xprt = TAILQ_FIRST(&grp->sg_xlist)) != NULL) {
193
			xprt_unregister_locked(xprt);
196
			xprt_unregister_locked(xprt);
194
			TAILQ_INSERT_TAIL(&cleanup, xprt, xp_link);
197
			TAILQ_INSERT_TAIL(&cleanup, xprt, xp_link);
195
		}
198
		}
199
	}
200
	for (g = 0; g < SVC_MAXGROUPS; g++) {
201
		grp = &pool->sp_groups[g];
196
		mtx_unlock(&grp->sg_lock);
202
		mtx_unlock(&grp->sg_lock);
197
	}
203
	}
198
	TAILQ_FOREACH_SAFE(xprt, &cleanup, xp_link, nxprt) {
204
	TAILQ_FOREACH_SAFE(xprt, &cleanup, xp_link, nxprt) {

Return to bug 204340