On 20/01/2023 1:10 pm, Jan Beulich wrote: > On 20.01.2023 12:45, Andrew Cooper wrote: >> This is a global variable (actually 3, one per GUEST_PAGING_LEVEL), operated >> on using atomics only (with no regard to what else shares the same >> cacheline), >> which emits a diagnostic (in debug builds only) without changing any program >> behaviour. >> >> Based on read-only p2m types including logdirty, this diagnostic can be >> tripped by entirely legitimate guest behaviour. > Can it? At the very least shadow doesn't use p2m_ram_logdirty, but "cooks" > log-dirty handling its own way. > >> Signed-off-by: Andrew Cooper <[email protected]> > Acked-by: Jan Beulich <[email protected]>
Thanks. > with the last sentence above corrected (if need be: removed). I can remove it, but I feel as if there ought to be something there. The other RO types are ram_ro, grant_map_ro and ram_shared. shared has hopefully been unshared before getting to this point, while the other two have unclear semantics (as neither exist in real systems). Writing to something which is actually a ROM either does silent discard, or #MC. Read-only grants really ought to #PF, but I bet this ABI change between PV and HVM guests wasn't noticed because I'm not aware of any common uses of read-only grants. ~Andrew
