Skip to content

Commit 18604c5

Browse files
Jan-Bernd ThemannJeff Garzik
authored andcommitted
ehea: NAPI multi queue TX/RX path for SMP
This patch provides a functionality that allows parallel RX processing on multiple RX queues by using dummy netdevices. Signed-off-by: Jan-Bernd Themann <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
1 parent 1acf231 commit 18604c5

File tree

3 files changed

+169
-129
lines changed

3 files changed

+169
-129
lines changed

drivers/net/ehea/ehea.h

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@
3939
#include <asm/io.h>
4040

4141
#define DRV_NAME "ehea"
42-
#define DRV_VERSION "EHEA_0048"
42+
#define DRV_VERSION "EHEA_0052"
4343

4444
#define EHEA_MSG_DEFAULT (NETIF_MSG_LINK | NETIF_MSG_TIMER \
4545
| NETIF_MSG_RX_ERR | NETIF_MSG_TX_ERR)
@@ -78,8 +78,6 @@
7878
#define EHEA_RQ2_PKT_SIZE 1522
7979
#define EHEA_L_PKT_SIZE 256 /* low latency */
8080

81-
#define EHEA_POLL_MAX_RWQE 1000
82-
8381
/* Send completion signaling */
8482
#define EHEA_SIG_IV_LONG 1
8583

@@ -357,8 +355,8 @@ struct ehea_port_res {
357355
struct ehea_qp *qp;
358356
struct ehea_cq *send_cq;
359357
struct ehea_cq *recv_cq;
360-
struct ehea_eq *send_eq;
361-
struct ehea_eq *recv_eq;
358+
struct ehea_eq *eq;
359+
struct net_device *d_netdev;
362360
spinlock_t send_lock;
363361
struct ehea_q_skb_arr rq1_skba;
364362
struct ehea_q_skb_arr rq2_skba;
@@ -372,7 +370,6 @@ struct ehea_port_res {
372370
int swqe_count;
373371
u32 swqe_id_counter;
374372
u64 tx_packets;
375-
struct tasklet_struct send_comp_task;
376373
spinlock_t recv_lock;
377374
struct port_state p_state;
378375
u64 rx_packets;
@@ -416,7 +413,9 @@ struct ehea_port {
416413
char int_aff_name[EHEA_IRQ_NAME_SIZE];
417414
int allmulti; /* Indicates IFF_ALLMULTI state */
418415
int promisc; /* Indicates IFF_PROMISC state */
416+
int num_tx_qps;
419417
int num_add_tx_qps;
418+
int num_mcs;
420419
int resets;
421420
u64 mac_addr;
422421
u32 logical_port_id;

0 commit comments

Comments
 (0)