[ATM]: track and close listen sockets when sigd exits
Signed-off-by: Chas Williams <chas@cmf.nrl.navy.mil>
This commit is contained in:
committed by
David S. Miller
parent
e2c4b72158
commit
9301e320e9
@@ -217,8 +217,9 @@ void sigd_enq(struct atm_vcc *vcc,enum atmsvc_msg_type type,
|
||||
static void purge_vcc(struct atm_vcc *vcc)
|
||||
{
|
||||
if (sk_atm(vcc)->sk_family == PF_ATMSVC &&
|
||||
!test_bit(ATM_VF_META,&vcc->flags)) {
|
||||
set_bit(ATM_VF_RELEASED,&vcc->flags);
|
||||
!test_bit(ATM_VF_META, &vcc->flags)) {
|
||||
set_bit(ATM_VF_RELEASED, &vcc->flags);
|
||||
clear_bit(ATM_VF_REGIS, &vcc->flags);
|
||||
vcc_release_async(vcc, -EUNATCH);
|
||||
}
|
||||
}
|
||||
@@ -243,8 +244,7 @@ static void sigd_close(struct atm_vcc *vcc)
|
||||
sk_for_each(s, node, head) {
|
||||
struct atm_vcc *vcc = atm_sk(s);
|
||||
|
||||
if (vcc->dev)
|
||||
purge_vcc(vcc);
|
||||
purge_vcc(vcc);
|
||||
}
|
||||
}
|
||||
read_unlock(&vcc_sklist_lock);
|
||||
|
Reference in New Issue
Block a user