From ad7ea0dbb251176cb8beea1b46e14c9f039d95e5 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Thu, 11 Jun 2015 17:56:15 +0100 Subject: [PATCH] libxl: libxl_internal.h: Clarify ao rule against internal callers Signed-off-by: Ian Jackson CC: Ian Campbell CC: Wei Liu CC: Juergen Gross Acked-by: Ian Campbell Acked-by: Juergen Gross --- tools/libxl/libxl_internal.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tools/libxl/libxl_internal.h b/tools/libxl/libxl_internal.h index bb3a5c7e78..e96d6b57a5 100644 --- a/tools/libxl/libxl_internal.h +++ b/tools/libxl/libxl_internal.h @@ -1908,8 +1908,9 @@ _hidden void libxl__egc_cleanup(libxl__egc *egc); * All "slow" functions (see below for the exact definition) need to * use the asynchronous operation ("ao") machinery. The function * should take a parameter const libxl_asyncop_how *ao_how and must - * start with a call to AO_INITIATOR_ENTRY. These functions MAY NOT - * be called from inside libxl, because they can cause reentrancy + * start with a call to AO_CREATE or equivalent. These functions MAY + * NOT be called from inside libxl (regardless of what is passed for + * ao_how), because they can cause reentrancy hazards due to * callbacks. * * For the same reason functions taking an ao_how may make themselves -- 2.30.2