Re: [PATCH] scsi: libcxgbi: use kvzalloc instead of opencoded kzalloc/vzalloc

From: Joe Perches
Date: Fri Jul 31 2020 - 17:58:41 EST


On Sat, 2020-08-01 at 00:55 +0300, Denis Efremov wrote:
> Remove cxgbi_alloc_big_mem(), cxgbi_free_big_mem() functions
> and use kvzalloc/kvfree instead.

Sensible, thanks.

> diff --git a/drivers/scsi/cxgbi/libcxgbi.c b/drivers/scsi/cxgbi/libcxgbi.c
[]
> @@ -77,9 +77,9 @@ int cxgbi_device_portmap_create(struct cxgbi_device *cdev, unsigned int base,
> {
> struct cxgbi_ports_map *pmap = &cdev->pmap;
>
> - pmap->port_csk = cxgbi_alloc_big_mem(max_conn *
> - sizeof(struct cxgbi_sock *),
> - GFP_KERNEL);
> + pmap->port_csk = kvzalloc(array_size(max_conn,
> + sizeof(struct cxgbi_sock *)),
> + GFP_KERNEL);

missing __GFP_NOWARN

> diff --git a/drivers/scsi/cxgbi/libcxgbi.h b/drivers/scsi/cxgbi/libcxgbi.h
[]
> @@ -537,22 +537,6 @@ struct cxgbi_task_data {
> #define iscsi_task_cxgbi_data(task) \
> ((task)->dd_data + sizeof(struct iscsi_tcp_task))
>
> -static inline void *cxgbi_alloc_big_mem(unsigned int size,
> - gfp_t gfp)
> -{
> - void *p = kzalloc(size, gfp | __GFP_NOWARN);