<feed xmlns='http://www.w3.org/2005/Atom'>
<title>bwlp/qemu.git/migration-rdma.c, branch spice_video_codecs</title>
<subtitle>Experimental fork of QEMU with video encoding patches</subtitle>
<id>https://git.openslx.org/bwlp/qemu.git/atom/migration-rdma.c?h=spice_video_codecs</id>
<link rel='self' href='https://git.openslx.org/bwlp/qemu.git/atom/migration-rdma.c?h=spice_video_codecs'/>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/'/>
<updated>2014-12-16T12:17:36+00:00</updated>
<entry>
<title>Start migrating migration code into a migration directory</title>
<updated>2014-12-16T12:17:36+00:00</updated>
<author>
<name>Dr. David Alan Gilbert</name>
</author>
<published>2014-12-12T11:13:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=60fe637bf0e4d7989e21e50f52526444765c63b4'/>
<id>urn:sha1:60fe637bf0e4d7989e21e50f52526444765c63b4</id>
<content type='text'>
The migration code now occupies a fair chunk of the top level .c
files, it seems time to give it it's own directory.

I've not touched:
   arch_init.c - that's mostly RAM migration but has a few random other
                 bits
   savevm.c    - because it's built target specific

This is purely a code move; no code has changed.
   - it fails checkpatch because of old violations, it feels safer
     to keep this as purely a move and fix those at some mythical future
     date.

The xbzrle and vmstate tests are now only run for softmmu builds
since they require files in the migrate/ directory which is only built
for softmmu.

Signed-off-by: Dr. David Alan Gilbert &lt;dgilbert@redhat.com&gt;
Signed-off-by: Amit Shah &lt;amit.shah@redhat.com&gt;
</content>
</entry>
<entry>
<title>rdma: Fix incorrect description in comments</title>
<updated>2014-09-20T13:55:53+00:00</updated>
<author>
<name>zhanghailiang</name>
</author>
<published>2014-09-12T06:03:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=971ae6ef4772efe2adda3d773f334b9476ffa594'/>
<id>urn:sha1:971ae6ef4772efe2adda3d773f334b9476ffa594</id>
<content type='text'>
Since we have supported memory hotplug, VM's ram include pc.ram
and hotplug-memory.

Fix the confused description for rdma migration: pc.ram -&gt; VM's ram

Signed-off-by: zhanghailiang &lt;zhang.zhanghailiang@huawei.com&gt;
Signed-off-by: Michael Tokarev &lt;mjt@tls.msk.ru&gt;
</content>
</entry>
<entry>
<title>rdma: bug fixes</title>
<updated>2014-06-23T17:09:50+00:00</updated>
<author>
<name>Michael R. Hines</name>
</author>
<published>2014-02-18T02:34:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=e325b49a320b493cc5d69e263751ff716dc458fe'/>
<id>urn:sha1:e325b49a320b493cc5d69e263751ff716dc458fe</id>
<content type='text'>
1. Fix small memory leak in parsing inet address from command line in data_init()
2. Fix ibv_post_send() return value check and pass error code back up correctly.
3. Fix rdma_destroy_qp() segfault after failure to connect to destination.

Reported-by: frank.yangjie@gmail.com
Reported-by: dgilbert@redhat.com
Signed-off-by: Michael R. Hines &lt;mrhines@us.ibm.com&gt;
Signed-off-by: Juan Quintela &lt;quintela@redhat.com&gt;
</content>
</entry>
<entry>
<title>rdma: Fix block during rdma migration</title>
<updated>2014-06-16T02:55:27+00:00</updated>
<author>
<name>Gonglei</name>
</author>
<published>2014-05-13T12:25:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=2a9343470432573acf06379bcbf8e5e6568507e4'/>
<id>urn:sha1:2a9343470432573acf06379bcbf8e5e6568507e4</id>
<content type='text'>
If the networking break or there's something wrong with rdma
device(ib0 with no IP) during rdma migration, the main_loop of
qemu will be blocked in rdma_destroy_id. I add rdma_ack_cm_event
to fix this bug.

Signed-off-by: Mo Yuxiang &lt;Moyuxiang@huawei.com&gt;
Signed-off-by: Gonglei &lt;arei.gonglei@huawei.com&gt;
Reviewed-by: Michael R. Hines &lt;mrhines@us.ibm.com&gt;
Signed-off-by: Juan Quintela &lt;quintela@redhat.com&gt;
</content>
</entry>
<entry>
<title>rdma: rename 'x-rdma' =&gt; 'rdma'</title>
<updated>2014-02-25T13:30:28+00:00</updated>
<author>
<name>Michael R. Hines</name>
</author>
<published>2013-12-18T20:52:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=41310c68781d742fa9bbfd5fcb1df9b7f23f5759'/>
<id>urn:sha1:41310c68781d742fa9bbfd5fcb1df9b7f23f5759</id>
<content type='text'>
As far as we can tell, all known bugs have been fixed:

1. Parallel migrations are working
2. IPv6 migration is working
3. virt-test is working

