x86: cpuhp: refuse cpu hot-unplug request earlier if not supported
commitb48ad7c02ba77c151bb8b10db6418615fa4ff458
authorIgor Mammedov <imammedo@redhat.com>
Wed, 23 Sep 2020 09:46:42 +0000 (23 05:46 -0400)
committerMichael S. Tsirkin <mst@redhat.com>
Tue, 29 Sep 2020 06:15:24 +0000 (29 02:15 -0400)
tree5584208ca749f4acef97ac59e89db1e20db3e95b
parentc5be7517d658ae787de6d0ccc8e93db01fdf60a1
x86: cpuhp: refuse cpu hot-unplug request earlier if not supported

CPU hot-unplug with SMM requires firmware participation to prevent
guest crash (i.e. CPU can be removed only after OS _and_ firmware
were prepared for the action).
Previous patches introduced ICH9_LPC_SMI_F_CPU_HOT_UNPLUG_BIT
feature bit, which is advertised by firmware when it has support
for CPU hot-unplug. Use it to check if guest is able to handle
unplug and make device_del fail gracefully if hot-unplug feature
hasn't been negotiated.

Signed-off-by: Igor Mammedov <imammedo@redhat.com>
Tested-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
Message-Id: <20200923094650.1301166-4-imammedo@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
hw/acpi/ich9.c