[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <515E827C.3070702@redhat.com>
Date: Fri, 05 Apr 2013 09:51:24 +0200
From: Ivan Vecera <ivecera@...hat.com>
To: David Miller <davem@...emloft.net>
CC: Craig Hada <craig.hada@...com>, netdev@...r.kernel.org,
sathya.perla@...lex.com, subbu.seetharaman@...lex.com,
ajit.khaparde@...lex.com, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 net-next] drivers/net: Enable IOMMU pass through for
be2net
On 01/19/2013 03:23 AM, Craig Hada wrote:
> This patch sets the coherent DMA mask to 64-bit after the be2net driver
> has been acknowledged that the system is 64-bit DMA capable. The coherent
> DMA mask is examined by the Intel IOMMU driver to determine whether to
> allow pass through context mapping for all devices. With this patch, the
> be2net driver combined with be2net compatible hardware provides
> comparable performance to the case where vt-d is disabled. The main use
> case for this change is to decrease the time necessary to copy virtual
> machine memory during KVM live migration instantiations.
>
> This patch was tested on a system that enables the IOMMU in non-coherent
> mode. Two DMA remapper issues were encountered in the previous version and
> both patches have been committed.
> commit ea2447f700cab264019b52e2b417d689e052dcfd
> commit 2e12bc29fc5a12242d68e11875db3dd58efad9ff
>
> Signed-off-by: Craig Hada <craig.hada@...com>
> ---
> drivers/net/ethernet/emulex/benet/be_main.c | 6 ++++++
> 1 files changed, 6 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/net/ethernet/emulex/benet/be_main.c b/drivers/net/ethernet/emulex/benet/be_main.c
> index 9dca22b..b507e99 100644
> --- a/drivers/net/ethernet/emulex/benet/be_main.c
> +++ b/drivers/net/ethernet/emulex/benet/be_main.c
> @@ -4052,6 +4052,12 @@ static int be_probe(struct pci_dev *pdev, const struct pci_device_id *pdev_id)
>
> status = dma_set_mask(&pdev->dev, DMA_BIT_MASK(64));
> if (!status) {
> + status = dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(64));
> + if (status < 0) {
> + dev_err(&pdev->dev,
> + "dma_set_coherent_mask failed, aborting\n");
> + goto free_netdev;
> + }
> netdev->features |= NETIF_F_HIGHDMA;
> } else {
> status = dma_set_mask(&pdev->dev, DMA_BIT_MASK(32));
>
Dave, I'd like to ask when do you plan to apply this patch?
Thanks,
Ivan
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists