From 8bd115214d19cc82c619c4856f72ada13291b6d4 Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Tue, 3 Jul 2018 19:43:43 -0400 Subject: [PATCH] cpu: Assert asidx_from_attrs return value in range Backports commit 9c8c334b0637bf3c592d432b0c11f3b62dd5dba3 from qemu --- qemu/include/qom/cpu.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/qemu/include/qom/cpu.h b/qemu/include/qom/cpu.h index 50e6f0b3..2142a686 100644 --- a/qemu/include/qom/cpu.h +++ b/qemu/include/qom/cpu.h @@ -502,11 +502,13 @@ static inline hwaddr cpu_get_phys_page_debug(CPUState *cpu, vaddr addr) static inline int cpu_asidx_from_attrs(CPUState *cpu, MemTxAttrs attrs) { CPUClass *cc = CPU_GET_CLASS(cpu->uc, cpu); + int ret = 0; if (cc->asidx_from_attrs) { - return cc->asidx_from_attrs(cpu, attrs); + ret = cc->asidx_from_attrs(cpu, attrs); + assert(ret < cpu->num_ases && ret >= 0); } - return 0; + return ret; } #endif