On 30.11.2021 17:44, Andrew Cooper wrote: > On 30/11/2021 16:10, Jan Beulich wrote: >> ept_free_entry() gets called after a flush - if one is necessary in the >> first place - was already issued. That behavior is similar to NPT, which >> also doesn't have any further flush in p2m_free_entry(). (Furthermore, >> the function being recursive, in case of recursiveness way too many >> flushes would have been issued.) >> >> Signed-off-by: Jan Beulich <jbeul...@suse.com> > > ept_free_entry() is called either recursively, or after an > ept_split_super_page(), and I agree that it does not want to queue > multiple flushes. > > However, I don't see where a suitable flush is in the superpage path. > Am I overlooking something?
When it gets called after ept_split_super_page(), that's in case the function failed (and hence no update to live page tables was made). Jan