Possible bug in netif_receive_skb
Quoted 6 lines
->func() must either take or free up the SKB, there must be no violations of this rule.
Could you explain it more clearly?
How it applies to that two ( even three ) scenarios, I've told?
What if we have the first scenario:
ptype_all->func = func1;ptype_all->next = NULL;
Will this function be called or not?
Second scenario:
ptype_all->func = func1;ptype_all->next = &ptype1;
ptype1->func = func2;ptype1->next = NULL;
Will func2() be called?
Third scenario:
ptype_all->func = func1;ptype_all->next = &ptype1;
ptype1->func = func2;ptype1->next = &ptype2;
ptype2->func = func3;ptype2->next = &ptype3;
ptype3->func = func4;ptype3->next = NULL;
If func2() freed skb, and return NET_RX_DROP, what will happen?
PS: I still don't understand why we should skip the first step, and call first function on second cycle? -
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/