I'm not comfortable sending the revised libvirt patch
until this is accepted or review suggestions are addressed,
(including pin-all support. It does not make sense to
remove experimental for one thing and not the other. That's
too many trips through the libvirt community).

Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
Signed-off-by: Michael R. Hines &lt;mrhines@us.ibm.com&gt;
Signed-off-by: Juan Quintela &lt;quintela@redhat.com&gt;
</content>
</entry>
<entry>
<title>rdma: constify ram_chunk_{index, start, end}</title>
<updated>2013-09-24T11:22:50+00:00</updated>
<author>
<name>Isaku Yamahata</name>
</author>
<published>2013-09-04T02:32:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=dd286ed700c6ca2768ac3452bc5b79af1709296a'/>
<id>urn:sha1:dd286ed700c6ca2768ac3452bc5b79af1709296a</id>
<content type='text'>
Signed-off-by: Isaku Yamahata &lt;yamahata@private.email.ne.jp&gt;
Signed-off-by: Juan Quintela &lt;quintela@redhat.com&gt;
</content>
</entry>
<entry>
<title>rdma: clean up of qemu_rdma_cleanup()</title>
<updated>2013-09-24T11:22:50+00:00</updated>
<author>
<name>Isaku Yamahata</name>
</author>
<published>2013-08-13T02:12:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=5a91337cdf343b94474f8bbecab85a8c00f6d2a1'/>
<id>urn:sha1:5a91337cdf343b94474f8bbecab85a8c00f6d2a1</id>
<content type='text'>
- It can't be determined by RDMAContext::cm_id != NULL if the connection
  is established or not.
- RDMAContext::cm_id is leaked and not destroyed because it is set to NULL
  too early.
- RDMAContext::qp is created by rdma_create_qp() so that it should be destroyed
  by rdma_destroy_qp(). not ibv_destroy_qp()

Cc: Michael R. Hines &lt;mrhines@us.ibm.com&gt;
Signed-off-by: Isaku Yamahata &lt;yamahata@private.email.ne.jp&gt;
Signed-off-by: Juan Quintela &lt;quintela@redhat.com&gt;
</content>
</entry>
<entry>
<title>rdma: silly ipv6 bugfix</title>
<updated>2013-09-01T15:03:43+00:00</updated>
<author>
<name>Michael R. Hines</name>
</author>
<published>2013-08-19T02:27:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=c89aa2f1851b08c3efa8a1070c0a6b9a36e1227f'/>
<id>urn:sha1:c89aa2f1851b08c3efa8a1070c0a6b9a36e1227f</id>
<content type='text'>
My bad - but it's very important for us to warn the user that
IPv6 is broken on RoCE in linux right now, until linux releases
a fixed version.

Signed-off-by: Michael R. Hines &lt;mrhines@us.ibm.com&gt;
Signed-off-by: Michael Tokarev &lt;mjt@tls.msk.ru&gt;
</content>
</entry>
<entry>
<title>misc: Fix some typos in names and comments</title>
<updated>2013-09-01T14:59:24+00:00</updated>
<author>
<name>Stefan Weil</name>
</author>
<published>2013-08-18T17:40:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=4c293dc6e4cf0421e13870962e1e8ccbb810b2a6'/>
<id>urn:sha1:4c293dc6e4cf0421e13870962e1e8ccbb810b2a6</id>
<content type='text'>
Most typos were found using a modified version of codespell:

accross -&gt; across
issueing -&gt; issuing
TICNT_THRESHHOLD -&gt; TICNT_THRESHOLD
bandwith -&gt; bandwidth
VCARD_7816_PROPIETARY -&gt; VCARD_7816_PROPRIETARY
occured -&gt; occurred
gaurantee -&gt; guarantee
sofware -&gt; software

Signed-off-by: Stefan Weil &lt;sw@weilnetz.de&gt;
Signed-off-by: Michael Tokarev &lt;mjt@tls.msk.ru&gt;
</content>
</entry>
<entry>
<title>rdma: IPv6 over Ethernet (RoCE) is broken in linux - workaround</title>
<updated>2013-08-12T14:31:16+00:00</updated>
<author>
<name>Michael R. Hines</name>
</author>
<published>2013-08-09T20:05:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=7fc5b13fd7b05babc7bcad9dcb8281ae202a9494'/>
<id>urn:sha1:7fc5b13fd7b05babc7bcad9dcb8281ae202a9494</id>
<content type='text'>
We've gotten reports from multiple testers (including Frank Yangjie
and myself) that RDMA IPv6 support over RocE (Ethernet) is broken
in linux.

A patch to Linux is still in review:

http://comments.gmane.org/gmane.linux.drivers.rdma/16448

If the user is listening on '[::]', then we will not have a opened a device
yet and have no way of verifying if the device is RoCE or not.

In this case, the source VM will throw an error for ALL types of
connections (both IPv4 and IPv6) if the destination machine does not have
a regular infiniband network available for use.

The only way to gaurantee that an error is thrown for broken kernels is
for the management software to choose a *specific* interface at bind time
and validate what time of hardware it is.

Unfortunately, this puts the user in a fix:

 If the source VM connects with an IPv4 address without knowing that the
 destination has bound to '[::]' the migration will unconditionally fail
 unless the management software is not explicitly listening on the the IPv4
 address while using a RoCE-based device.

 If the source VM connects with an IPv6 address, then we're OK because we can
 throw an error on the source (and similarly on the destination).

 But in mixed environments, this will be broken for a while until it is fixed
 inside linux.

We do provide a *tiny* bit of help in mixed environments, though in this patch:

We can list all of the devices in the system and check to see if all the
devices are RoCE or Infiniband.

If we detect that we have a *pure* RoCE environment, then we can safely
thrown an error even if the management sofware has specified '[::]' as the
bind address.

However, if there is are multiple hetergeneous devices, then we cannot make
this assumption and the user just has to be sure they know what they are doing.

Signed-off-by: Michael R. Hines &lt;mrhines@us.ibm.com&gt;
Message-id: 1376078746-24948-6-git-send-email-mrhines@linux.vnet.ibm.com
Signed-off-by: Anthony Liguori &lt;aliguori@us.ibm.com&gt;
</content>
</entry>
</feed>
