Re: [RFC PATCH V2 3/8] netback: switch to NAPI + kthread model
From: Stephen Hemminger <hidden>
Date: 2012-01-17 17:07:36
Also in:
xen-devel
From: Stephen Hemminger <hidden>
Date: 2012-01-17 17:07:36
Also in:
xen-devel
On Tue, 17 Jan 2012 13:46:59 +0000 Wei Liu [off-list ref] wrote:
This patch implements 1:1 model netback. We utilizes NAPI and kthread to do the weight-lifting job: - NAPI is used for guest side TX (host side RX) - kthread is used for guest side RX (host side TX) This model provides better scheduling fairness among vifs. It also lays the foundation for future work. The major defect for the current implementation is that in the NAPI poll handler we don't actually disable interrupt. Xen stuff is different from real hardware, it requires some other tuning of ring macros. Signed-off-by: Wei Liu <redacted>
The network receive processing is sensitive to the context it is run in. Normally it is run in softirq with interrupts enabled. With your code, the poll routine disables IRQ's which shouldn't be necessary. Why does xenvif_receive_skb() need to still exist? Couldn't it just be replaced with call to netif_receive_skb() in one place it is called.