Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Conflicts: drivers/net/ehea/ehea_main.c drivers/net/wireless/iwlwifi/Kconfig drivers/net/wireless/rt2x00/rt61pci.c net/ipv4/inet_timewait_sock.c net/ipv6/raw.c net/mac80211/ieee80211_sta.c
This commit is contained in:
@@ -411,8 +411,10 @@ static void u32_destroy(struct tcf_proto *tp)
|
||||
}
|
||||
}
|
||||
|
||||
for (ht=tp_c->hlist; ht; ht = ht->next)
|
||||
for (ht = tp_c->hlist; ht; ht = ht->next) {
|
||||
ht->refcnt--;
|
||||
u32_clear_hnode(tp, ht);
|
||||
}
|
||||
|
||||
while ((ht = tp_c->hlist) != NULL) {
|
||||
tp_c->hlist = ht->next;
|
||||
@@ -441,8 +443,12 @@ static int u32_delete(struct tcf_proto *tp, unsigned long arg)
|
||||
if (tp->root == ht)
|
||||
return -EINVAL;
|
||||
|
||||
if (--ht->refcnt == 0)
|
||||
if (ht->refcnt == 1) {
|
||||
ht->refcnt--;
|
||||
u32_destroy_hnode(tp, ht);
|
||||
} else {
|
||||
return -EBUSY;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -568,7 +574,7 @@ static int u32_change(struct tcf_proto *tp, unsigned long base, u32 handle,
|
||||
if (ht == NULL)
|
||||
return -ENOBUFS;
|
||||
ht->tp_c = tp_c;
|
||||
ht->refcnt = 0;
|
||||
ht->refcnt = 1;
|
||||
ht->divisor = divisor;
|
||||
ht->handle = handle;
|
||||
ht->prio = tp->prio;
|
||||
|
Reference in New Issue
Block a user