[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180716191953.28b7821d@virtuozzo.com>
Date: Mon, 16 Jul 2018 19:19:53 +0300
From: Jan Dakinevich <jan.dakinevich@...tuozzo.com>
To: Doug Ledford <dledford@...hat.com>, Jason Gunthorpe <jgg@...pe.ca>,
Leon Romanovsky <leon@...nel.org>,
Yuval Shaia <yuval.shaia@...cle.com>,
Alex Vesker <valex@...lanox.com>,
Erez Shitrit <erezsh@...lanox.com>,
Feras Daoud <ferasda@...lanox.com>,
Kees Cook <keescook@...omium.org>,
Evgenii Smirnov <evgenii.smirnov@...fitbricks.com>,
linux-rdma@...r.kernel.org, linux-kernel@...r.kernel.org
Cc: Denis Lunev <den@...tuozzo.com>,
Konstantin Khorenko <khorenko@...tuozzo.com>
Subject: Re: [PATCH] IPoIB: use kvzalloc to allocate an array of bucket
pointers
On Mon, 9 Jul 2018 16:51:03 +0300
Jan Dakinevich <jan.dakinevich@...tuozzo.com> wrote:
> This table by default takes 32KiB which is 3rd memory order.
> Meanwhile, this memory is not aimed for DMA operation and could be
> safely allocated by vmalloc.
>
> Signed-off-by: Jan Dakinevich <jan.dakinevich@...tuozzo.com>
> ---
> drivers/infiniband/ulp/ipoib/ipoib_main.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/infiniband/ulp/ipoib/ipoib_main.c
> b/drivers/infiniband/ulp/ipoib/ipoib_main.c index 26cde95..cb752df
> 100644 --- a/drivers/infiniband/ulp/ipoib/ipoib_main.c
> +++ b/drivers/infiniband/ulp/ipoib/ipoib_main.c
> @@ -1526,7 +1526,7 @@ static int ipoib_neigh_hash_init(struct
> ipoib_dev_priv *priv) return -ENOMEM;
> set_bit(IPOIB_STOP_NEIGH_GC, &priv->flags);
> size = roundup_pow_of_two(arp_tbl.gc_thresh3);
> - buckets = kcalloc(size, sizeof(*buckets), GFP_KERNEL);
> + buckets = kvcalloc(size, sizeof(*buckets), GFP_KERNEL);
> if (!buckets) {
> kfree(htbl);
> return -ENOMEM;
> @@ -1554,7 +1554,7 @@ static void neigh_hash_free_rcu(struct rcu_head
> *head) struct ipoib_neigh __rcu **buckets = htbl->buckets;
> struct ipoib_neigh_table *ntbl = htbl->ntbl;
>
> - kfree(buckets);
> + kvfree(buckets);
> kfree(htbl);
> complete(&ntbl->deleted);
> }
ping
--
Best regards
Jan Dakinevich
Powered by blists - more mailing lists