cputlb: do not evict empty entries to the vtlb
authorEmilio G. Cota <cota@braap.org>
Wed, 16 Jan 2019 17:01:12 +0000 (12:01 -0500)
committerRichard Henderson <richard.henderson@linaro.org>
Mon, 28 Jan 2019 15:03:34 +0000 (07:03 -0800)
commit3cea94bbc97180dd2de78993982645b11405b3b2
tree6cf0412130aa88931cb015c515f346e3cf41f9d1
parent93f332a50371936ea02392bdb748c8140ef3f06a
cputlb: do not evict empty entries to the vtlb

Currently we evict an entry to the victim TLB when it doesn't match
the current address. But it could be that there's no match because
the current entry is empty (i.e. all -1's, for instance via tlb_flush).
Do not evict the entry to the vtlb in that case.

This change will help us keep track of the TLB's use rate, which
we'll use to implement a policy for dynamic TLB sizing.

Tested-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Emilio G. Cota <cota@braap.org>
Message-Id: <20190116170114.26802-2-cota@braap.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
accel/tcg/cputlb.c