mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-03 07:43:54 -06:00
migration/multifd: add uadk compression framework
Adds the skeleton to support uadk compression method. Complete functionality will be added in subsequent patches. Acked-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Fabiano Rosas <farosas@suse.de> Signed-off-by: Shameer Kolothum <shameerali.kolothum.thodi@huawei.com> Reviewed-by: Zhangfei Gao <zhangfei.gao@linaro.org> Signed-off-by: Fabiano Rosas <farosas@suse.de>
This commit is contained in:
parent
cfc589a89b
commit
f3d8bb759d
5 changed files with 29 additions and 4 deletions
|
@ -40,6 +40,7 @@ endif
|
|||
system_ss.add(when: rdma, if_true: files('rdma.c'))
|
||||
system_ss.add(when: zstd, if_true: files('multifd-zstd.c'))
|
||||
system_ss.add(when: qpl, if_true: files('multifd-qpl.c'))
|
||||
system_ss.add(when: uadk, if_true: files('multifd-uadk.c'))
|
||||
|
||||
specific_ss.add(when: 'CONFIG_SYSTEM_ONLY',
|
||||
if_true: files('ram.c',
|
||||
|
|
20
migration/multifd-uadk.c
Normal file
20
migration/multifd-uadk.c
Normal file
|
@ -0,0 +1,20 @@
|
|||
/*
|
||||
* Multifd UADK compression accelerator implementation
|
||||
*
|
||||
* Copyright (c) 2024 Huawei Technologies R & D (UK) Ltd
|
||||
*
|
||||
* Authors:
|
||||
* Shameer Kolothum <shameerali.kolothum.thodi@huawei.com>
|
||||
*
|
||||
* This work is licensed under the terms of the GNU GPL, version 2 or later.
|
||||
* See the COPYING file in the top-level directory.
|
||||
*/
|
||||
|
||||
#include "qemu/osdep.h"
|
||||
#include "qemu/module.h"
|
||||
|
||||
static void multifd_uadk_register(void)
|
||||
{
|
||||
/* noop for now */
|
||||
}
|
||||
migration_init(multifd_uadk_register);
|
|
@ -34,13 +34,14 @@ MultiFDRecvData *multifd_get_recv_data(void);
|
|||
/* Multifd Compression flags */
|
||||
#define MULTIFD_FLAG_SYNC (1 << 0)
|
||||
|
||||
/* We reserve 3 bits for compression methods */
|
||||
#define MULTIFD_FLAG_COMPRESSION_MASK (7 << 1)
|
||||
/* We reserve 4 bits for compression methods */
|
||||
#define MULTIFD_FLAG_COMPRESSION_MASK (0xf << 1)
|
||||
/* we need to be compatible. Before compression value was 0 */
|
||||
#define MULTIFD_FLAG_NOCOMP (0 << 1)
|
||||
#define MULTIFD_FLAG_ZLIB (1 << 1)
|
||||
#define MULTIFD_FLAG_ZSTD (2 << 1)
|
||||
#define MULTIFD_FLAG_QPL (4 << 1)
|
||||
#define MULTIFD_FLAG_UADK (8 << 1)
|
||||
|
||||
/* This value needs to be a multiple of qemu_target_page_size() */
|
||||
#define MULTIFD_PACKET_SIZE (512 * 1024)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue