aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/ibm/ehea/ehea_qmr.c
diff options
context:
space:
mode:
authorRickard Strandqvist <rickard_strandqvist@spectrumdigital.se>2014-05-18 12:01:21 -0400
committerDavid S. Miller <davem@davemloft.net>2014-05-18 21:26:02 -0400
commit38ea4e6e4a21fb88104be2a666a7e88176150b00 (patch)
treeb795778f5775e067ba2a92db0ebc7d58025475c6 /drivers/net/ethernet/ibm/ehea/ehea_qmr.c
parent71fd762f2eef6acc848e262ac934fc694b49204e (diff)
net: ethernet: ibm: ehea: ehea_qmr.c: Fix for possible null pointer dereference
There is otherwise a risk of a possible null pointer dereference. Was largely found by using a static code analysis program called cppcheck. Signed-off-by: Rickard Strandqvist <rickard_strandqvist@spectrumdigital.se> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/ibm/ehea/ehea_qmr.c')
-rw-r--r--drivers/net/ethernet/ibm/ehea/ehea_qmr.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/net/ethernet/ibm/ehea/ehea_qmr.c b/drivers/net/ethernet/ibm/ehea/ehea_qmr.c
index 9b03033bb557..a0820f72b25c 100644
--- a/drivers/net/ethernet/ibm/ehea/ehea_qmr.c
+++ b/drivers/net/ethernet/ibm/ehea/ehea_qmr.c
@@ -103,12 +103,14 @@ out_nomem:
103 103
104static void hw_queue_dtor(struct hw_queue *queue) 104static void hw_queue_dtor(struct hw_queue *queue)
105{ 105{
106 int pages_per_kpage = PAGE_SIZE / queue->pagesize; 106 int pages_per_kpage;
107 int i, nr_pages; 107 int i, nr_pages;
108 108
109 if (!queue || !queue->queue_pages) 109 if (!queue || !queue->queue_pages)
110 return; 110 return;
111 111
112 pages_per_kpage = PAGE_SIZE / queue->pagesize;
113
112 nr_pages = queue->queue_length / queue->pagesize; 114 nr_pages = queue->queue_length / queue->pagesize;
113 115
114 for (i = 0; i < nr_pages; i += pages_per_kpage) 116 for (i = 0; i < nr_pages; i += pages_per_kpage)