From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?q?Adalbert=20Laz=C4=83r?= Subject: [RFC PATCH v6 41/92] KVM: MMU: Enable Lazy mode SPPT setup Date: Fri, 9 Aug 2019 18:59:56 +0300 Message-ID: <20190809160047.8319-42-alazar@bitdefender.com> References: <20190809160047.8319-1-alazar@bitdefender.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190809160047.8319-1-alazar@bitdefender.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: virtualization-bounces@lists.linux-foundation.org Errors-To: virtualization-bounces@lists.linux-foundation.org To: kvm@vger.kernel.org Cc: Tamas K Lengyel , Weijiang Yang , Yu C , =?UTF-8?q?Radim=20Kr=C4=8Dm=C3=A1=C5=99?= , Jan Kiszka , =?UTF-8?q?Samuel=20Laur=C3=A9n?= , Konrad Rzeszutek Wilk , virtualization@lists.linux-foundation.org, =?UTF-8?q?Adalbert=20Laz=C4=83r?= , linux-mm@kvack.org, Patrick Colp , Mathieu Tarral , Stefan Hajnoczi , Paolo Bonzini , Zhang@mail.linuxfoundation.org, =?UTF-8?q?Mihai=20Don=C8=9Bu?= List-Id: virtualization@lists.linuxfoundation.org RnJvbTogWWFuZyBXZWlqaWFuZyA8d2VpamlhbmcueWFuZ0BpbnRlbC5jb20+CgpJZiBTUFAgc3Vi cGFnZXMgYXJlIHNldCB3aGlsZSB0aGUgcGh5c2ljYWwgcGFnZSBhcmUgbm90CmF2YWlsYWJsZSBp biBFUFQgbGVhZiBlbnRyeSwgdGhlIG1hcHBpbmcgaXMgZmlyc3Qgc3RvcmVkCmluIFNQUCBhY2Nl c3MgYml0bWFwIGJ1ZmZlci4gU1BQVCBzZXR1cCBpcyBkZWZlcnJlZCB0bwphY2Nlc3MgdG8gdGhl IHByb3RlY3RlZCBwYWdlLCBpbiBFUFQgcGFnZSBmYXVsdCBoYW5kbGVyLAp0aGUgU1BQVCBlbnJp ZXMgYXJlIHNldCB1cC4KClNpZ25lZC1vZmYtYnk6IFlhbmcgV2VpamlhbmcgPHdlaWppYW5nLnlh bmdAaW50ZWwuY29tPgpNZXNzYWdlLUlkOiA8MjAxOTA3MTcxMzM3NTEuMTI5MTAtOS13ZWlqaWFu Zy55YW5nQGludGVsLmNvbT4KU2lnbmVkLW9mZi1ieTogQWRhbGJlcnQgTGF6xINyIDxhbGF6YXJA Yml0ZGVmZW5kZXIuY29tPgotLS0KIGFyY2gveDg2L2t2bS9tbXUuYyB8IDI0ICsrKysrKysrKysr KysrKysrKysrKysrKwogMSBmaWxlIGNoYW5nZWQsIDI0IGluc2VydGlvbnMoKykKCmRpZmYgLS1n aXQgYS9hcmNoL3g4Ni9rdm0vbW11LmMgYi9hcmNoL3g4Ni9rdm0vbW11LmMKaW5kZXggZDU5MTA4 YTNlYmJmLi4yNDIyMmUzYWRkOTEgMTAwNjQ0Ci0tLSBhL2FyY2gveDg2L2t2bS9tbXUuYworKysg Yi9hcmNoL3g4Ni9rdm0vbW11LmMKQEAgLTQ0MDAsNiArNDQwMCwyNiBAQCBjaGVja19odWdlcGFn ZV9jYWNoZV9jb25zaXN0ZW5jeShzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIGdmbl90IGdmbiwgaW50 IGxldmVsKQogCXJldHVybiBrdm1fbXRycl9jaGVja19nZm5fcmFuZ2VfY29uc2lzdGVuY3kodmNw dSwgZ2ZuLCBwYWdlX251bSk7CiB9CiAKK3N0YXRpYyBpbnQga3ZtX2VuYWJsZV9zcHBfcHJvdGVj dGlvbihzdHJ1Y3Qga3ZtICprdm0sIHU2NCBnZm4pCit7CisJc3RydWN0IGt2bV9zdWJwYWdlIHNw cF9pbmZvID0gezB9OworCXN0cnVjdCBrdm1fbWVtb3J5X3Nsb3QgKnNsb3Q7CisKKwlzbG90ID0g Z2ZuX3RvX21lbXNsb3Qoa3ZtLCBnZm4pOworCWlmICghc2xvdCkKKwkJcmV0dXJuIC1FRkFVTFQ7 CisKKwlzcHBfaW5mby5iYXNlX2dmbiA9IGdmbjsKKwlzcHBfaW5mby5ucGFnZXMgPSAxOworCisJ aWYgKGt2bV9tbXVfZ2V0X3N1YnBhZ2VzKGt2bSwgJnNwcF9pbmZvLCB0cnVlKSA8IDApCisJCXJl dHVybiAtRUZBVUxUOworCisJaWYgKHNwcF9pbmZvLmFjY2Vzc19tYXBbMF0gIT0gRlVMTF9TUFBf QUNDRVNTKQorCQlrdm1fbW11X3NldF9zdWJwYWdlcyhrdm0sICZzcHBfaW5mbywgdHJ1ZSk7CisK KwlyZXR1cm4gMDsKK30KIHN0YXRpYyBpbnQgdGRwX3BhZ2VfZmF1bHQoc3RydWN0IGt2bV92Y3B1 ICp2Y3B1LCBndmFfdCBncGEsIHUzMiBlcnJvcl9jb2RlLAogCQkJICBib29sIHByZWZhdWx0KQog ewpAQCAtNDQ1MSw2ICs0NDcxLDEwIEBAIHN0YXRpYyBpbnQgdGRwX3BhZ2VfZmF1bHQoc3RydWN0 IGt2bV92Y3B1ICp2Y3B1LCBndmFfdCBncGEsIHUzMiBlcnJvcl9jb2RlLAogCWlmIChsaWtlbHko IWZvcmNlX3B0X2xldmVsKSkKIAkJdHJhbnNwYXJlbnRfaHVnZXBhZ2VfYWRqdXN0KHZjcHUsICZn Zm4sICZwZm4sICZsZXZlbCk7CiAJciA9IF9fZGlyZWN0X21hcCh2Y3B1LCB3cml0ZSwgbWFwX3dy aXRhYmxlLCBsZXZlbCwgZ2ZuLCBwZm4sIHByZWZhdWx0KTsKKworCWlmICh2Y3B1LT5rdm0tPmFy Y2guc3BwX2FjdGl2ZSAmJiBsZXZlbCA9PSBQVF9QQUdFX1RBQkxFX0xFVkVMKQorCQlrdm1fZW5h YmxlX3NwcF9wcm90ZWN0aW9uKHZjcHUtPmt2bSwgZ2ZuKTsKKwogCXNwaW5fdW5sb2NrKCZ2Y3B1 LT5rdm0tPm1tdV9sb2NrKTsKIAogCXJldHVybiByOwpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpWaXJ0dWFsaXphdGlvbiBtYWlsaW5nIGxpc3QKVmlydHVh bGl6YXRpb25AbGlzdHMubGludXgtZm91bmRhdGlvbi5vcmcKaHR0cHM6Ly9saXN0cy5saW51eGZv dW5kYXRpb24ub3JnL21haWxtYW4vbGlzdGluZm8vdmlydHVhbGl6YXRpb24=