[openstack-dev] [srv-apl-arch:7353] Re: [nova] Discussions for ivshmem support in OpenStack Nova

TETSURO NAKAMURA nakamura.tetsuro at lab.ntt.co.jp
Thu Jul 27 01:12:30 UTC 2017

On 2017/07/27 0:58, Daniel P. Berrange wrote:
> On Wed, Jul 26, 2017 at 11:53:06AM -0400, Jay Pipes wrote:
>> On 07/26/2017 09:57 AM, Daniel P. Berrange wrote:
>>> On Wed, Jul 26, 2017 at 09:50:23AM -0400, Jay Pipes wrote:
>>>> On 07/26/2017 03:06 AM, TETSURO NAKAMURA wrote:
>>>>> Hi Nova team,
>>>>> It has been quite a long time since the last discussion,
>>>>> but let me make sure one thing about the thread below.
>>>>> IIUC, Nova is not welcome ivshmem support because it is no longer
>>>>> supported by DPDK+QEMU.
>>>>> But how would you say if it is supported out of DPDK-tree and can be
>>>>> used from the newest qemu version ?
>>>>> We are now developing SPP, a DPDK-based vswitch, and thinking about
>>>>> trying to implement ivshmem support under our SPP code tree if nova (or
>>>>> at first libvirt community) is acceptable for ivshmem configuration.
>>>>> Your advice will be very helpful for our decision-making in our project.
>>>> I think this is a question that the libvirt community would first need to
>>>> weigh in on since Nova is downstream from libvirt -- at least in the sense
>>>> of low-level hypervisor support.
>>> Libvirt already supports ivshmem device config
>>>     http://libvirt.org/formatdomain.html#elementsShmem
>> Sorry, I suppose I should have said QEMU, not libvirt. Daniel, you were the
>> one that specifically discouraged doing anything on ivshmem to Tetsuro:
>> http://lists.openstack.org/pipermail/openstack-dev/2017-July/120136.html
> 'ivshmem' was the original device in QEMU and that is indeed still
> deprecated.
> There are now two replacements 'ivshmem-plain' and 'ivshmem-doorbell'
> which can be used instead, which are considered supported by QEMU,
> though most people will still recommend using 'vhostuser' instead
> if the use of ivshmem is at all network related.
> Regards,
> Daniel

Thank you very much for the information about current status of ivshmem 
in QEMU.
I now understand that 'ivshmem', 'ivshmem-plain' and 'ivshmem-doorbell' 
are different solutions, and libvirt already supports the latter two.

+ Mr. Sean Mooney
Did you mean that you caution against building new solutions ontop of 
'ivshmem' or ontop of 'ivshmem-plain' and 'ivshmem-doorbell' too?

Tetsuro Nakamura <nakamura.tetsuro at lab.ntt.co.jp>
NTT Network Service Systems Laboratories
TEL:0422 59 6914(National)/+81 422 59 6914(International)
3-9-11, Midori-Cho Musashino-Shi, Tokyo 180-8585 Japan

More information about the OpenStack-dev mailing list