Hello

I'm working on virtual ethernet driver which sends and receives frames through physical device. It has to deal with high speed transfers (1Gb/s).

I've already registered new packet_type with dev_add_pack. That way, my function (let's call it skb_recv) gets all received packets of given type.

My question is, since driver needs to handle congestions and there is no longer cng_level variable available in kernel, how to check whether I'm loosing packets?

I might check net_device_stats->rx_dropped of physical device but sadly it's 0 all the time (even though I'm sure packets are dropped). Maybe it's because I'm testing on VMware and they haven't implemented it correctly?

Another thing: where exactly packets are dropped? Does dropping depends on how many work I do in my skb_recv function? I know it's called from softirq context... Should I implement any additional packet buffers in skb_recv?

Thanks for all tips

--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to [email protected]
Please read the FAQ at http://kernelnewbies.org/FAQ

Reply via email to