[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH-for-9.1] rdma: Remove RDMA subsystem and pvrdma device
From: |
Michael S. Tsirkin |
Subject: |
Re: [PATCH-for-9.1] rdma: Remove RDMA subsystem and pvrdma device |
Date: |
Thu, 28 Mar 2024 05:59:40 -0400 |
On Thu, Mar 28, 2024 at 07:43:06AM +0100, Thomas Huth wrote:
> On 27/03/2024 11.55, Philippe Mathieu-Daudé wrote:
> > The whole RDMA subsystem was deprecated in commit e9a54265f5
> > ("hw/rdma: Deprecate the pvrdma device and the rdma subsystem")
> > released in v8.2. Time to remove it.
> >
> > Keep the RAM_SAVE_FLAG_HOOK definition since it might appears
> > in old migration streams.
> >
> > Remove the dependencies on libibumad and libibverbs.
> >
> > Remove the generated vmw_pvrdma/ directory from linux-headers.
> >
> > Remove RDMA handling from migration.
> >
> > Remove RDMA handling in GlusterFS block driver.
> >
> > Remove rdmacm-mux tool from contrib/.
> >
> > Remove PVRDMA device.
> >
> > Cc: Peter Xu <peterx@redhat.com>
> > Cc: Li Zhijian <lizhijian@fujitsu.com>
> > Cc: Yuval Shaia <yuval.shaia.ml@gmail.com>
> > Cc: Marcel Apfelbaum <marcel.apfelbaum@gmail.com>
> > Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> > ---
> > MAINTAINERS | 17 -
> > docs/about/deprecated.rst | 9 -
> > docs/about/removed-features.rst | 4 +
> > docs/devel/migration/main.rst | 6 -
> > docs/pvrdma.txt | 345 --
> > docs/rdma.txt | 420 --
> > docs/system/device-url-syntax.rst.inc | 4 +-
> > docs/system/loongarch/virt.rst | 2 +-
> > docs/system/qemu-block-drivers.rst.inc | 1 -
> > meson.build | 59 -
> > qapi/machine.json | 17 -
> > qapi/migration.json | 31 +-
> > qapi/qapi-schema.json | 1 -
> > qapi/rdma.json | 38 -
> > contrib/rdmacm-mux/rdmacm-mux.h | 61 -
> > hw/rdma/rdma_backend.h | 129 -
> > hw/rdma/rdma_backend_defs.h | 76 -
> > hw/rdma/rdma_rm.h | 97 -
> > hw/rdma/rdma_rm_defs.h | 146 -
> > hw/rdma/rdma_utils.h | 63 -
> > hw/rdma/trace.h | 1 -
> > hw/rdma/vmw/pvrdma.h | 144 -
> > hw/rdma/vmw/pvrdma_dev_ring.h | 46 -
> > hw/rdma/vmw/pvrdma_qp_ops.h | 28 -
> > hw/rdma/vmw/trace.h | 1 -
> > include/hw/rdma/rdma.h | 37 -
> > include/monitor/hmp.h | 1 -
> > .../infiniband/hw/vmw_pvrdma/pvrdma_dev_api.h | 685 ---
> > .../infiniband/hw/vmw_pvrdma/pvrdma_verbs.h | 348 --
> > .../standard-headers/rdma/vmw_pvrdma-abi.h | 310 --
> > migration/migration-stats.h | 6 +-
> > migration/migration.h | 9 -
> > migration/options.h | 2 -
> > migration/rdma.h | 69 -
> > block/gluster.c | 39 -
> > contrib/rdmacm-mux/main.c | 831 ----
> > hw/core/machine-qmp-cmds.c | 32 -
> > hw/rdma/rdma.c | 30 -
> > hw/rdma/rdma_backend.c | 1401 ------
> > hw/rdma/rdma_rm.c | 812 ----
> > hw/rdma/rdma_utils.c | 126 -
> > hw/rdma/vmw/pvrdma_cmd.c | 815 ----
> > hw/rdma/vmw/pvrdma_dev_ring.c | 141 -
> > hw/rdma/vmw/pvrdma_main.c | 735 ---
> > hw/rdma/vmw/pvrdma_qp_ops.c | 298 --
> > migration/migration-stats.c | 5 +-
> > migration/migration.c | 31 -
> > migration/options.c | 16 -
> > migration/qemu-file.c | 1 -
> > migration/ram.c | 86 +-
> > migration/rdma.c | 4184 -----------------
> > migration/savevm.c | 2 +-
> > monitor/qmp-cmds.c | 1 -
> > Kconfig.host | 3 -
> > contrib/rdmacm-mux/meson.build | 7 -
> > hmp-commands-info.hx | 13 -
> > hw/Kconfig | 1 -
> > hw/meson.build | 1 -
> > hw/rdma/Kconfig | 3 -
> > hw/rdma/meson.build | 12 -
> > hw/rdma/trace-events | 31 -
> > hw/rdma/vmw/trace-events | 17 -
> > meson_options.txt | 4 -
> > migration/meson.build | 1 -
> > migration/trace-events | 68 +-
> > qapi/meson.build | 1 -
> > qemu-options.hx | 6 -
> > .../ci/org.centos/stream/8/x86_64/configure | 1 -
> > scripts/ci/setup/build-environment.yml | 2 -
> > scripts/coverity-scan/run-coverity-scan | 2 +-
> > scripts/meson-buildoptions.sh | 6 -
> > scripts/update-linux-headers.sh | 27 -
> > tests/lcitool/projects/qemu.yml | 2 -
> > tests/migration/guestperf/engine.py | 4 +-
> > 74 files changed, 20 insertions(+), 12991 deletions(-)
> > delete mode 100644 docs/pvrdma.txt
> > delete mode 100644 docs/rdma.txt
> > delete mode 100644 qapi/rdma.json
> > delete mode 100644 contrib/rdmacm-mux/rdmacm-mux.h
> > delete mode 100644 hw/rdma/rdma_backend.h
> > delete mode 100644 hw/rdma/rdma_backend_defs.h
> > delete mode 100644 hw/rdma/rdma_rm.h
> > delete mode 100644 hw/rdma/rdma_rm_defs.h
> > delete mode 100644 hw/rdma/rdma_utils.h
> > delete mode 100644 hw/rdma/trace.h
> > delete mode 100644 hw/rdma/vmw/pvrdma.h
> > delete mode 100644 hw/rdma/vmw/pvrdma_dev_ring.h
> > delete mode 100644 hw/rdma/vmw/pvrdma_qp_ops.h
> > delete mode 100644 hw/rdma/vmw/trace.h
> > delete mode 100644 include/hw/rdma/rdma.h
> > delete mode 100644
> > include/standard-headers/drivers/infiniband/hw/vmw_pvrdma/pvrdma_dev_api.h
> > delete mode 100644
> > include/standard-headers/drivers/infiniband/hw/vmw_pvrdma/pvrdma_verbs.h
> > delete mode 100644 include/standard-headers/rdma/vmw_pvrdma-abi.h
> > delete mode 100644 migration/rdma.h
> > delete mode 100644 contrib/rdmacm-mux/main.c
> > delete mode 100644 hw/rdma/rdma.c
> > delete mode 100644 hw/rdma/rdma_backend.c
> > delete mode 100644 hw/rdma/rdma_rm.c
> > delete mode 100644 hw/rdma/rdma_utils.c
> > delete mode 100644 hw/rdma/vmw/pvrdma_cmd.c
> > delete mode 100644 hw/rdma/vmw/pvrdma_dev_ring.c
> > delete mode 100644 hw/rdma/vmw/pvrdma_main.c
> > delete mode 100644 hw/rdma/vmw/pvrdma_qp_ops.c
> > delete mode 100644 migration/rdma.c
> > delete mode 100644 contrib/rdmacm-mux/meson.build
> > delete mode 100644 hw/rdma/Kconfig
> > delete mode 100644 hw/rdma/meson.build
> > delete mode 100644 hw/rdma/trace-events
> > delete mode 100644 hw/rdma/vmw/trace-events
>
> Hi Philippe!
>
> Looking at this rdma stuff again after I while, I realized that there are
> actually 3 parts in QEMU related to RDMA:
> 1) The "pvrdma" device in hw/rdma/vmw/
> 2) The rdma subsystem in hw/rda/*.[ch]
> 3) The rdma migration code in the migration/ folder.
>
> While the deprecation note in docs/about/deprecated.rst clearly talks about
> the "pvrdma" device and the rdma subsystem, I'm unsure whether that includes
> the rdma migration code or not.
>
> Anyway, could you please split your patch at least in two (maybe even in
> three) parts, so that the removal of the rdma migration code is in a
> separate patch? That way we can discuss that separately (and maybe also
> revert it more easily in the future if necessary).
>
> Thanks,
> Thomas
I agree. E.g. rdma migration would be up to migration maintainers.
--
MST