From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-cys01nam02on0137.outbound.protection.outlook.com ([104.47.37.137]:54886 "EHLO NAM02-CY1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1032594AbeCAPjW (ORCPT ); Thu, 1 Mar 2018 10:39:22 -0500 From: Sasha Levin To: "stable@vger.kernel.org" , "stable-commits@vger.kernel.org" CC: Wanpeng Li , =?utf-8?B?UmFkaW0gS3LEjW3DocWZ?= , Sasha Levin Subject: [added to the 4.1 stable tree] KVM: async_pf: Fix #DF due to inject "Page not Present" and "Page Ready" exceptions simultaneously Date: Thu, 1 Mar 2018 15:27:43 +0000 Message-ID: <20180301152116.1486-491-alexander.levin@microsoft.com> References: <20180301152116.1486-1-alexander.levin@microsoft.com> In-Reply-To: <20180301152116.1486-1-alexander.levin@microsoft.com> Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-ID: <9F13E958CD74CF488C9FC71A0F672BFA@namprd21.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 Sender: stable-owner@vger.kernel.org List-ID: RnJvbTogV2FucGVuZyBMaSA8d2FucGVuZy5saUBob3RtYWlsLmNvbT4NCg0KVGhpcyBwYXRjaCBo YXMgYmVlbiBhZGRlZCB0byB0aGUgNC4xIHN0YWJsZSB0cmVlLiBJZiB5b3UgaGF2ZSBhbnkNCm9i amVjdGlvbnMsIHBsZWFzZSBsZXQgdXMga25vdy4NCg0KPT09PT09PT09PT09PT09DQoNClsgVXBz dHJlYW0gY29tbWl0IDlhNmU3YzM5ODEwZTRhOGJjN2ZjOTUwNTZjZWZiNDA1ODNmZTA3ZWYgXQ0K DQpxZW11LXN5c3RlbS14ODYtODYwMCAgWzAwNF0gZC4uMSAgNzIwNS42ODc1MzA6IGt2bV9lbnRy eTogdmNwdSAyDQpxZW11LXN5c3RlbS14ODYtODYwMCAgWzAwNF0gLi4uLiAgNzIwNS42ODc1MzI6 IGt2bV9leGl0OiByZWFzb24gRVhDRVBUSU9OX05NSSByaXAgMHhmZmZmZmZmZmE5MjEyOTdkIGlu Zm8gZmZmZmViMmMwZTQ0ZTAxOCA4MDAwMGIwZQ0KcWVtdS1zeXN0ZW0teDg2LTg2MDAgIFswMDRd IC4uLi4gIDcyMDUuNjg3NTMyOiBrdm1fcGFnZV9mYXVsdDogYWRkcmVzcyBmZmZmZWIyYzBlNDRl MDE4IGVycm9yX2NvZGUgMA0KcWVtdS1zeXN0ZW0teDg2LTg2MDAgIFswMDRdIC4uLi4gIDcyMDUu Njg3NjIwOiBrdm1fdHJ5X2FzeW5jX2dldF9wYWdlOiBndmEgPSAweGZmZmZlYjJjMGU0NGUwMTgs IGdmbiA9IDB4NDI3ZTRlDQpxZW11LXN5c3RlbS14ODYtODYwMCAgWzAwNF0gLk4uLiAgNzIwNS42 ODc2Mjg6IGt2bV9hc3luY19wZl9ub3RfcHJlc2VudDogdG9rZW4gMHg4YjAwMiBndmEgMHhmZmZm ZWIyYzBlNDRlMDE4DQogICAga3dvcmtlci80OjItNzgxNCAgWzAwNF0gLi4uLiAgNzIwNS42ODc2 NTU6IGt2bV9hc3luY19wZl9jb21wbGV0ZWQ6IGd2YSAweGZmZmZlYjJjMGU0NGUwMTggYWRkcmVz cyAweDdmY2MzMGM0ZTAwMA0KcWVtdS1zeXN0ZW0teDg2LTg2MDAgIFswMDRdIC4uLi4gIDcyMDUu Njg3NzAzOiBrdm1fYXN5bmNfcGZfcmVhZHk6IHRva2VuIDB4OGIwMDIgZ3ZhIDB4ZmZmZmViMmMw ZTQ0ZTAxOA0KcWVtdS1zeXN0ZW0teDg2LTg2MDAgIFswMDRdIGQuLjEgIDcyMDUuNjg3NzExOiBr dm1fZW50cnk6IHZjcHUgMg0KDQpBZnRlciBydW5uaW5nIHNvbWUgbWVtb3J5IGludGVuc2l2ZSB3 b3JrbG9hZCBpbiBndWVzdCwgSSBjYXRjaCB0aGUga3dvcmtlcg0Kd2hpY2ggY29tcGxldGVzIHRo ZSBHVVAgdG9vIHF1aWNrbHksIGFuZCBxdWV1ZXMgYW4gIlBhZ2UgUmVhZHkiICNQRiBleGNlcHRp b24NCmFmdGVyIHRoZSAiUGFnZSBub3QgUHJlc2VudCIgZXhjZXB0aW9uIGJlZm9yZSB0aGUgbmV4 dCB2bWVudHJ5IGFzIHRoZSBhYm92ZQ0KdHJhY2Ugd2hpY2ggd2lsbCByZXN1bHQgaW4gI0RGIGlu amVjdGVkIHRvIGd1ZXN0Lg0KDQpUaGlzIHBhdGNoIGZpeGVzIGl0IGJ5IGNsZWFyaW5nIHRoZSBx dWV1ZSBmb3IgIlBhZ2Ugbm90IFByZXNlbnQiIGlmICJQYWdlIFJlYWR5Ig0Kb2NjdXJzIGJlZm9y ZSB0aGUgbmV4dCB2bWVudHJ5IHNpbmNlIHRoZSBHVVAgaGFzIGFscmVhZHkgZ290IHRoZSByZXF1 aXJlZCBwYWdlDQphbmQgc2hhZG93IHBhZ2UgdGFibGUgaGFzIGFscmVhZHkgYmVlbiBmaXhlZCBi eSAiUGFnZSBSZWFkeSIgaGFuZGxlci4NCg0KQ2M6IFBhb2xvIEJvbnppbmkgPHBib256aW5pQHJl ZGhhdC5jb20+DQpDYzogUmFkaW0gS3LEjW3DocWZIDxya3JjbWFyQHJlZGhhdC5jb20+DQpTaWdu ZWQtb2ZmLWJ5OiBXYW5wZW5nIExpIDx3YW5wZW5nLmxpQGhvdG1haWwuY29tPg0KRml4ZXM6IDdj OTA3MDViZjJhMyAoIktWTTogSW5qZWN0IGFzeW5jaHJvbm91cyBwYWdlIGZhdWx0IGludG8gYSBQ ViBndWVzdCBpZiBwYWdlIGlzIHN3YXBwZWQgb3V0LiIpDQpbQ2hhbmdlZCBpbmRlbnRhdGlvbiBh bmQgYWRkZWQgY2xlYXJpbmcgb2YgaW5qZWN0ZWQuIC0gUmFkaW1dDQpTaWduZWQtb2ZmLWJ5OiBS YWRpbSBLcsSNbcOhxZkgPHJrcmNtYXJAcmVkaGF0LmNvbT4NClNpZ25lZC1vZmYtYnk6IFNhc2hh IExldmluIDxhbGV4YW5kZXIubGV2aW5AbWljcm9zb2Z0LmNvbT4NCi0tLQ0KIGFyY2gveDg2L2t2 bS94ODYuYyB8IDM0ICsrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0NCiAxIGZpbGUg Y2hhbmdlZCwgMjYgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkNCg0KZGlmZiAtLWdpdCBh L2FyY2gveDg2L2t2bS94ODYuYyBiL2FyY2gveDg2L2t2bS94ODYuYw0KaW5kZXggMjYxYjA1NzEx MjQ2Li5lMDVjYjY2YjU3NWIgMTAwNjQ0DQotLS0gYS9hcmNoL3g4Ni9rdm0veDg2LmMNCisrKyBi L2FyY2gveDg2L2t2bS94ODYuYw0KQEAgLTc5MjcsNiArNzkyNywxMyBAQCBzdGF0aWMgaW50IGFw Zl9wdXRfdXNlcihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIHUzMiB2YWwpDQogCQkJCSAgICAgIHNp emVvZih2YWwpKTsNCiB9DQogDQorc3RhdGljIGludCBhcGZfZ2V0X3VzZXIoc3RydWN0IGt2bV92 Y3B1ICp2Y3B1LCB1MzIgKnZhbCkNCit7DQorDQorCXJldHVybiBrdm1fcmVhZF9ndWVzdF9jYWNo ZWQodmNwdS0+a3ZtLCAmdmNwdS0+YXJjaC5hcGYuZGF0YSwgdmFsLA0KKwkJCQkgICAgICBzaXpl b2YodTMyKSk7DQorfQ0KKw0KIHZvaWQga3ZtX2FyY2hfYXN5bmNfcGFnZV9ub3RfcHJlc2VudChz dHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsDQogCQkJCSAgICAgc3RydWN0IGt2bV9hc3luY19wZiAqd29y aykNCiB7DQpAQCAtNzk1Myw2ICs3OTYwLDcgQEAgdm9pZCBrdm1fYXJjaF9hc3luY19wYWdlX3By ZXNlbnQoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LA0KIAkJCQkgc3RydWN0IGt2bV9hc3luY19wZiAq d29yaykNCiB7DQogCXN0cnVjdCB4ODZfZXhjZXB0aW9uIGZhdWx0Ow0KKwl1MzIgdmFsOw0KIA0K IAlpZiAod29yay0+d2FrZXVwX2FsbCkNCiAJCXdvcmstPmFyY2gudG9rZW4gPSB+MDsgLyogYnJv YWRjYXN0IHdha2V1cCAqLw0KQEAgLTc5NjAsMTQgKzc5NjgsMjQgQEAgdm9pZCBrdm1fYXJjaF9h c3luY19wYWdlX3ByZXNlbnQoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LA0KIAkJa3ZtX2RlbF9hc3lu Y19wZl9nZm4odmNwdSwgd29yay0+YXJjaC5nZm4pOw0KIAl0cmFjZV9rdm1fYXN5bmNfcGZfcmVh ZHkod29yay0+YXJjaC50b2tlbiwgd29yay0+Z3ZhKTsNCiANCi0JaWYgKCh2Y3B1LT5hcmNoLmFw Zi5tc3JfdmFsICYgS1ZNX0FTWU5DX1BGX0VOQUJMRUQpICYmDQotCSAgICAhYXBmX3B1dF91c2Vy KHZjcHUsIEtWTV9QVl9SRUFTT05fUEFHRV9SRUFEWSkpIHsNCi0JCWZhdWx0LnZlY3RvciA9IFBG X1ZFQ1RPUjsNCi0JCWZhdWx0LmVycm9yX2NvZGVfdmFsaWQgPSB0cnVlOw0KLQkJZmF1bHQuZXJy b3JfY29kZSA9IDA7DQotCQlmYXVsdC5uZXN0ZWRfcGFnZV9mYXVsdCA9IGZhbHNlOw0KLQkJZmF1 bHQuYWRkcmVzcyA9IHdvcmstPmFyY2gudG9rZW47DQotCQlrdm1faW5qZWN0X3BhZ2VfZmF1bHQo dmNwdSwgJmZhdWx0KTsNCisJaWYgKHZjcHUtPmFyY2guYXBmLm1zcl92YWwgJiBLVk1fQVNZTkNf UEZfRU5BQkxFRCAmJg0KKwkgICAgIWFwZl9nZXRfdXNlcih2Y3B1LCAmdmFsKSkgew0KKwkJaWYg KHZhbCA9PSBLVk1fUFZfUkVBU09OX1BBR0VfTk9UX1BSRVNFTlQgJiYNCisJCSAgICB2Y3B1LT5h cmNoLmV4Y2VwdGlvbi5wZW5kaW5nICYmDQorCQkgICAgdmNwdS0+YXJjaC5leGNlcHRpb24ubnIg PT0gUEZfVkVDVE9SICYmDQorCQkgICAgIWFwZl9wdXRfdXNlcih2Y3B1LCAwKSkgew0KKwkJCXZj cHUtPmFyY2guZXhjZXB0aW9uLnBlbmRpbmcgPSBmYWxzZTsNCisJCQl2Y3B1LT5hcmNoLmV4Y2Vw dGlvbi5uciA9IDA7DQorCQkJdmNwdS0+YXJjaC5leGNlcHRpb24uaGFzX2Vycm9yX2NvZGUgPSBm YWxzZTsNCisJCQl2Y3B1LT5hcmNoLmV4Y2VwdGlvbi5lcnJvcl9jb2RlID0gMDsNCisJCX0gZWxz ZSBpZiAoIWFwZl9wdXRfdXNlcih2Y3B1LCBLVk1fUFZfUkVBU09OX1BBR0VfUkVBRFkpKSB7DQor CQkJZmF1bHQudmVjdG9yID0gUEZfVkVDVE9SOw0KKwkJCWZhdWx0LmVycm9yX2NvZGVfdmFsaWQg PSB0cnVlOw0KKwkJCWZhdWx0LmVycm9yX2NvZGUgPSAwOw0KKwkJCWZhdWx0Lm5lc3RlZF9wYWdl X2ZhdWx0ID0gZmFsc2U7DQorCQkJZmF1bHQuYWRkcmVzcyA9IHdvcmstPmFyY2gudG9rZW47DQor CQkJa3ZtX2luamVjdF9wYWdlX2ZhdWx0KHZjcHUsICZmYXVsdCk7DQorCQl9DQogCX0NCiAJdmNw dS0+YXJjaC5hcGYuaGFsdGVkID0gZmFsc2U7DQogCXZjcHUtPmFyY2gubXBfc3RhdGUgPSBLVk1f TVBfU1RBVEVfUlVOTkFCTEU7DQotLSANCjIuMTQuMQ0K