Lines 203-208
svcpool_cleanup(SVCPOOL *pool)
Link Here
|
203 |
mtx_unlock(&grp->sg_lock); |
203 |
mtx_unlock(&grp->sg_lock); |
204 |
} |
204 |
} |
205 |
TAILQ_FOREACH_SAFE(xprt, &cleanup, xp_link, nxprt) { |
205 |
TAILQ_FOREACH_SAFE(xprt, &cleanup, xp_link, nxprt) { |
|
|
206 |
if (xprt->xp_socket != NULL) |
207 |
soshutdown(xprt->xp_socket, SHUT_WR); |
206 |
SVC_RELEASE(xprt); |
208 |
SVC_RELEASE(xprt); |
207 |
} |
209 |
} |
208 |
|
210 |
|
Lines 388-393
xprt_unregister(SVCXPRT *xprt)
Link Here
|
388 |
xprt_unregister_locked(xprt); |
390 |
xprt_unregister_locked(xprt); |
389 |
mtx_unlock(&grp->sg_lock); |
391 |
mtx_unlock(&grp->sg_lock); |
390 |
|
392 |
|
|
|
393 |
if (xprt->xp_socket != NULL) |
394 |
soshutdown(xprt->xp_socket, SHUT_WR); |
391 |
SVC_RELEASE(xprt); |
395 |
SVC_RELEASE(xprt); |
392 |
} |
396 |
} |
393 |
|
397 |
|
Lines 1078-1083
svc_checkidle(SVCGROUP *grp)
Link Here
|
1078 |
|
1082 |
|
1079 |
mtx_unlock(&grp->sg_lock); |
1083 |
mtx_unlock(&grp->sg_lock); |
1080 |
TAILQ_FOREACH_SAFE(xprt, &cleanup, xp_link, nxprt) { |
1084 |
TAILQ_FOREACH_SAFE(xprt, &cleanup, xp_link, nxprt) { |
|
|
1085 |
soshutdown(xprt->xp_socket, SHUT_WR); |
1081 |
SVC_RELEASE(xprt); |
1086 |
SVC_RELEASE(xprt); |
1082 |
} |
1087 |
} |
1083 |
mtx_lock(&grp->sg_lock); |
1088 |
mtx_lock(&grp->sg_lock); |