|
@@ -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);
|