From 58f8b76c8cfa213b71b4b42ba933557415a75a93 Mon Sep 17 00:00:00 2001 From: Ali Ayoub Date: Mon, 10 Jan 2011 17:42:06 -0800 Subject: [PATCH] --- yaml --- r: 229255 b: refs/heads/master c: 030b4b3309e29c6c857d8521c3076743663c259e h: refs/heads/master i: 229253: 8c5f00228054f137e0365eac8e022c99ea14b4ce 229251: 540516df851d1cf7a1b0b9b8399dfcdee0a69d1a 229247: 2f5525b1f26a63f8067a755352c59e971ed9de9b v: v3 --- [refs] | 2 +- trunk/drivers/net/mlx4/alloc.c | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 935fbf385b5e..8d1ad0cfc3ed 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 3afa9f19e5bd16abed998b7bf1b178206403286f +refs/heads/master: 030b4b3309e29c6c857d8521c3076743663c259e diff --git a/trunk/drivers/net/mlx4/alloc.c b/trunk/drivers/net/mlx4/alloc.c index 8f4bf1f07c11..3a4277f6fac4 100644 --- a/trunk/drivers/net/mlx4/alloc.c +++ b/trunk/drivers/net/mlx4/alloc.c @@ -178,6 +178,7 @@ int mlx4_buf_alloc(struct mlx4_dev *dev, int size, int max_direct, } else { int i; + buf->direct.buf = NULL; buf->nbufs = (size + PAGE_SIZE - 1) / PAGE_SIZE; buf->npages = buf->nbufs; buf->page_shift = PAGE_SHIFT; @@ -229,7 +230,7 @@ void mlx4_buf_free(struct mlx4_dev *dev, int size, struct mlx4_buf *buf) dma_free_coherent(&dev->pdev->dev, size, buf->direct.buf, buf->direct.map); else { - if (BITS_PER_LONG == 64) + if (BITS_PER_LONG == 64 && buf->direct.buf) vunmap(buf->direct.buf); for (i = 0; i < buf->nbufs; ++i)