diff options
author | Neil Turton <nturton@solarflare.com> | 2008-12-13 08:41:06 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-12-13 08:57:44 +0300 |
commit | 28b581ab0a0aa7bc8b22935779ca3e8d6f651ac7 (patch) | |
tree | 900aa9f5950c1efa01cab8c571a97272b3dc0ce3 /drivers/net/sfc/net_driver.h | |
parent | 84ae48fe4c1fe8b79fac015df6ad0b0937a7ae37 (diff) | |
download | linux-28b581ab0a0aa7bc8b22935779ca3e8d6f651ac7.tar.xz |
sfc: Add option to use a separate channel for TX completions
In a bidirectional forwarding test, we find that the best performance
is achieved by sending the TX completion interrupts from one NIC to a
CPU which shares an L2 cache with RX completion interrupts from the
other NIC. To facilitate this, add an option (through a module
parameter) to create separate channels for RX and TX completion with
separate IRQs when MSI-X is available.
Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/sfc/net_driver.h')
-rw-r--r-- | drivers/net/sfc/net_driver.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/sfc/net_driver.h b/drivers/net/sfc/net_driver.h index f91060963475..2c5b5fabac1e 100644 --- a/drivers/net/sfc/net_driver.h +++ b/drivers/net/sfc/net_driver.h @@ -649,6 +649,7 @@ union efx_multicast_hash { * @rx_queue: RX DMA queues * @channel: Channels * @n_rx_queues: Number of RX queues + * @n_channels: Number of channels in use * @rx_buffer_len: RX buffer length * @rx_buffer_order: Order (log2) of number of pages for each RX buffer * @irq_status: Interrupt status buffer @@ -728,6 +729,7 @@ struct efx_nic { struct efx_channel channel[EFX_MAX_CHANNELS]; int n_rx_queues; + int n_channels; unsigned int rx_buffer_len; unsigned int rx_buffer_order; |