summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKenneth Kwak <kkwak@nvidia.com>2014-06-24 21:39:07 -0700
committerPeter Kim <pekim@nvidia.com>2014-06-25 19:15:51 -0700
commit0d48f7b8aa06d4c69f37d56789d6b20e0cf4ba4f (patch)
treebcae6509a79a868f051e27cbb83bc1e7eb632980
parent1143725a9b5db76dee44e2431a6e844aa7c1e056 (diff)
Revert "staging: ozwpan: handle race in remove binding"
DO NOT INTEGRATE Bug 1466757 This reverts commit b9896d8e565fb27f3e690556d6bd55d268f32470. Change-Id: I118c3633d23822c41be5a2d9c5cce4ef423640b2 Signed-off-by: Kenneth Kwak <kkwak@nvidia.com> Reviewed-on: http://git-master/r/428081 Reviewed-by: Peter Kim <pekim@nvidia.com> Tested-by: Peter Kim <pekim@nvidia.com>
-rw-r--r--drivers/staging/ozwpan/ozproto.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/staging/ozwpan/ozproto.c b/drivers/staging/ozwpan/ozproto.c
index 8cb25b285c6a..f0ac43283588 100644
--- a/drivers/staging/ozwpan/ozproto.c
+++ b/drivers/staging/ozwpan/ozproto.c
@@ -747,15 +747,14 @@ static void pd_stop_all_for_device(struct net_device *net_dev)
*/
void oz_binding_remove(const char *net_dev)
{
- struct oz_binding *binding, *tmp;
+ struct oz_binding *binding;
int found = 0;
oz_trace_msg(M, "Removing binding: '%s'\n", net_dev);
spin_lock_bh(&g_binding_lock);
- list_for_each_entry_safe(binding, tmp, &g_binding, link) {
+ list_for_each_entry(binding, &g_binding, link) {
if (compare_binding_name(binding->name, net_dev)) {
oz_trace_msg(M, "Binding '%s' found\n", net_dev);
- list_del(&binding->link);
found = 1;
break;
}
@@ -768,6 +767,7 @@ void oz_binding_remove(const char *net_dev)
dev_put(binding->ptype.dev);
pd_stop_all_for_device(binding->ptype.dev);
}
+ list_del(&binding->link);
kfree(binding);
}
}