From: Laszlo Ersek <lersek@redhat.com>
To: Igor Mammedov <imammedo@redhat.com>
Cc: boris.ostrovsky@oracle.com,
"Philippe Mathieu-Daudé" <philmd@redhat.com>,
qemu-devel@nongnu.org, aaron.young@oracle.com
Subject: Re: [PATCH v2 6/7] x68: acpi: trigger SMI before sending hotplug Notify event to OSPM
Date: Wed, 26 Aug 2020 17:12:39 +0200 [thread overview]
Message-ID: <93968819-1988-1e6c-9ec7-3d1fb067c147@redhat.com> (raw)
In-Reply-To: <20200826135501.5449641b@redhat.com>
On 08/26/20 13:55, Igor Mammedov wrote:
> On Wed, 26 Aug 2020 11:24:14 +0200
> Laszlo Ersek <lersek@redhat.com> wrote:
>> (2a) Change the firmware so that it sends a directed SMI as well to
>> each CPU, just before sending an INIT-SIPI-SIPI. This should be
>> idempotent -- if the broadcast SMI *has* covered the the CPU,
>> then sending a directed SMI should make no difference.
> may be still racy, as new cpus can arrive diring/after direct broadcast.
(I think you meant "direct SMI")
That's not a problem -- the point is that we must never send
INIT-SIPI-SIPI to a hot-added CPU without making an SMI pending for it.
The above condition can be satisfied by not sending INIT-SIPI-SIPI to a
VCPU at all.
The firmware collects pending CPUs into an array, and then does the
directed SMI + INIT-SIPI-SIPI dance for each, in a separate loop.
So if a new VCPU is hot-added while we are sending the interrupts to the
already collected ones, that's fine -- we're not going to send *either*
SMI *or* INIT-SIPI-SIPI to that VCPU, until the next time we collect VCPUS.
It's basically the same idea as in your ACPI patch for QEMU.
I'll send the OVMF patches soon.
Thanks!
Laszlo
next prev parent reply other threads:[~2020-08-26 15:14 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-08-18 12:22 [PATCH v2 0/7] x86: fix cpu hotplug with secure boot Igor Mammedov
2020-08-18 12:22 ` [PATCH v2 1/7] x86: lpc9: let firmware negotiate 'CPU hotplug with SMI' features Igor Mammedov
2020-08-19 8:39 ` Laszlo Ersek
2020-08-19 8:51 ` Laszlo Ersek
2020-08-19 8:58 ` Cornelia Huck
2020-08-19 9:14 ` Laszlo Ersek
2020-08-19 12:37 ` Igor Mammedov
2020-08-20 14:56 ` [PATCH v3 " Igor Mammedov
2020-08-21 13:46 ` Laszlo Ersek
2020-08-24 11:00 ` [PATCH v4 1/6] " Igor Mammedov
2020-08-25 12:28 ` Laszlo Ersek
2020-08-18 12:22 ` [PATCH v2 2/7] x86: cphp: prevent guest crash on CPU hotplug when broadcast SMI is in use Igor Mammedov
2020-08-18 12:22 ` [PATCH v2 3/7] x86: cpuhp: refuse cpu hot-unplug request earlier if not supported Igor Mammedov
2020-08-25 12:50 ` Laszlo Ersek
2020-08-18 12:22 ` [PATCH v2 4/7] acpi: add aml_land() and aml_break() primitives Igor Mammedov
2020-08-18 13:03 ` Philippe Mathieu-Daudé
2020-08-25 13:01 ` Laszlo Ersek
2020-08-18 12:22 ` [PATCH v2 5/7] tests: acpi: mark to be changed tables in bios-tables-test-allowed-diff Igor Mammedov
2020-08-18 12:22 ` [PATCH v2 6/7] x68: acpi: trigger SMI before sending hotplug Notify event to OSPM Igor Mammedov
2020-08-25 17:25 ` Laszlo Ersek
2020-08-26 9:23 ` Igor Mammedov
2020-08-26 9:24 ` Laszlo Ersek
2020-08-26 11:55 ` Igor Mammedov
2020-08-26 15:12 ` Laszlo Ersek [this message]
2020-08-26 13:32 ` Laszlo Ersek
2020-08-26 13:32 ` Laszlo Ersek
2020-08-26 14:10 ` Igor Mammedov
2020-08-18 12:22 ` [PATCH v2 7/7] tests: acpi: update acpi blobs with new AML Igor Mammedov
2020-08-18 12:56 ` [PATCH v2 0/7] x86: fix cpu hotplug with secure boot no-reply
2020-08-18 13:01 ` Philippe Mathieu-Daudé
2020-08-18 13:39 ` no-reply
2020-08-18 14:07 ` Philippe Mathieu-Daudé
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=93968819-1988-1e6c-9ec7-3d1fb067c147@redhat.com \
--to=lersek@redhat.com \
--cc=aaron.young@oracle.com \
--cc=boris.ostrovsky@oracle.com \
--cc=imammedo@redhat.com \
--cc=philmd@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).