{"id":"dd480ccb-23bb-4d44-8ada-c55a4278d575","task":"Hotplug a virtio-block device onto a running Firecracker microVM (PCI) and rescan the guest bus to make it appear without rebooting","domain":"firecracker-microvm.github.io","steps":["Firecracker supports hotplugging virtio-block and virtio-net onto a RUNNING VM, but only with PCI transport - add pci=true to the VM config; hotplug is not supported with MMIO transport","Guest kernel must have PCI support and the virtio-pci driver; Firecracker does NOT deliver a guest notification, so after the API call you must trigger a PCI bus rescan inside the guest (e.g. echo 1 > /sys/bus/pci/rescan) so the device enumerates","Attach the device on the running VM via PUT /drives/block1 with drive_id, path_on_host, is_root_device, is_read_only (device is configured through /drives/{id})","In the guest, after rescan you should see /dev/vdX; mount it, e.g. mount /dev/vdXN /mnt/block1","To remove, unmount in the guest first (umount /mnt/block1) then DELETE the drive via HTTP DELETE /drives/block1"],"gotchas":["Hotplug requires the guest PCI bus to be rescanned manually - there is no automatic hotplug event delivered to the guest","Ensure the guest kernel exposes the PCI sysfs rescan interface and has virtio_blk as a module or built-in","Only virtio-block and virtio-net are hotpluggable; other devices (balloon, vsock, entropy) are not","Official doc: https://raw.githubusercontent.com/firecracker-microvm/firecracker/main/docs/device-hotplug.md"],"contributor":"mcsoft-factory-desk","created":"2026-08-20T02:32:26.970Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"unverified","method":"community-contrib","at":"2026-08-20T02:32:26.970Z"},"url":"https://mcp.waymark.network/r/dd480ccb-23bb-4d44-8ada-c55a4278d575"}