scsi: message: fusion: Use dma_alloc_coherent() in mptsas_exp_repmanufacture_info()
authorChristophe JAILLET <christophe.jaillet@wanadoo.fr>
Thu, 6 Jan 2022 21:54:26 +0000 (22:54 +0100)
committerMartin K. Petersen <martin.petersen@oracle.com>
Mon, 10 Jan 2022 15:33:51 +0000 (10:33 -0500)
In [1], Christoph Hellwig has proposed to remove the wrappers in
include/linux/pci-dma-compat.h.

Some reasons why this API should be removed have been given by Julia Lawall
in [2].

The only caller of mptsas_exp_repmanufacture_info() is
mptsas_probe_one_phy(). This function already calls sas_end_device_alloc()
or sas_expander_alloc(). They both already use GFP_KERNEL.

As no spin_lock is held at this point, it is safe to also use GFP_KERNEL
here.

[1]: https://lore.kernel.org/kernel-janitors/20200421081257.GA131897@infradead.org/
[2]: https://lore.kernel.org/kernel-janitors/alpine.DEB.2.22.394.2007120902170.2424@hadrien/

Link: https://lore.kernel.org/r/d78d4a5b096897932808ed7e3a4540db1687c25d.1641500561.git.christophe.jaillet@wanadoo.fr
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/message/fusion/mptsas.c

index 0363b2a2264d075724de29e206eea2999262723b..9b40be04710cd54014bcdc70685fa2cdf466905b 100644 (file)
@@ -2896,7 +2896,8 @@ mptsas_exp_repmanufacture_info(MPT_ADAPTER *ioc,
 
        sz = sizeof(struct rep_manu_request) + sizeof(struct rep_manu_reply);
 
-       data_out = pci_alloc_consistent(ioc->pcidev, sz, &data_out_dma);
+       data_out = dma_alloc_coherent(&ioc->pcidev->dev, sz, &data_out_dma,
+                                     GFP_KERNEL);
        if (!data_out) {
                printk(KERN_ERR "Memory allocation failure at %s:%d/%s()!\n",
                        __FILE__, __LINE__, __func__);