[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v4 08/18] migration/rdma: export getQIOChannel to get QIOchan
From: |
Dr. David Alan Gilbert |
Subject: |
Re: [PATCH v4 08/18] migration/rdma: export getQIOChannel to get QIOchannel in rdma |
Date: |
Wed, 3 Feb 2021 18:49:33 +0000 |
User-agent: |
Mutt/1.14.6 (2020-07-11) |
* Chuan Zheng (zhengchuan@huawei.com) wrote:
> Signed-off-by: Zhimin Feng <fengzhimin1@huawei.com>
> Signed-off-by: Chuan Zheng <zhengchuan@huawei.com>
> ---
> 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-file.c
> @@ -260,6 +260,11 @@ void ram_control_before_iterate(QEMUFile *f, uint64_t
> flags)
> }
> }
>
> +void *getQIOChannel(QEMUFile *f)
> +{
> + return f->opaque;
> +}
> +
Unfortunately that's not right, since the opaque isn't always a
QUIChannel, so getOpaque would be a suitable name here.
It's a shame this is needed; I'm surprised you ever have a QEMUFIle* in
the rdma code in somewhere you don't have the QIOChannel; could you
avoid this by adding a QIOChannel pointer into the RDAMContext to point
back to the channel which it's for?
Dave
> void ram_control_after_iterate(QEMUFile *f, uint64_t flags)
> {
> int ret = 0;
> diff --git a/migration/qemu-file.h b/migration/qemu-file.h
> index a9b6d6c..4cef043 100644
> --- a/migration/qemu-file.h
> +++ b/migration/qemu-file.h
> @@ -165,6 +165,7 @@ void qemu_file_set_blocking(QEMUFile *f, bool block);
> void ram_control_before_iterate(QEMUFile *f, uint64_t flags);
> void ram_control_after_iterate(QEMUFile *f, uint64_t flags);
> void ram_control_load_hook(QEMUFile *f, uint64_t flags, void *data);
> +void *getQIOChannel(QEMUFile *f);
>
> /* Whenever this is found in the data stream, the flags
> * will be passed to ram_control_load_hook in the incoming-migration
> --
> 1.8.3.1
>
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
- [PATCH v4 02/18] migration/rdma: judge whether or not the RDMA is used for migration, (continued)
- [PATCH v4 02/18] migration/rdma: judge whether or not the RDMA is used for migration, Chuan Zheng, 2021/02/03
- [PATCH v4 03/18] migration/rdma: create multifd_setup_ops for Tx/Rx thread, Chuan Zheng, 2021/02/03
- [PATCH v4 15/18] migration/rdma: only register the memory for multifd channels, Chuan Zheng, 2021/02/03
- [PATCH v4 06/18] migration/rdma: export MultiFDSendParams/MultiFDRecvParams, Chuan Zheng, 2021/02/03
- [PATCH v4 14/18] migration/rdma: register memory for multifd RDMA channels, Chuan Zheng, 2021/02/03
- [PATCH v4 08/18] migration/rdma: export getQIOChannel to get QIOchannel in rdma, Chuan Zheng, 2021/02/03
- Re: [PATCH v4 08/18] migration/rdma: export getQIOChannel to get QIOchannel in rdma,
Dr. David Alan Gilbert <=
- [PATCH v4 10/18] migration/rdma: Create the multifd recv channels for RDMA, Chuan Zheng, 2021/02/03
- [PATCH v4 16/18] migration/rdma: add rdma_channel into Migrationstate field, Chuan Zheng, 2021/02/03
- [PATCH v4 18/18] migration/rdma: RDMA cleanup for multifd migration, Chuan Zheng, 2021/02/03
- [PATCH v4 09/18] migration/rdma: add multifd_rdma_load_setup() to setup multifd rdma, Chuan Zheng, 2021/02/03
- [PATCH v4 17/18] migration/rdma: send data for both rdma-pin-all and NOT rdma-pin-all mode, Chuan Zheng, 2021/02/03