Re: [PATCH] NVMe: Only release requested regions

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



>  static void nvme_dev_unmap(struct nvme_dev *dev)
>  {
> +	struct pci_dev *pdev = to_pci_dev(dev->dev);
> +	int bars;
> +
>  	if (dev->bar)
>  		iounmap(dev->bar);
> -	pci_release_regions(to_pci_dev(dev->dev));
> +
> +	bars = pci_select_bars(pdev, IORESOURCE_MEM);
> +	pci_release_selected_regions(pdev, bars);

This looks fine, but I really hate this API.

Can someone add these two nice helpers to pci.h:

static inline int
pci_request_mem_regions(struct pci_dev *pdev, const char *name)
{
	return pci_request_selected_regions(pdev,
			pci_select_bars(pdev, IORESOURCE_MEM), name);
}

static inline void
pci_release_mem_regions(struct pci_dev *pdev)
{
	return pci_release_selected_regions(pdev,
			pci_select_bars(pdev, IORESOURCE_MEM));
}

But for now this should do it:

Reviewed-by: Christoph Hellwig <hch@xxxxxx>
--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux