[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <200612071155.23412.amitkale@linsyssoft.com>
Date: Thu, 7 Dec 2006 11:55:22 +0530
From: "Amit S. Kale" <amitkale@...syssoft.com>
To: Stephen Hemminger <shemminger@...l.org>
Cc: David Miller <davem@...emloft.net>, muli@...ibm.com,
jeff@...zik.org, amitkale@...xen.com, netdev@...r.kernel.org,
brazilnut@...ibm.com, netxenproj@...syssoft.com, rob@...xen.com,
romieu@...zoreil.com, sanjeev@...xen.com, wendyx@...ibm.com
Subject: Re: network devices don't handle pci_dma_mapping_error()'s
We can let a driver handle dma mapping errors using these->
1.Reduce the size of a receive ring. This will free some possibly remapped
memory, reducing pressure on iommu. We also need to printk a message so that
a user knows the reason why receive ring was shrunk. Growing it when iommu
pressure goes down will result in a ping-pong.
2. Force processing of receive and transmit ring. This will ensure that the
buffers processed by hardware are freed, reducing iommu pressure.
3. If we need to do (1) and (2) a predefined number of times (say 20), stop
the queue. Stopping the queue in general will cause a ping-pong, so it should
be avoided as far as possible.
-Amit
On Thursday 07 December 2006 06:28, Stephen Hemminger wrote:
> The more robust way would be to stop the queue (like flow control)
> and return busy. You would need a timer though to handle the case
> where some disk i/o stole all the mappings and then network device flow
> blocked.
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists