Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

skd: Use pci_enable_msix_exact() instead of pci_enable_msix_range()

Function pci_enable_msix_exact() is a variation of
pci_enable_msix_range() that allows a device driver
to request a particular number of MSI-X interrupts,
rather than any number within a specified range.

Signed-off-by: Alexander Gordeev <agordeev@redhat.com>
Cc: Jens Axboe <axboe@kernel.dk>
Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Cc: Kyungmin Park <kyungmin.park@samsung.com>
Cc: linux-pci@vger.kernel.org
Signed-off-by: Jens Axboe <axboe@fb.com>

authored by

Alexander Gordeev and committed by
Jens Axboe
01aad3f0 49fd524f

+3 -4
+3 -4
drivers/block/skd_main.c
··· 3944 3944 for (i = 0; i < SKD_MAX_MSIX_COUNT; i++) 3945 3945 entries[i].entry = i; 3946 3946 3947 - rc = pci_enable_msix_range(pdev, entries, 3948 - SKD_MIN_MSIX_COUNT, SKD_MAX_MSIX_COUNT); 3949 - if (rc < 0) { 3947 + rc = pci_enable_msix_exact(pdev, entries, SKD_MAX_MSIX_COUNT); 3948 + if (rc) { 3950 3949 pr_err("(%s): failed to enable MSI-X %d\n", 3951 3950 skd_name(skdev), rc); 3952 3951 goto msix_out; 3953 3952 } 3954 3953 3955 - skdev->msix_count = rc; 3954 + skdev->msix_count = SKD_MAX_MSIX_COUNT; 3956 3955 skdev->msix_entries = kzalloc(sizeof(struct skd_msix_entry) * 3957 3956 skdev->msix_count, GFP_KERNEL); 3958 3957 if (!skdev->msix_entries) {