|
From: | Sergey Fedorov |
Subject: | Re: [Qemu-devel] [PATCH v3 06/11] tcg: Introduce tb_mark_invalid() and tb_is_invalid() |
Date: | Thu, 14 Jul 2016 14:10:08 +0300 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.8.0 |
On 14/07/16 13:25, Alex Bennée wrote: > Sergey Fedorov <address@hidden> writes: > >> > From: Sergey Fedorov <address@hidden> >> > >> > These functions will be used to make translation block invalidation safe >> > with concurrent lockless lookup in the global hash table. >> > >> > Most targets don't use 'cs_base'; so marking TB as invalid is as simple >> > as assigning -1 to 'cs_base'. SPARC target stores the next program >> > counter into 'cs_base', and -1 is a fine invalid value since PC must bet >> > a multiple of 4 in SPARC. The only odd target is i386, for which a >> > special flag is introduced in place of removed 'HF_SOFTMMU_MASK'. >> > >> > Suggested-by: Paolo Bonzini <address@hidden> >> > Signed-off-by: Sergey Fedorov <address@hidden> >> > Signed-off-by: Sergey Fedorov <address@hidden> > This has merge conflicts with the current state of master. Is there > anyway to have a common implementation that is specialised only when > needed? > The point was to put the assumptions on invalid CPU TB state as close to cpu_get_tb_cpu_state() definitions as possible. So that if anyone make changes they can notice those assumptions and correct them if necessary. Kind regards Sergey
[Prev in Thread] | Current Thread | [Next in Thread] |