[pve-devel] [PATCH qemu-server 05/31] blockdev: add helpers for attaching and detaching block devices

DERUMIER, Alexandre alexandre.derumier at groupe-cyllene.com
Mon Jun 30 13:43:28 CEST 2025


-------- Message initial --------
De: "DERUMIER, Alexandre" <alexandre.derumier at groupe-cyllene.com>
À: pve-devel at lists.proxmox.com <pve-devel at lists.proxmox.com>
Objet: Re: [pve-devel] [PATCH qemu-server 05/31] blockdev: add helpers
for attaching and detaching block devices
Date: 30/06/2025 12:35:22

> +    # node and also implicit backing children referenced by a qcow2
> image.
> +    eval { mon_cmd($vmid, 'blockdev-del', 'node-name' =>
> "$node_name"); };
> +    if (my $err = $@) {
> +        return if $err =~ m/Failed to find node with node-name/; #
> already gone

> > does this happen regularly?

>>From my tests, I have seen different behaviour, depending if the
>>initial drive was defined in qemu command line  ,   or if it was live
>>hot-plugged first and hot-unplugged after.

>>I have also have seen different behaviour with block with defined
>>node-
>>name and with autogenerated nodename.
>>
>>I don't have retested since a while, so can't confirm 100%, I'll try
>>to
>>do some test again today.

Can't reproduce with simple hotplug/unplug,  or unplug after vm start.

But, I'm seeing a case, after a driver mirror with zeroinit filter in
front,  where the whole chain is not autoremoved by device del.
(including the zero filter).
And this current code don't seem to remove the file && format blocknode
too (maybe locked by the zero filter node ?)


I don't known if we need to keep the zeroinit filter after the drive
mirror ? (I think it could be removed with a blockdev-reopen) 




More information about the pve-devel mailing list