<br>I was going to ask about DMA but wasn&#39;t sure, what does the host report on DMA and what does the guest OS report from cat /proc/dma?<br><br>Just curious if the host OS gives bogo-dma.<br><br>I am looking at timing issues which a think Free Switch has figured out along with T38 a while ago.<br>
<br>I care slightly about using an actual TDM card since that can be handled by Redfone or a USB device.<br><br>Thanks,<br>Steve Totaro<br><br><div class="gmail_quote">On Sun, Jul 10, 2011 at 4:11 AM, Tzafrir Cohen <span dir="ltr">&lt;<a href="mailto:tzafrir.cohen@xorcom.com">tzafrir.cohen@xorcom.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;"><div class="im">On Fri, Jul 08, 2011 at 07:28:39PM -0400, Doug Lytle wrote:<br>
&gt; Can you say a Virtualized Asterisk with a PRI card!<br>
&gt;<br>
&gt; <a href="http://www.phoronix.com/scan.php?page=news_item&amp;px=OTY0OQ" target="_blank">http://www.phoronix.com/scan.php?page=news_item&amp;px=OTY0OQ</a><br>
<br>
</div>I&#39;m not sure this is relevant to your everyday PRI card.<br>
<br>
Simple pass-through of PCI is rather simple to implement. It has been<br>
implemented for quite some time in e.g. qemu, IIRC.<br>
<br>
But there&#39;s one important feature that is tricky to implement: DMA.<br>
DMA allows a PCI card to basically free access to the memory of the<br>
system, without the CPU getting in the middle. Emulating this with the<br>
host CPU in the middle will work, but is exepnsive. But the host does<br>
not want to give the guest free access to the host&#39;s memory.<br>
<br>
The solution: IOMMU: <a href="http://en.wikipedia.org/wiki/Iommu" target="_blank">http://en.wikipedia.org/wiki/Iommu</a> .<br>
The CPU of the system has a Memory Management Unit (MMU) that<br>
maps virtual address spaces to processes. Likewise we know prevent the<br>
IO card from seeing physical addresses. Rather, it sees virtual<br>
addresses mapped by the IOMMU. Just like the operating system maps<br>
addresses for processes, the hypervisor maps address ranger to IO cards.<br>
<br>
See also the link in that Phoronix article:<br>
<a href="http://www.ibm.com/developerworks/linux/library/l-pci-passthrough/" target="_blank">http://www.ibm.com/developerworks/linux/library/l-pci-passthrough/</a><br>
<br>
I&#39;m not well familiar with the relevant hardware, but I believe that not<br>
only not every CPU supports this, but many (most?) PCI cards don&#39;t<br>
support IOMMU.<br>
<font color="#888888"><br>
--<br>
               Tzafrir Cohen<br>
icq#16849755              <a href="mailto:jabber%3Atzafrir.cohen@xorcom.com">jabber:tzafrir.cohen@xorcom.com</a><br>
+972-50-7952406           mailto:<a href="mailto:tzafrir.cohen@xorcom.com">tzafrir.cohen@xorcom.com</a><br>
<a href="http://www.xorcom.com" target="_blank">http://www.xorcom.com</a>  <a href="http://iax:guest@local.xorcom.com/tzafrir" target="_blank">iax:guest@local.xorcom.com/tzafrir</a><br>
</font><div><div></div><div class="h5"><br>
--<br>
_____________________________________________________________________<br>
-- Bandwidth and Colocation Provided by <a href="http://www.api-digital.com" target="_blank">http://www.api-digital.com</a> --<br>
New to Asterisk? Join us for a live introductory webinar every Thurs:<br>
               <a href="http://www.asterisk.org/hello" target="_blank">http://www.asterisk.org/hello</a><br>
<br>
asterisk-users mailing list<br>
To UNSUBSCRIBE or update options visit:<br>
   <a href="http://lists.digium.com/mailman/listinfo/asterisk-users" target="_blank">http://lists.digium.com/mailman/listinfo/asterisk-users</a><br>
</div></div></blockquote></div><br>