Add get_dirtyrate_thread() functions to setup query-dirtyrate
framework.
Signed-off-by: Chuan Zheng
Signed-off-by: YanYing Zhuang
Reviewed-by: Dr. David Alan Gilbert
Reviewed-by: David Edmondson
---
migration/dirtyrate.c | 38 ++
migration/dirtyrate.h | 29
In order to sample real RAM, skip ramblock with size below MIN_RAMBLOCK_SIZE
which is set as 128M.
Signed-off-by: Chuan Zheng
Reviewed-by: David Edmondson
---
migration/dirtyrate.c | 18 ++
migration/dirtyrate.h | 5 +
2 files changed, 23 insertions(+)
diff --git
add DirtyRateStatus to denote calculating status.
Signed-off-by: Chuan Zheng
Reviewed-by: Dr. David Alan Gilbert
---
migration/dirtyrate.c | 22 ++
qapi/migration.json | 17 +
2 files changed, 39 insertions(+)
diff --git a/migration/dirtyrate.c b
Implement calculate_dirtyrate() function.
Signed-off-by: Chuan Zheng
Signed-off-by: YanYing Zhuang
---
migration/dirtyrate.c | 45 +++--
1 file changed, 43 insertions(+), 2 deletions(-)
diff --git a/migration/dirtyrate.c b/migration/dirtyrate.c
index
Add RamblockDirtyInfo to store sampled page info of each ramblock.
Signed-off-by: Chuan Zheng
Reviewed-by: Dr. David Alan Gilbert
Reviewed-by: David Edmondson
---
migration/dirtyrate.h | 18 ++
1 file changed, 18 insertions(+)
diff --git a/migration/dirtyrate.h b/migration
MigrationState is need for tls session build, add MigrationState
into MultiFDSendParams.
Signed-off-by: Chuan Zheng
Signed-off-by: Yan Jin
---
migration/multifd.c | 2 ++
migration/multifd.h | 2 ++
2 files changed, 4 insertions(+)
diff --git a/migration/multifd.c b/migration/multifd.c
index
multifd channel cleanup is need if multifd handshake failed,
let's extract it.
Signed-off-by: Chuan Zheng
Signed-off-by: Yan Jin
---
migration/multifd.c | 34 ++
1 file changed, 22 insertions(+), 12 deletions(-)
diff --git a/migration/multifd.c b/migration
add multifd_channel_connect to support for tls check.
Signed-off-by: Chuan Zheng
Signed-off-by: Yan Jin
---
migration/multifd.c | 47 +--
1 file changed, 45 insertions(+), 2 deletions(-)
diff --git a/migration/multifd.c b/migration/multifd.c
index
Record hash results for each sampled page, crc32 is taken to calculate
hash results for each sampled length in TARGET_PAGE_SIZE.
Signed-off-by: Chuan Zheng
Signed-off-by: YanYing Zhuang
Reviewed-by: David Edmondson
---
migration/dirtyrate.c | 125
add support for multifd tls-handshake
Signed-off-by: Chuan Zheng
Signed-off-by: Yan Jin
---
migration/multifd.c | 32 +++-
1 file changed, 31 insertions(+), 1 deletion(-)
diff --git a/migration/multifd.c b/migration/multifd.c
index b2076d7..2509187 100644
| 25.334s
|
| mempress 1024 300| Migration Failed| 25.617s
|
Chuan
add trace points for multifd-tls for debug.
Signed-off-by: Chuan Zheng
Signed-off-by: Yan Jin
---
migration/multifd.c| 10 +-
migration/trace-events | 5 +
2 files changed, 14 insertions(+), 1 deletion(-)
diff --git a/migration/multifd.c b/migration/multifd.c
index 2509187
Add trace_calls to make it easier to debug
Signed-off-by: Chuan Zheng
Reviewed-by: Dr. David Alan Gilbert
Reviewed-by: David Edmondson
---
migration/dirtyrate.c | 9 +
migration/trace-events | 8
2 files changed, 17 insertions(+)
diff --git a/migration/dirtyrate.c b
asured","dirty-rate":374,"start-time":3718293,"calc-time":1},"id":"libvirt-15"}
Further test dirtyrate by libvirt api like this:
virsh getdirtyrate [vmname] [sleep-time]
Chuan Zheng (12):
migration/dirtyrate: setup up query-dirtyrate framwo
migration_tls_client_create will be used in multifd-tls, let's
extract it.
Signed-off-by: Chuan Zheng
Signed-off-by: Yan Jin
---
migration/tls.c | 26 ++
migration/tls.h | 6 ++
2 files changed, 24 insertions(+), 8 deletions(-)
diff --git a/migration/tls.c b
Add dirtyrate statistics functions to record/update dirtyrate info.
Signed-off-by: Chuan Zheng
---
migration/dirtyrate.c | 32
migration/dirtyrate.h | 12
2 files changed, 44 insertions(+)
diff --git a/migration/dirtyrate.c b/migration/dirtyrate.c
RAMBLOCK_FOREACH_MIGRATABLE is need in dirtyrate measure,
move the existing definition up into migration/ram.h
Signed-off-by: Chuan Zheng
Reviewed-by: Dr. David Alan Gilbert
Reviewed-by: David Edmondson
---
migration/dirtyrate.c | 1 +
migration/ram.c | 11 +--
migration/ram.h
Compare page hash results for recorded sampled page.
Signed-off-by: Chuan Zheng
Signed-off-by: YanYing Zhuang
---
migration/dirtyrate.c | 63 +++
1 file changed, 63 insertions(+)
diff --git a/migration/dirtyrate.c b/migration/dirtyrate.c
index
Implement qmp_cal_dirty_rate()/qmp_get_dirty_rate() function which could be
called
Signed-off-by: Chuan Zheng
---
migration/dirtyrate.c | 62 +++
qapi/migration.json | 50 +
2 files changed, 112
Implement set_sample_page_period()/get_sample_page_period() to sleep
specific time between sample actions.
Signed-off-by: Chuan Zheng
Reviewed-by: Dr. David Alan Gilbert
Reviewed-by: David Edmondson
---
migration/dirtyrate.c | 24
migration/dirtyrate.h | 6 ++
2
hostname is need in multifd-tls, save hostname into MigrationState
Signed-off-by: Chuan Zheng
Signed-off-by: Yan Jin
---
migration/channel.c | 5 +
migration/migration.c | 1 +
migration/migration.h | 5 +
3 files changed, 11 insertions(+)
diff --git a/migration/channel.c b
34s
|
| mempress 1024 300| Migration Failed| 25.617s
|
Chuan Zheng (6):
migration/tls: save hostname into MigrationState
migration/tls: extr
add trace points for multifd-tls for debug.
Signed-off-by: Chuan Zheng
Signed-off-by: Yan Jin
---
migration/multifd.c| 10 +-
migration/trace-events | 5 +
2 files changed, 14 insertions(+), 1 deletion(-)
diff --git a/migration/multifd.c b/migration/multifd.c
index 8aea4e0
multifd channel cleanup is need if multifd handshake failed,
let's extract it.
Signed-off-by: Chuan Zheng
Signed-off-by: Yan Jin
Reviewed-by: Daniel P. Berrangé
---
migration/multifd.c | 34 ++
1 file changed, 22 insertions(+), 12 deletions(-)
diff --git
MigrationState is need for tls session build and tls hostname is need
for tls handshake, add both MigrationState and tls_hostname
into MultiFDSendParams.
Signed-off-by: Chuan Zheng
Signed-off-by: Yan Jin
---
migration/multifd.c | 5 +
migration/multifd.h | 4
2 files changed, 9
hostname is need in multifd-tls, save hostname into MigrationState.
Signed-off-by: Chuan Zheng
Signed-off-by: Yan Jin
---
migration/channel.c | 6 ++
migration/migration.c | 1 +
migration/migration.h | 5 +
3 files changed, 12 insertions(+)
diff --git a/migration/channel.c b
Similar like migration main thread, we need to do handshake
for each multifd thread.
Signed-off-by: Chuan Zheng
Signed-off-by: Yan Jin
Reviewed-by: Daniel P. Berrangé
---
migration/multifd.c | 77 +++--
1 file changed, 75 insertions(+), 2
migration_tls_client_create will be used in multifd-tls, let's
extract it.
Signed-off-by: Chuan Zheng
Signed-off-by: Yan Jin
Reviewed-by: Daniel P. Berrangé
---
migration/tls.c | 26 ++
migration/tls.h | 6 ++
2 files changed, 24 insertions(+), 8 deletions
Add get_dirtyrate_thread() functions to setup query-dirtyrate
framework.
Signed-off-by: Chuan Zheng
Signed-off-by: YanYing Zhuang
Reviewed-by: Dr. David Alan Gilbert
Reviewed-by: David Edmondson
Reviewed-by: Li Qiang
---
migration/dirtyrate.c | 38
Implement calculate_dirtyrate() function.
Signed-off-by: Chuan Zheng
Signed-off-by: YanYing Zhuang
Reviewed-by: Dr. David Alan Gilbert
Reviewed-by: Li Qiang
---
migration/dirtyrate.c | 45 +++--
1 file changed, 43 insertions(+), 2 deletions(-)
diff
Add RamblockDirtyInfo to store sampled page info of each ramblock.
Signed-off-by: Chuan Zheng
Reviewed-by: Dr. David Alan Gilbert
Reviewed-by: David Edmondson
Reviewed-by: Li Qiang
---
migration/dirtyrate.h | 18 ++
1 file changed, 18 insertions(+)
diff --git a/migration
RAMBLOCK_FOREACH_MIGRATABLE is need in dirtyrate measure,
move the existing definition up into migration/ram.h
Signed-off-by: Chuan Zheng
Reviewed-by: Dr. David Alan Gilbert
Reviewed-by: David Edmondson
Reviewed-by: Li Qiang
---
migration/dirtyrate.c | 1 +
migration/ram.c | 11
Implement is_sample_period_valid() to check if the sample period is vaild and
do set_sample_page_period() to sleep specific time between sample actions.
Signed-off-by: Chuan Zheng
Reviewed-by: Dr. David Alan Gilbert
Reviewed-by: David Edmondson
Reviewed-by: Li Qiang
---
migration/dirtyrate.c
Add trace_calls to make it easier to debug
Signed-off-by: Chuan Zheng
Reviewed-by: Dr. David Alan Gilbert
Reviewed-by: David Edmondson
---
migration/dirtyrate.c | 9 +
migration/trace-events | 8
2 files changed, 17 insertions(+)
diff --git a/migration/dirtyrate.c b
Record hash results for each sampled page, crc32 is taken to calculate
hash results for each sampled length in TARGET_PAGE_SIZE.
Signed-off-by: Chuan Zheng
Signed-off-by: YanYing Zhuang
Reviewed-by: David Edmondson
Reviewed-by: Li Qiang
---
migration/dirtyrate.c | 109
Compare page hash results for recorded sampled page.
Signed-off-by: Chuan Zheng
Signed-off-by: YanYing Zhuang
Reviewed-by: Dr. David Alan Gilbert
---
migration/dirtyrate.c | 63 +++
1 file changed, 63 insertions(+)
diff --git a/migration
Implement qmp_cal_dirty_rate()/qmp_get_dirty_rate() function which could be
called
Signed-off-by: Chuan Zheng
---
migration/dirtyrate.c | 62 +++
qapi/migration.json | 50 +
2 files changed, 112
Add dirtyrate statistics functions to record/update dirtyrate info.
Signed-off-by: Chuan Zheng
Reviewed-by: Dr. David Alan Gilbert
Reviewed-by: Li Qiang
---
migration/dirtyrate.c | 32
migration/dirtyrate.h | 12
2 files changed, 44 insertions
add DirtyRateStatus to denote calculating status.
Signed-off-by: Chuan Zheng
Reviewed-by: Dr. David Alan Gilbert
Reviewed-by: Li Qiang
---
migration/dirtyrate.c | 26 ++
qapi/migration.json | 17 +
2 files changed, 43 insertions(+)
diff --git
atus":"measured","dirty-rate":374,"start-time":3718293,"calc-time":1},"id":"libvirt-15"}
Further test dirtyrate by libvirt api like this:
virsh getdirtyrate [vmname] [sleep-time]
Chuan Zheng (12):
migration/dirtyrate: setup up query-dirtyra
In order to sample real RAM, skip ramblock with size below MIN_RAMBLOCK_SIZE
which is set as 128M.
Signed-off-by: Chuan Zheng
Reviewed-by: David Edmondson
Reviewed-by: Dr. David Alan Gilbert
Reviewed-by: Li Qiang
---
migration/dirtyrate.c | 21 +
migration/dirtyrate.h
nitor-command [vmname] '{"execute":"query-dirty-rate"}'
The qmp command returns like this:
{"return":{"status":"measured","dirty-rate":374,"start-time":3718293,"calc-time":1},"id":"libvirt-15"}
F
Add RamblockDirtyInfo to store sampled page info of each ramblock.
Signed-off-by: Chuan Zheng
Reviewed-by: Dr. David Alan Gilbert
Reviewed-by: David Edmondson
---
migration/dirtyrate.h | 18 ++
1 file changed, 18 insertions(+)
diff --git a/migration/dirtyrate.h b/migration
Add dirtyrate statistics functions to record/update dirtyrate info.
Signed-off-by: Chuan Zheng
Reviewed-by: Dr. David Alan Gilbert
---
migration/dirtyrate.c | 32
migration/dirtyrate.h | 12
2 files changed, 44 insertions(+)
diff --git a/migration
Implement qmp_cal_dirty_rate()/qmp_get_dirty_rate() function which could be
called
Signed-off-by: Chuan Zheng
---
migration/dirtyrate.c | 62 +++
qapi/migration.json | 50 +
2 files changed, 112
Record hash results for each sampled page, crc32 is taken to calculate
hash results for each sampled length in TARGET_PAGE_SIZE.
Signed-off-by: Chuan Zheng
Signed-off-by: YanYing Zhuang
Reviewed-by: David Edmondson
---
migration/dirtyrate.c | 109
add DirtyRateStatus to denote calculating status.
Signed-off-by: Chuan Zheng
Reviewed-by: Dr. David Alan Gilbert
---
migration/dirtyrate.c | 26 ++
qapi/migration.json | 17 +
2 files changed, 43 insertions(+)
diff --git a/migration/dirtyrate.c b
Add get_dirtyrate_thread() functions to setup query-dirtyrate
framework.
Signed-off-by: Chuan Zheng
Signed-off-by: YanYing Zhuang
Reviewed-by: Dr. David Alan Gilbert
Reviewed-by: David Edmondson
---
migration/dirtyrate.c | 38 ++
migration/dirtyrate.h | 29
Implement calculate_dirtyrate() function.
Signed-off-by: Chuan Zheng
Signed-off-by: YanYing Zhuang
Reviewed-by: Dr. David Alan Gilbert
---
migration/dirtyrate.c | 45 +++--
1 file changed, 43 insertions(+), 2 deletions(-)
diff --git a/migration
Compare page hash results for recorded sampled page.
Signed-off-by: Chuan Zheng
Signed-off-by: YanYing Zhuang
Reviewed-by: Dr. David Alan Gilbert
---
migration/dirtyrate.c | 63 +++
1 file changed, 63 insertions(+)
diff --git a/migration
Implement is_sample_period_valid() to check if the sample period is vaild and
do set_sample_page_period() to sleep specific time between sample actions.
Signed-off-by: Chuan Zheng
Reviewed-by: Dr. David Alan Gilbert
Reviewed-by: David Edmondson
---
migration/dirtyrate.c | 24
In order to sample real RAM, skip ramblock with size below MIN_RAMBLOCK_SIZE
which is set as 128M.
Signed-off-by: Chuan Zheng
Reviewed-by: David Edmondson
Reviewed-by: Dr. David Alan Gilbert
---
migration/dirtyrate.c | 21 +
migration/dirtyrate.h | 5 +
2 files
RAMBLOCK_FOREACH_MIGRATABLE is need in dirtyrate measure,
move the existing definition up into migration/ram.h
Signed-off-by: Chuan Zheng
Reviewed-by: Dr. David Alan Gilbert
Reviewed-by: David Edmondson
---
migration/dirtyrate.c | 1 +
migration/ram.c | 11 +--
migration/ram.h
Add trace_calls to make it easier to debug
Signed-off-by: Chuan Zheng
Reviewed-by: Dr. David Alan Gilbert
Reviewed-by: David Edmondson
---
migration/dirtyrate.c | 9 +
migration/trace-events | 8
2 files changed, 17 insertions(+)
diff --git a/migration/dirtyrate.c b
migration_tls_client_create will be used in multifd-tls, let's
extract it.
Signed-off-by: Chuan Zheng
Signed-off-by: Yan Jin
Reviewed-by: Daniel P. Berrangé
---
migration/tls.c | 26 ++
migration/tls.h | 6 ++
2 files changed, 24 insertions(+), 8 deletions
add trace points for multifd-tls for debug.
Signed-off-by: Chuan Zheng
Signed-off-by: Yan Jin
Reviewed-by: Daniel P. Berrangé
---
migration/multifd.c| 10 +-
migration/trace-events | 4
2 files changed, 13 insertions(+), 1 deletion(-)
diff --git a/migration/multifd.c b
hostname is need in multifd-tls, save hostname into MigrationState.
Signed-off-by: Chuan Zheng
Signed-off-by: Yan Jin
---
migration/channel.c | 1 +
migration/migration.c | 1 +
migration/migration.h | 5 +
migration/tls.c | 2 ++
4 files changed, 9 insertions(+)
diff --git
Since multifd creation is async with migration_channel_connect, we should
pass the hostname from MigrationState to MultiFDSendParams.
Signed-off-by: Chuan Zheng
Signed-off-by: Yan Jin
---
migration/multifd.c | 5 +
migration/multifd.h | 2 ++
2 files changed, 7 insertions(+)
diff --git
Similar like migration main thread, we need to do handshake
for each multifd thread.
Signed-off-by: Chuan Zheng
Signed-off-by: Yan Jin
Reviewed-by: Daniel P. Berrangé
---
migration/multifd.c | 77 +++--
1 file changed, 75 insertions(+), 2
15.067s
|
| mempress 1024 200| 48.798s | 25.334s
|
++++
Chuan Zheng (6):
migration/tls: save hostname into MigrationState
multifd channel cleanup is need if multifd handshake failed,
let's extract it.
Signed-off-by: Chuan Zheng
Signed-off-by: Yan Jin
Reviewed-by: Daniel P. Berrangé
---
migration/multifd.c | 34 ++
1 file changed, 22 insertions(+), 12 deletions(-)
diff --git
Add get_dirtyrate_thread() functions to setup query-dirtyrate
framework.
Signed-off-by: Chuan Zheng
Signed-off-by: YanYing Zhuang
Reviewed-by: Dr. David Alan Gilbert
Reviewed-by: David Edmondson
---
migration/dirtyrate.c | 38 ++
migration/dirtyrate.h | 29
Record hash results for each sampled page, crc32 is taken to calculate
hash results for each sampled length in TARGET_PAGE_SIZE.
Signed-off-by: Chuan Zheng
Signed-off-by: YanYing Zhuang
Reviewed-by: David Edmondson
---
migration/dirtyrate.c | 111
Add dirtyrate statistics functions to record/update dirtyrate info.
Signed-off-by: Chuan Zheng
Reviewed-by: Dr. David Alan Gilbert
---
migration/dirtyrate.c | 32
migration/dirtyrate.h | 12
2 files changed, 44 insertions(+)
diff --git a/migration
":374,"start-time":3718293,"calc-time":1},"id":"libvirt-15"}
Further test dirtyrate by libvirt api like this:
virsh getdirtyrate [vmname] [sleep-time]
Chuan Zheng (12):
migration/dirtyrate: setup up query-dirtyrate framwork
migration/dirtyrate: add DirtyRateS
In order to sample real RAM, skip ramblock with size below MIN_RAMBLOCK_SIZE
which is set as 128M.
Signed-off-by: Chuan Zheng
Reviewed-by: David Edmondson
Reviewed-by: Dr. David Alan Gilbert
---
migration/dirtyrate.c | 21 +
migration/dirtyrate.h | 5 +
2 files
Implement qmp_cal_dirty_rate()/qmp_get_dirty_rate() function which could be
called
Signed-off-by: Chuan Zheng
---
migration/dirtyrate.c | 62 +++
qapi/migration.json | 50 +
2 files changed, 112
Add trace_calls to make it easier to debug
Signed-off-by: Chuan Zheng
Reviewed-by: Dr. David Alan Gilbert
Reviewed-by: David Edmondson
---
migration/dirtyrate.c | 9 +
migration/trace-events | 8
2 files changed, 17 insertions(+)
diff --git a/migration/dirtyrate.c b
Add RamblockDirtyInfo to store sampled page info of each ramblock.
Signed-off-by: Chuan Zheng
Reviewed-by: Dr. David Alan Gilbert
Reviewed-by: David Edmondson
---
migration/dirtyrate.h | 18 ++
1 file changed, 18 insertions(+)
diff --git a/migration/dirtyrate.h b/migration
RAMBLOCK_FOREACH_MIGRATABLE is need in dirtyrate measure,
move the existing definition up into migration/ram.h
Signed-off-by: Chuan Zheng
Reviewed-by: Dr. David Alan Gilbert
Reviewed-by: David Edmondson
---
migration/dirtyrate.c | 1 +
migration/ram.c | 11 +--
migration/ram.h
Implement calculate_dirtyrate() function.
Signed-off-by: Chuan Zheng
Signed-off-by: YanYing Zhuang
Reviewed-by: Dr. David Alan Gilbert
---
migration/dirtyrate.c | 45 +++--
1 file changed, 43 insertions(+), 2 deletions(-)
diff --git a/migration
add DirtyRateStatus to denote calculating status.
Signed-off-by: Chuan Zheng
Reviewed-by: Dr. David Alan Gilbert
---
migration/dirtyrate.c | 26 ++
qapi/migration.json | 17 +
2 files changed, 43 insertions(+)
diff --git a/migration/dirtyrate.c b
Compare page hash results for recorded sampled page.
Signed-off-by: Chuan Zheng
Signed-off-by: YanYing Zhuang
Reviewed-by: Dr. David Alan Gilbert
---
migration/dirtyrate.c | 63 +++
1 file changed, 63 insertions(+)
diff --git a/migration
Implement is_sample_period_valid() to check if the sample period is vaild and
do set_sample_page_period() to sleep specific time between sample actions.
Signed-off-by: Chuan Zheng
Reviewed-by: Dr. David Alan Gilbert
Reviewed-by: David Edmondson
---
migration/dirtyrate.c | 24
Similar like migration main thread, we need to do handshake
for each multifd thread.
Signed-off-by: Chuan Zheng
Signed-off-by: Yan Jin
Reviewed-by: Daniel P. Berrangé
---
migration/multifd.c | 77 +++--
1 file changed, 75 insertions(+), 2
migration_tls_client_create will be used in multifd-tls, let's
extract it.
Signed-off-by: Chuan Zheng
Signed-off-by: Yan Jin
Reviewed-by: Daniel P. Berrangé
---
migration/tls.c | 26 ++
migration/tls.h | 6 ++
2 files changed, 24 insertions(+), 8 deletions
5.334s
|
Chuan Zheng (6):
migration/tls: save hostname into MigrationState
migration/tls: extract migration_tls_client_create for common-use
migration/tls: add MigrationState and tls_hostname into
MultiFDSendParams
mig
hostname is need in multifd-tls, save hostname into MigrationState.
Signed-off-by: Chuan Zheng
Signed-off-by: Yan Jin
---
migration/channel.c | 6 ++
migration/migration.c | 1 +
migration/migration.h | 5 +
3 files changed, 12 insertions(+)
diff --git a/migration/channel.c b
MigrationState is need for tls session build and tls hostname is need
for tls handshake, add both MigrationState and tls_hostname
into MultiFDSendParams.
Signed-off-by: Chuan Zheng
Signed-off-by: Yan Jin
---
migration/multifd.c | 5 +
migration/multifd.h | 4
2 files changed, 9
add trace points for multifd-tls for debug.
Signed-off-by: Chuan Zheng
Signed-off-by: Yan Jin
---
migration/multifd.c| 10 +-
migration/trace-events | 4
2 files changed, 13 insertions(+), 1 deletion(-)
diff --git a/migration/multifd.c b/migration/multifd.c
index 8aea4e0
multifd channel cleanup is need if multifd handshake failed,
let's extract it.
Signed-off-by: Chuan Zheng
Signed-off-by: Yan Jin
Reviewed-by: Daniel P. Berrangé
---
migration/multifd.c | 34 ++
1 file changed, 22 insertions(+), 12 deletions(-)
diff --git
Create multifd_setup_ops for TxRx thread, no logic change.
Signed-off-by: Chuan Zheng
---
migration/multifd.c | 44 +++-
migration/multifd.h | 7 +++
2 files changed, 46 insertions(+), 5 deletions(-)
diff --git a/migration/multifd.c b/migration
Signed-off-by: Zhimin Feng
Signed-off-by: Chuan Zheng
---
migration/multifd.c | 3 ++
migration/rdma.c| 94 +++--
2 files changed, 95 insertions(+), 2 deletions(-)
diff --git a/migration/multifd.c b/migration/multifd.c
index 9439b3c..c4d90ef
All data is sent by multifd Channels, so we only register its for
multifd channels and main channel don't register its.
Signed-off-by: Zhimin Feng
Signed-off-by: Chuan Zheng
---
migration/rdma.c | 8
1 file changed, 8 insertions(+)
diff --git a/migration/rdma.c b/migration/rdma.c
Signed-off-by: Zhimin Feng
Signed-off-by: Chuan Zheng
---
migration/qemu-file.c | 5 +
migration/qemu-file.h | 1 +
2 files changed, 6 insertions(+)
diff --git a/migration/qemu-file.c b/migration/qemu-file.c
index be21518..37f6201 100644
--- a/migration/qemu-file.c
+++ b/migration/qemu
dma
do not export rdma to avoid multifd code in mess
fix build issue for non-rdma
fix some codestyle and buggy code
Chuan Zheng (18):
migration/rdma: add the 'migrate_use_rdma_pin_all' function
migration/rdma: judge whether or not the RDMA is used for migration
migration/rdma: cre
Add the 'qemu_rdma_registration' function, multifd send threads
call it to register memory.
Signed-off-by: Zhimin Feng
Signed-off-by: Chuan Zheng
---
migration/rdma.c | 51 +++
1 file changed, 51 insertions(+)
diff --git a/migration/rdma.c b
Signed-off-by: Chuan Zheng
---
migration/rdma.c | 52
1 file changed, 52 insertions(+)
diff --git a/migration/rdma.c b/migration/rdma.c
index ad4e4ba..2baa933 100644
--- a/migration/rdma.c
+++ b/migration/rdma.c
@@ -4010,6 +4010,48 @@ static
Signed-off-by: Zhimin Feng
Signed-off-by: Chuan Zheng
---
migration/rdma.c | 67 +++-
1 file changed, 62 insertions(+), 5 deletions(-)
diff --git a/migration/rdma.c b/migration/rdma.c
index 327f80f..519fa7a 100644
--- a/migration/rdma.c
+++ b
Add enabled_rdma_migration into MigrationState to judge
whether or not the RDMA is used for migration.
Signed-off-by: Zhimin Feng
Signed-off-by: Chuan Zheng
---
migration/migration.c | 13 +
migration/migration.h | 6 ++
2 files changed, 19 insertions(+)
diff --git
We still don't transmit anything through them, and we only build
the RDMA connections.
Signed-off-by: Zhimin Feng
Signed-off-by: Chuan Zheng
---
migration/rdma.c | 70 ++--
1 file changed, 68 insertions(+), 2 deletions(-)
diff --git
Signed-off-by: Chuan Zheng
---
migration/multifd.c | 6 ++
migration/multifd.h | 1 +
migration/rdma.c| 16 +++-
3 files changed, 22 insertions(+), 1 deletion(-)
diff --git a/migration/multifd.c b/migration/multifd.c
index c4d90ef..f548122 100644
--- a/migration/multifd.c
Signed-off-by: Zhimin Feng
Signed-off-by: Chuan Zheng
---
migration/multifd.c | 8
1 file changed, 8 insertions(+)
diff --git a/migration/multifd.c b/migration/multifd.c
index 0d494df..8ccfd46 100644
--- a/migration/multifd.c
+++ b/migration/multifd.c
@@ -580,6 +580,10 @@ void
Signed-off-by: Chuan Zheng
---
migration/multifd.c | 4 ++--
migration/multifd.h | 2 ++
migration/rdma.c| 56 +
3 files changed, 60 insertions(+), 2 deletions(-)
diff --git a/migration/multifd.c b/migration/multifd.c
index 03f3a1e
Signed-off-by: Chuan Zheng
---
migration/migration.c | 1 +
migration/migration.h | 3 +++
migration/rdma.c | 3 +++
3 files changed, 7 insertions(+)
diff --git a/migration/migration.c b/migration/migration.c
index be6166a..7061410 100644
--- a/migration/migration.c
+++ b/migration
Multifd RDMA is need to poll when we send data, record it.
Signed-off-by: Chuan Zheng
---
migration/migration.c | 1 +
migration/migration.h | 1 +
migration/rdma.c | 14 ++
3 files changed, 16 insertions(+)
diff --git a/migration/migration.c b/migration/migration.c
index
Signed-off-by: Zhimin Feng
Signed-off-by: Chuan Zheng
---
migration/migration.c | 9 +
migration/migration.h | 1 +
2 files changed, 10 insertions(+)
diff --git a/migration/migration.c b/migration/migration.c
index 0575ecb..64ae417 100644
--- a/migration/migration.c
+++ b/migration
Signed-off-by: Chuan Zheng
---
migration/multifd.c | 6
migration/multifd.h | 4 +++
migration/rdma.c| 82 +
3 files changed, 92 insertions(+)
diff --git a/migration/multifd.c b/migration/multifd.c
index 1f82307..0d494df 100644
Note we do want to export any rdma struct, take void * instead.
Signed-off-by: Chuan Zheng
---
migration/multifd.h | 8
1 file changed, 8 insertions(+)
diff --git a/migration/multifd.h b/migration/multifd.h
index 2f4e585..ff80bd5 100644
--- a/migration/multifd.h
+++ b/migration
MultiFDSendParams and MultiFDRecvParams is need for rdma, export it
Signed-off-by: Zhimin Feng
Signed-off-by: Chuan Zheng
---
migration/multifd.c | 26 ++
migration/multifd.h | 2 ++
2 files changed, 28 insertions(+)
diff --git a/migration/multifd.c b/migration
1 - 100 of 234 matches
Mail list logo