In qemu, there is a virtual pc hash table and a physical pc hash table. virtual pc hash table is used to find tbs until a context switch. and physical pc hash table keeps all the translated tb. virtual pc hash table is smaller, accessed with 12 bits and physical pc hash table is bigger, accessed with 15 bits. the size in the hash tables are the primary reasons for having 2 hash tables ?
Thanks Xin