]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
dmaengine: dw-edma: Fix confusing cleanup.h syntax
authorKrzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
Mon, 8 Dec 2025 02:07:30 +0000 (03:07 +0100)
committerVinod Koul <vkoul@kernel.org>
Tue, 16 Dec 2025 12:52:44 +0000 (18:22 +0530)
Initializing automatic __free variables to NULL without need (e.g.
branches with different allocations), followed by actual allocation is
in contrary to explicit coding rules guiding cleanup.h:

"Given that the "__free(...) = NULL" pattern for variables defined at
the top of the function poses this potential interdependency problem the
recommendation is to always define and assign variables in one statement
and not group variable definitions at the top of the function when
__free() is used."

Code does not have a bug, but is less readable and uses discouraged
coding practice, so fix that by moving declaration to the place of
assignment.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
Reviewed-by: Manivannan Sadhasivam <mani@kernel.org>
Link: https://patch.msgid.link/20251208020729.4654-2-krzysztof.kozlowski@oss.qualcomm.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
drivers/dma/dw-edma/dw-edma-pcie.c

index 3371e0a76d3ca155de36134a51a852fd7c2b2b02..e9caf8adca1fca3983504f76feaed131e2fdac63 100644 (file)
@@ -161,13 +161,13 @@ static int dw_edma_pcie_probe(struct pci_dev *pdev,
                              const struct pci_device_id *pid)
 {
        struct dw_edma_pcie_data *pdata = (void *)pid->driver_data;
-       struct dw_edma_pcie_data *vsec_data __free(kfree) = NULL;
        struct device *dev = &pdev->dev;
        struct dw_edma_chip *chip;
        int err, nr_irqs;
        int i, mask;
 
-       vsec_data = kmalloc(sizeof(*vsec_data), GFP_KERNEL);
+       struct dw_edma_pcie_data *vsec_data __free(kfree) =
+               kmalloc(sizeof(*vsec_data), GFP_KERNEL);
        if (!vsec_data)
                return -ENOMEM;