diff --git a/[refs] b/[refs] index e1f7ec2af884..77e32276086a 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 347ba8a588c3e49f357291e5a1ac38a11d7e052d +refs/heads/master: fe3cb82364332b9db3b574e9e41de9c27eff470a diff --git a/trunk/drivers/w1/w1_family.c b/trunk/drivers/w1/w1_family.c index 8c35f9ccb689..4a099041f28a 100644 --- a/trunk/drivers/w1/w1_family.c +++ b/trunk/drivers/w1/w1_family.c @@ -48,7 +48,6 @@ int w1_register_family(struct w1_family *newf) if (!ret) { atomic_set(&newf->refcnt, 0); - newf->need_exit = 0; list_add_tail(&newf->family_entry, &w1_families); } spin_unlock(&w1_flock); @@ -73,9 +72,6 @@ void w1_unregister_family(struct w1_family *fent) break; } } - - fent->need_exit = 1; - spin_unlock(&w1_flock); /* deatch devices using this family code */ @@ -113,8 +109,7 @@ struct w1_family * w1_family_registered(u8 fid) static void __w1_family_put(struct w1_family *f) { - if (atomic_dec_and_test(&f->refcnt)) - f->need_exit = 1; + atomic_dec(&f->refcnt); } void w1_family_put(struct w1_family *f) diff --git a/trunk/drivers/w1/w1_family.h b/trunk/drivers/w1/w1_family.h index 296a87edd922..30531331a643 100644 --- a/trunk/drivers/w1/w1_family.h +++ b/trunk/drivers/w1/w1_family.h @@ -53,7 +53,6 @@ struct w1_family struct w1_family_ops *fops; atomic_t refcnt; - u8 need_exit; }; extern spinlock_t w1_flock;