[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] x86/EPT: squash meaningless TLB flush
- To: Andrew Cooper <amc96@xxxxxxxx>
- From: Jan Beulich <jbeulich@xxxxxxxx>
- Date: Tue, 30 Nov 2021 17:57:37 +0100
- Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none
- Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=pQ5UX9T3eHeUdOvm6MT+nCstxPpI2elfjhWVptsFKFw=; b=VtqM5P3qOOHcGDhUW4NgXvslRvrTK2kcDF+p4QTbcLeEOSt63mtP0FJc8teutisd6mn+xOQ25HdKj61n+1IfpMzpkXObXDZIvUR8svwd+zSlbf5H6BaF9HJAWY66Q3mDj+0KNkxhz2t7ZGDXzjUX1xoPQHKhz5u7RScc6bSTBJHWhqH+uR4JWHuoLZfHQ9L8tyC2y6lf3yFBb+q1iTXGVBxyPwqbjlkbFGdKtgyGuaRzeGA1SdVQLdeP+DwNvO/f81MtKyNEntVn1gJdCWfbBStN3h2bdD+RWcIY4ZFMb6pmdnoFKR0V6JCExrgsPAhpF/cXw1Fo+Oe9wLrm03xFqw==
- Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RDsIn/GaqsYkHgRFvL1FfiJUOSBj87Gbo10ec9GHD+4y7aLQog6R5DYJqifK+jAvZ/0gytnnYYybI3oYJtUpgqocKQIz6YNmGDq+M68AvNxNsszBSVqUb7EpGMtO+ye4OkOOGCr2KxJ+Au8w0yEfrYi23iFUl+42UJ044oABjy9LMqk1ztZMsax8SS+t2yI7D1W6v8/w2jeB1JTPeUr3SkPFNY+JYBM9AiTHEjtDxfGwco/p9dgiE/8h8GmZBhYeSFtAYAiNh+yS3mTeHl5K9d6f5KUUUCsuwqKddPqvwQ3NgbLyq+ohxjzVAc1T93MPUdivs6T/G4pSbkNIGfsIGg==
- Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com;
- Cc: Jun Nakajima <jun.nakajima@xxxxxxxxx>, Kevin Tian <kevin.tian@xxxxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>
- Delivery-date: Tue, 30 Nov 2021 16:57:52 +0000
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
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 <jbeulich@xxxxxxxx>
>
> 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
|