Hi Richard, On Sun, Aug 16, 2026 at 10:38 PM Yogesh Vyas <[email protected]> wrote:
> Hi Richard, > Thank you for improvising on the initial patch shared. > > On Thu, Aug 13, 2026 at 6:20 AM Richard Henderson < > [email protected]> wrote: > >> Hi Yogesh, >> >> The main problem with your patch is where you've placed the change: >> tcg_region_initial_alloc__locked is also used by tcg_region_reset_all, >> used by tb_flush. Along that path, we really can't have a failure. >> The path on which we can defer allocation is via tcg_register_thread. >> >> The second change I made is to use code_buf_ptr == NULL to signal >> reallocation is required. In addition, tcg_tb_alloc doesn't need >> to immediately fail: in the interim since thread creation, we may >> well have performed a tb_flush already. >> >> Please have a try vs your hotplug test case. >> > I tried testing these patches on my x86 host running qemu-system-ppc64 by > initially hotpluging 400 vCPUs. > While the response was relatively slower than the initial patch that I had > shared, I also observed the VM is as slow as stuck when I retried > hotplugging upto 1024. > I will share more feedback if I have any. > I have shared one minor comment on patch 2/3, with that: Reviewed-by: Yogesh Vyas <[email protected]> Tested-by: Yogesh Vyas <[email protected]> > Regards, > Yogesh > > >> >> r~ >> >> >> Richard Henderson (3): >> tcg: Return success from tcg_region_alloc__locked >> tcg: Return success from tcg_region_alloc >> tcg: Defer tb_flush when initial thread region alloc fails >> >> tcg/tcg-internal.h | 2 +- >> tcg/region.c | 40 ++++++++++++++++++++++++++++++---------- >> tcg/tcg.c | 24 +++++++++++++++--------- >> 3 files changed, 46 insertions(+), 20 deletions(-) >> >> -- >> 2.43.0 >> >>
