> From: qemu-devel-bounces+salil.mehta=huawei....@nongnu.org <qemu-devel- > bounces+salil.mehta=huawei....@nongnu.org> On Behalf Of lixianglai > Sent: Thursday, September 14, 2023 2:01 PM > To: David Hildenbrand <da...@redhat.com>; qemu-devel@nongnu.org > Cc: Salil Mehta <salil.me...@opnsrc.net>; Xiaojuan Yang > <yangxiaoj...@loongson.cn>; Song Gao <gaos...@loongson.cn>; Michael S. > Tsirkin <m...@redhat.com>; Igor Mammedov <imamm...@redhat.com>; Ani Sinha > <anisi...@redhat.com>; Paolo Bonzini <pbonz...@redhat.com>; Richard > Henderson <richard.hender...@linaro.org>; Eduardo Habkost > <edua...@habkost.net>; Marcel Apfelbaum <marcel.apfelb...@gmail.com>; > Philippe Mathieu-Daudé <phi...@linaro.org>; wangyanan (Y) > <wangyana...@huawei.com>; Daniel P. Berrangé <berra...@redhat.com>; Peter > Xu <pet...@redhat.com>; Bibo Mao <maob...@loongson.cn> > Subject: Re: [PATCH v2 04/10] Introduce the CPU address space destruction > function > > Hi David: > > > On 12.09.23 04:11, xianglai li wrote: > >> Introduce new function to destroy CPU address space resources > >> for cpu hot-(un)plug. > >> > > How do other archs handle that? Or how are they able to get away > > without destroying? > > > They do not remove the cpu address space, taking the X86 architecture as > an example: > > 1.Start the x86 VM: > > ./qemu-system-x86_64 \ > -machine q35 \ > -cpu Broadwell-IBRS \ > -smp 1,maxcpus=100,sockets=100,cores=1,threads=1 \ > -m 4G \ > -drive file=~/anolis-8.8.qcow2 \ > -serial stdio \ > -monitor telnet:localhost:4498,server,nowait \ > -nographic > > 2.Connect the qemu monitor > > telnet 127.0.0.1 4498 > > info mtree > > address-space: cpu-memory-0 > address-space: memory > 0000000000000000-ffffffffffffffff (prio 0, i/o): system > 0000000000000000-000000007fffffff (prio 0, ram): alias ram-below-4g > @pc.ram 0000000000000000-000000007fffffff > 0000000000000000-ffffffffffffffff (prio -1, i/o): pci > 00000000000a0000-00000000000bffff (prio 1, i/o): vga-lowmem > > 3.Perform cpu hot swap int qemu monitor > > device_add > Broadwell-IBRS-x86_64-cpu,socket-id=1,core-id=0,thread-id=0,id=cpu1 > device_del cpu1 > > info mtree > > address-space: cpu-memory-0 > address-space: cpu-memory-1 > address-space: memory > 0000000000000000-ffffffffffffffff (prio 0, i/o): system > 0000000000000000-000000007fffffff (prio 0, ram): alias ram-below-4g > @pc.ram 0000000000000000-000000007fffffff > 0000000000000000-ffffffffffffffff (prio -1, i/o): pci > 00000000000a0000-00000000000bffff (prio 1, i/o): vga-lowmem > > > From the above test, you can see whether the address space of cpu1 is > residual after a cpu hot swap, and whether it is reasonable? > > The address space destruction function of the CPU can be used to delete > the residual address space of the CPU1.
Yes, it can be but I would interested to know if there is any problem which might have gone unnoticed while doing it. Many thanks Salil.