mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-07-23 23:32:14 +00:00
xen-netback: Add support for multiple queues
Builds on the refactoring of the previous patch to implement multiple queues between xen-netfront and xen-netback. Writes the maximum supported number of queues into XenStore, and reads the values written by the frontend to determine how many queues to use. Ring references and event channels are read from XenStore on a per-queue basis and rings are connected accordingly. Also adds code to handle the cleanup of any already initialised queues if the initialisation of a subsequent queue fails. Signed-off-by: Andrew J. Bennieston <andrew.bennieston@citrix.com> Acked-by: Wei Liu <wei.liu2@citrix.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
e9ce7cb6b1
commit
8d3d53b3e4
4 changed files with 116 additions and 18 deletions
|
@ -237,6 +237,7 @@ struct xenvif *xenvif_alloc(struct device *parent,
|
|||
unsigned int handle);
|
||||
|
||||
int xenvif_init_queue(struct xenvif_queue *queue);
|
||||
void xenvif_deinit_queue(struct xenvif_queue *queue);
|
||||
|
||||
int xenvif_connect(struct xenvif_queue *queue, unsigned long tx_ring_ref,
|
||||
unsigned long rx_ring_ref, unsigned int tx_evtchn,
|
||||
|
@ -299,5 +300,6 @@ extern bool separate_tx_rx_irq;
|
|||
|
||||
extern unsigned int rx_drain_timeout_msecs;
|
||||
extern unsigned int rx_drain_timeout_jiffies;
|
||||
extern unsigned int xenvif_max_queues;
|
||||
|
||||
#endif /* __XEN_NETBACK__COMMON_H__ */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue