* New VT-D spec available
@ 2007-05-16 18:47 Nakajima, Jun
[not found] ` <8FFF7E42E93CC646B632AB40643802A8031F5F10-1a9uaKK1+wJcIJlls4ac1rfspsVTdybXVpNB7YpNyf8@public.gmane.org>
0 siblings, 1 reply; 5+ messages in thread
From: Nakajima, Jun @ 2007-05-16 18:47 UTC (permalink / raw)
To: kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f
An updated specification (Rev 1.0 update) of Intel(r) virtualization
technology for Directed I/O is now available on Intel web site:
http://download.intel.com/technology/computing/vptech/Intel(r)_VT_for_Di
rect_IO.pdf
The specification update includes DMA remapping capability, Interrupt
remapping capability, queue management, invalidation information and
enhancements.
We are thinking how this should be enabled for KVM as well especially
when assigning real devices to guests. Suggestions are welcome.
Jun
---
Intel Open Source Technology Center
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
^ permalink raw reply [flat|nested] 5+ messages in thread[parent not found: <8FFF7E42E93CC646B632AB40643802A8031F5F10-1a9uaKK1+wJcIJlls4ac1rfspsVTdybXVpNB7YpNyf8@public.gmane.org>]
* Re: New VT-D spec available [not found] ` <8FFF7E42E93CC646B632AB40643802A8031F5F10-1a9uaKK1+wJcIJlls4ac1rfspsVTdybXVpNB7YpNyf8@public.gmane.org> @ 2007-05-20 7:46 ` Avi Kivity [not found] ` <464FFCDB.7080408-atKUWr5tajBWk0Htik3J/w@public.gmane.org> 0 siblings, 1 reply; 5+ messages in thread From: Avi Kivity @ 2007-05-20 7:46 UTC (permalink / raw) To: Nakajima, Jun; +Cc: kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f Nakajima, Jun wrote: > An updated specification (Rev 1.0 update) of Intel(r) virtualization > technology for Directed I/O is now available on Intel web site: > > http://download.intel.com/technology/computing/vptech/Intel(r)_VT_for_Di > rect_IO.pdf > > The specification update includes DMA remapping capability, Interrupt > remapping capability, queue management, invalidation information and > enhancements. > > We are thinking how this should be enabled for KVM as well especially > when assigning real devices to guests. Suggestions are welcome. > I've had a quick look-see. There are two general approaches which I think make sense: - tightly coupled kvm integration, where kvm is extended with a root-only 'assign pci dev x to this vm'. As the page table format is the same as used by ept (I'm guessing... haven't actually read the ept spec), this should be quite easy to do on once npt/ept support is integrated. - general interface for manipulating VT-d, with the ability to use it with kvm. With this, it is possible to assign pci devices to ordinary userspace processes, some of which could be hosting virtual machines. This may fit will with the UIO patchset. Unless I misread things, VT-d does not honor the U/S bit on the page table entries. That makes the general approach fairly difficult. I would recommend starting with the tightly-coupled, less generic approach first, and generalizing it if/when there is demand for it. -- error compiling committee.c: too many arguments to function ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ^ permalink raw reply [flat|nested] 5+ messages in thread
[parent not found: <464FFCDB.7080408-atKUWr5tajBWk0Htik3J/w@public.gmane.org>]
* Re: New VT-D spec available [not found] ` <464FFCDB.7080408-atKUWr5tajBWk0Htik3J/w@public.gmane.org> @ 2007-05-21 21:42 ` Nakajima, Jun [not found] ` <8FFF7E42E93CC646B632AB40643802A80327893D-1a9uaKK1+wJcIJlls4ac1rfspsVTdybXVpNB7YpNyf8@public.gmane.org> 0 siblings, 1 reply; 5+ messages in thread From: Nakajima, Jun @ 2007-05-21 21:42 UTC (permalink / raw) To: Avi Kivity; +Cc: kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f Avi Kivity wrote: > Nakajima, Jun wrote: > > An updated specification (Rev 1.0 update) of Intel(r) virtualization > > technology for Directed I/O is now available on Intel web site: > > > > http://download.intel.com/technology/computing/vptech/Intel(r)_VT_for_Di > > rect_IO.pdf > > > > The specification update includes DMA remapping capability, Interrupt > > remapping capability, queue management, invalidation information and > > enhancements. > > > > We are thinking how this should be enabled for KVM as well especially > > when assigning real devices to guests. Suggestions are welcome. > > > > I've had a quick look-see. There are two general approaches which I > think make sense: > > - tightly coupled kvm integration, where kvm is extended with a > root-only 'assign pci dev x to this vm'. As the page table format is > the same as used by ept (I'm guessing... haven't actually read the ept > spec), this should be quite easy to do on once npt/ept support is > integrated. I agree that it's straightforward to handle those page tables. The question is interrupt remapping, i.e. how to inject particular external interupts to the vm that is reposible for the interrupts without impacting the kernel code. We are considering the irq chip infrastrure. > > - general interface for manipulating VT-d, with the ability to use it > with kvm. With this, it is possible to assign pci devices to ordinary > userspace processes, some of which could be hosting virtual machines. > This may fit will with the UIO patchset. > > Unless I misread things, VT-d does not honor the U/S bit on the page > table entries. That makes the general approach fairly difficult. I > would recommend starting with the tightly-coupled, less generic approach > first, and generalizing it if/when there is demand for it. I agree that we should start with the tightly-coupled. Jun --- Intel Open Source Technology Center ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ^ permalink raw reply [flat|nested] 5+ messages in thread
[parent not found: <8FFF7E42E93CC646B632AB40643802A80327893D-1a9uaKK1+wJcIJlls4ac1rfspsVTdybXVpNB7YpNyf8@public.gmane.org>]
* Re: New VT-D spec available [not found] ` <8FFF7E42E93CC646B632AB40643802A80327893D-1a9uaKK1+wJcIJlls4ac1rfspsVTdybXVpNB7YpNyf8@public.gmane.org> @ 2007-05-22 7:31 ` Avi Kivity [not found] ` <46529C3E.8090006-atKUWr5tajBWk0Htik3J/w@public.gmane.org> 0 siblings, 1 reply; 5+ messages in thread From: Avi Kivity @ 2007-05-22 7:31 UTC (permalink / raw) To: Nakajima, Jun; +Cc: kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f Nakajima, Jun wrote: > I agree that it's straightforward to handle those page tables. The > question is interrupt remapping, i.e. how to inject particular external > interupts to the vm that is reposible for the interrupts without > impacting the kernel code. We are considering the irq chip infrastrure. > > So Windows guests would be handled by the regular apic emulation, without direct injection? -- Do not meddle in the internals of kernels, for they are subtle and quick to panic. ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ^ permalink raw reply [flat|nested] 5+ messages in thread
[parent not found: <46529C3E.8090006-atKUWr5tajBWk0Htik3J/w@public.gmane.org>]
* Re: New VT-D spec available [not found] ` <46529C3E.8090006-atKUWr5tajBWk0Htik3J/w@public.gmane.org> @ 2007-05-22 17:56 ` Nakajima, Jun 0 siblings, 0 replies; 5+ messages in thread From: Nakajima, Jun @ 2007-05-22 17:56 UTC (permalink / raw) To: Avi Kivity; +Cc: kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f Avi Kivity wrote: > Nakajima, Jun wrote: > > I agree that it's straightforward to handle those page tables. The > > question is interrupt remapping, i.e. how to inject particular external > > interupts to the vm that is reposible for the interrupts without > > impacting the kernel code. We are considering the irq chip infrastrure. > > > > > > So Windows guests would be handled by the regular apic emulation, > without direct injection? Direct injection is almost impossible to handle because such guests can be scheduled out. And they cannot get other irrelevant interrutps. So (at least part of) such APIC emulation should be in the kernel. Jun --- Intel Open Source Technology Center ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2007-05-22 17:56 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-05-16 18:47 New VT-D spec available Nakajima, Jun
[not found] ` <8FFF7E42E93CC646B632AB40643802A8031F5F10-1a9uaKK1+wJcIJlls4ac1rfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2007-05-20 7:46 ` Avi Kivity
[not found] ` <464FFCDB.7080408-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-05-21 21:42 ` Nakajima, Jun
[not found] ` <8FFF7E42E93CC646B632AB40643802A80327893D-1a9uaKK1+wJcIJlls4ac1rfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2007-05-22 7:31 ` Avi Kivity
[not found] ` <46529C3E.8090006-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-05-22 17:56 ` Nakajima, Jun
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox