ehea: Increase the skb array usage
authorBreno Leitao <leitao@linux.vnet.ibm.com>
Tue, 11 Jan 2011 07:45:57 +0000 (07:45 +0000)
committerDavid S. Miller <davem@davemloft.net>
Tue, 11 Jan 2011 22:03:09 +0000 (14:03 -0800)
Currently the skb array is not fully allocated, and the allocation
is done as it's requested, which is not the expected way.

This patch just allocate the full skb array at driver initialization.
Also, this patch increases ehea version to 107.

Signed-off-by: Breno Leitao <leitao@linux.vnet.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ehea/ehea.h
drivers/net/ehea/ehea_main.c

index a724a2d1450638b5e78b8a8010c6eca05e587bf5..6c7257bd73fc7deb7e44da2511955f09522c4e4f 100644 (file)
@@ -40,7 +40,7 @@
 #include <asm/io.h>
 
 #define DRV_NAME       "ehea"
-#define DRV_VERSION    "EHEA_0106"
+#define DRV_VERSION    "EHEA_0107"
 
 /* eHEA capability flags */
 #define DLPAR_PORT_ADD_REM 1
index 1032b5bbe2380505d5688863d392aeaa7f853787..f75d3144b8a508e9668c48be6592eff49fbb7e3f 100644 (file)
@@ -437,7 +437,7 @@ static void ehea_init_fill_rq1(struct ehea_port_res *pr, int nr_rq1a)
                }
        }
        /* Ring doorbell */
-       ehea_update_rq1a(pr->qp, i);
+       ehea_update_rq1a(pr->qp, i - 1);
 }
 
 static int ehea_refill_rq_def(struct ehea_port_res *pr,
@@ -1329,9 +1329,7 @@ static int ehea_fill_port_res(struct ehea_port_res *pr)
        int ret;
        struct ehea_qp_init_attr *init_attr = &pr->qp->init_attr;
 
-       ehea_init_fill_rq1(pr, init_attr->act_nr_rwqes_rq1
-                              - init_attr->act_nr_rwqes_rq2
-                              - init_attr->act_nr_rwqes_rq3 - 1);
+       ehea_init_fill_rq1(pr, pr->rq1_skba.len);
 
        ret = ehea_refill_rq2(pr, init_attr->act_nr_rwqes_rq2 - 1);