[GEDI] [PATCH-for-9.1] rdma: Remove RDMA subsystem and pvrdma device
Thomas Huth
thuth at redhat.com
Thu Mar 28 06:43:06 UTC 2024
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 at redhat.com>
> Cc: Li Zhijian <lizhijian at fujitsu.com>
> Cc: Yuval Shaia <yuval.shaia.ml at gmail.com>
> Cc: Marcel Apfelbaum <marcel.apfelbaum at gmail.com>
> Signed-off-by: Philippe Mathieu-Daudé <philmd at 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
More information about the integration
mailing list