]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
misc: pci_endpoint_test: Do not use managed IRQ functions
authorKunihiko Hayashi <hayashi.kunihiko@socionext.com>
Tue, 25 Feb 2025 11:02:52 +0000 (20:02 +0900)
committerKrzysztof Wilczyński <kwilczynski@kernel.org>
Fri, 14 Mar 2025 16:12:04 +0000 (16:12 +0000)
The pci_endpoint_test_request_irq() and pci_endpoint_test_release_irq()
are called repeatedly by the users through pci_endpoint_test_set_irq().
So using the managed version of IRQ functions within these functions
has no effect.

Suggested-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Link: https://lore.kernel.org/r/20250225110252.28866-7-hayashi.kunihiko@socionext.com
Signed-off-by: Krzysztof Wilczyński <kwilczynski@kernel.org>
drivers/misc/pci_endpoint_test.c

index 326e8e467c42b1b5062b1a24ae4e99b9a0a30c97..7a14114488a0be0b5b3e178c24613c33fd174eb6 100644 (file)
@@ -208,10 +208,9 @@ static void pci_endpoint_test_release_irq(struct pci_endpoint_test *test)
 {
        int i;
        struct pci_dev *pdev = test->pdev;
-       struct device *dev = &pdev->dev;
 
        for (i = 0; i < test->num_irqs; i++)
-               devm_free_irq(dev, pci_irq_vector(pdev, i), test);
+               free_irq(pci_irq_vector(pdev, i), test);
 
        test->num_irqs = 0;
 }
@@ -224,9 +223,9 @@ static int pci_endpoint_test_request_irq(struct pci_endpoint_test *test)
        struct device *dev = &pdev->dev;
 
        for (i = 0; i < test->num_irqs; i++) {
-               ret = devm_request_irq(dev, pci_irq_vector(pdev, i),
-                                      pci_endpoint_test_irqhandler,
-                                      IRQF_SHARED, test->name, test);
+               ret = request_irq(pci_irq_vector(pdev, i),
+                                 pci_endpoint_test_irqhandler, IRQF_SHARED,
+                                 test->name, test);
                if (ret)
                        goto fail;
        }