Message ID | 20240701034102.84207-1-make24@iscas.ac.cn (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drivers: scsi: megaraid: Add missing check for dma_set_mask | expand |
> pdev->dev cannot perform DMA properly if dma_set_mask() returns non-zero. Can a wording approach (like the following) become a part of a better change description? Direct memory access can not be properly performed any more after a dma_set_mask() call failed. > Add check for dma_set_mask() How do you think about to avoid a repeated reference to a function name? > return the error if it fails. How can this happen after you did not store the return value (in the local variable “error”) for further usage (according to your proposed source code adjustment)? … > Signed-off-by: Haoxiang Li <make24@iscas.ac.cn> I find it interesting that another personal name is presented here. I noticed that some patches were published with the name “Ma Ke” previously. How will requirements be resolved for the Developer's Certificate of Origin? https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/submitting-patches.rst?h=v6.10-rc6#n398 How do you think about to use a summary phrase like “Complete error handling in megaraid_probe_one()”? Regards, Markus
diff --git a/drivers/scsi/megaraid.c b/drivers/scsi/megaraid.c index 38976f94453e..5ddcba488c89 100644 --- a/drivers/scsi/megaraid.c +++ b/drivers/scsi/megaraid.c @@ -4406,10 +4406,12 @@ megaraid_probe_one(struct pci_dev *pdev, const struct pci_device_id *id) /* Set the Mode of addressing to 64 bit if we can */ if ((adapter->flag & BOARD_64BIT) && (sizeof(dma_addr_t) == 8)) { - dma_set_mask(&pdev->dev, DMA_BIT_MASK(64)); + if (dma_set_mask(&pdev->dev, DMA_BIT_MASK(64))) + goto out_free_mbox; adapter->has_64bit_addr = 1; } else { - dma_set_mask(&pdev->dev, DMA_BIT_MASK(32)); + if (dma_set_mask(&pdev->dev, DMA_BIT_MASK(32))) + goto out_free_mbox; adapter->has_64bit_addr = 0; }
pdev->dev cannot perform DMA properly if dma_set_mask() returns non-zero. Add check for dma_set_mask() and return the error if it fails. Fixes: ec090ef8cd1c ("scsi: megaraid: Remove pci-dma-compat wrapper API") Signed-off-by: Haoxiang Li <make24@iscas.ac.cn> --- drivers/scsi/megaraid.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)