Thread (22 messages) flat view 22 messages, 4 authors, 2011-03-24

Re: [PATCH net-next-2.6 v3] net_sched: SFB flow scheduler

From: Eric Dumazet <hidden>
Date: 2011-02-23 16:48:36

Le mercredi 23 février 2011 à 17:24 +0100, Patrick McHardy a écrit :
This needs to be a per-skb property, otherwise you could have the
situation:

- enqueue skb, double_buffering=0, increment buffer 0
- enable double buffering
- swap buffers
- dequeue same skb, decrement buffer 1

after which the qlen values of buffer 1 will be incorrect.
Normally its OK, because we bzero() the zone, and the "decrement" is
0-bounded.

I had this idea (of storing two bits per skb), but :

- It means that swap_buffer() should not touch (bzero) the 'old' bins

- Since hash perturbator is changed, we have to store the two hash
values per skb (instead of one u32 / classid).

quoted
+		slot ^= 1;
+		sfbhash = sfb_hash(skb, slot, q);
Isn't there room in the cb to store both hash values?
Yes, I am going to implement your idea, its probably OK to use two u32
on skb_cb for this.

Thanks !

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help