Out-Of-Band handlers need to protect shared state if there is any. Mention it in the document.
Suggested-by: Markus Armbruster <arm...@redhat.com> Signed-off-by: Peter Xu <pet...@redhat.com> --- docs/devel/qapi-code-gen.txt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/devel/qapi-code-gen.txt b/docs/devel/qapi-code-gen.txt index b9b6eabd08..aafc15f100 100644 --- a/docs/devel/qapi-code-gen.txt +++ b/docs/devel/qapi-code-gen.txt @@ -680,6 +680,9 @@ OOB command handlers must satisfy the following conditions: - It does not invoke system calls that may block, - It does not access guest RAM that may block when userfaultfd is enabled for postcopy live migration. +- It needs to protect possilbe shared states, since as long as a + command supports Out-Of-Band it means the handler can be run in + parallel with the same handler running in the other thread. If in doubt, do not implement OOB execution support. -- 2.17.0