From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paul Durrant Subject: [PATCH v3] x86/hvm/viridian: zero and check vcpu context __pad field Date: Wed, 30 Mar 2016 12:34:25 +0100 Message-ID: <1459337665-29319-1-git-send-email-paul.durrant@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta6.messagelabs.com ([85.158.143.247]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1alEZ4-0004EC-8R for xen-devel@lists.xenproject.org; Wed, 30 Mar 2016 11:45:34 +0000 List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: Andrew Cooper , Paul Durrant , Keir Fraser , Jan Beulich List-Id: xen-devel@lists.xenproject.org Q29tbWl0IDU3ODQ0NjMxICJzYXZlIEFQSUMgYXNzaXN0IHZlY3RvciIgYWRkZWQgYW4gZXh0cmEg ZmllbGQgdG8gdGhlCnZpcmlkaWFuIHZjcHUgY29udGV4dCBzYXZlIHJlY29yZC4gVGhpcyBmaWVs ZCB3YXMgb25seSBhIHVpbnQ4X3QgYW5kCnNvIGFuIGV4dHJhIF9fcGFkIGZpZWxkIHdhcyBhbHNv IGFkZGVkIHRvIHBhZCB1cCB0byB0aGUgbmV4dCA2NC1iaXQKYm91bmRhcnkuCgpUaGlzIHBhdGNo IG1ha2VzIHN1cmUgdGhhdCBfX3BhZCBmaWVsZCBpcyB6ZXJvZWQgb24gc2F2ZSBhbmQgY2hlY2tl ZApmb3IgemVybyBvbiByZXN0b3JlLiBUaGlzIHByZXZlbnRzIGEgcG90ZW50aWFsIGxlYWsgb2Yg aW5mb3JtYXRpb24KZnJvbSB0aGUgc3RhY2sgYW5kIGEgY29tcGF0aWJpbGl0eSBjaGVjayBhZ2Fp bnN0IGZ1dHVyZSB1c2Ugb2YgdGhlCnNwYWNlIG9jY3VwaWVkIGJ5IHRoZSBfX3BhZCBmaWVsZC4K ClRoaXMgcGF0Y2ggYWxzbyBhZGRzIGEgbWVtc2V0IHRvIG1ha2Ugc3VyZSB0aGF0IHRoZSB2aXJp ZGlhbiBkb21haW4KY29udGV4dCBpcyBmdWxseSB6ZXJvZWQuIFRoaXMgaXMgbm90IHN0cmljdGx5 IG5lY2Vzc2FyeSBidXQgaGVscHMKbWFrZSB0aGUgY29kZSBtb3JlIHJvYnVzdCBpZiBmaWVsZHMg YXJlIGFkZGVkIHRvIHRoYXQgc3RydWN0IGluCmZ1dHVyZS4KClNpZ25lZC1vZmYtYnk6IFBhdWwg RHVycmFudCA8cGF1bC5kdXJyYW50QGNpdHJpeC5jb20+CkNjOiBLZWlyIEZyYXNlciA8a2VpckB4 ZW4ub3JnPgpDYzogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpDYzogQW5kcmV3IENv b3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4KLS0tCgp2MzoKIC0gbWFrZSB6ZXJvX3Bh Z2UgYWNjZXNzaWJsZSBvdXRzaWRlIG1tLmMKCnYyOgogLSBkcm9wIGlzX3plcm8oKSBoZWxwZXIg YW4gdXNlIG1lbWNtcCBhZ2FpbnN0IHplcm9fcGFnZSBpbnN0ZWFkLgogLSBhZGQgbWVtc2V0IHRv IHZpcmlkaWFuX3NhdmVfZG9tYWluX2N0eHQoKSB0byByZWR1Y2UgcG90ZW50aWFsCiAgIGZvciBp bmZvcm1hdGlvbiBsZWFrYWdlIGluIGZ1dHVyZS4KLS0tCiB4ZW4vYXJjaC94ODYvaHZtL3Zpcmlk aWFuLmMgfCA3ICsrKysrKysKIHhlbi9hcmNoL3g4Ni9tbS5jICAgICAgICAgICB8IDUgKysrLS0K IHhlbi9pbmNsdWRlL2FzbS14ODYvbW0uaCAgICB8IDIgKysKIDMgZmlsZXMgY2hhbmdlZCwgMTIg aW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYv aHZtL3ZpcmlkaWFuLmMgYi94ZW4vYXJjaC94ODYvaHZtL3ZpcmlkaWFuLmMKaW5kZXggNWM3NmMx YS4uMTY1ZjU4ZSAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L2h2bS92aXJpZGlhbi5jCisrKyBi L3hlbi9hcmNoL3g4Ni9odm0vdmlyaWRpYW4uYwpAQCAtNzg1LDYgKzc4NSw4IEBAIHN0YXRpYyBp bnQgdmlyaWRpYW5fc2F2ZV9kb21haW5fY3R4dChzdHJ1Y3QgZG9tYWluICpkLCBodm1fZG9tYWlu X2NvbnRleHRfdCAqaCkKICAgICBpZiAoICFpc192aXJpZGlhbl9kb21haW4oZCkgKQogICAgICAg ICByZXR1cm4gMDsKIAorICAgIG1lbXNldCgmY3R4dCwgMCwgc2l6ZW9mKGN0eHQpKTsKKwogICAg IGN0eHQudGltZV9yZWZfY291bnQgPSBkLT5hcmNoLmh2bV9kb21haW4udmlyaWRpYW4udGltZV9y ZWZfY291bnQudmFsOwogICAgIGN0eHQuaHlwZXJjYWxsX2dwYSAgPSBkLT5hcmNoLmh2bV9kb21h aW4udmlyaWRpYW4uaHlwZXJjYWxsX2dwYS5yYXc7CiAgICAgY3R4dC5ndWVzdF9vc19pZCAgICA9 IGQtPmFyY2guaHZtX2RvbWFpbi52aXJpZGlhbi5ndWVzdF9vc19pZC5yYXc7CkBAIC04MjQsNiAr ODI2LDggQEAgc3RhdGljIGludCB2aXJpZGlhbl9zYXZlX3ZjcHVfY3R4dChzdHJ1Y3QgZG9tYWlu ICpkLCBodm1fZG9tYWluX2NvbnRleHRfdCAqaCkKICAgICBmb3JfZWFjaF92Y3B1KCBkLCB2ICkg ewogICAgICAgICBzdHJ1Y3QgaHZtX3ZpcmlkaWFuX3ZjcHVfY29udGV4dCBjdHh0OwogCisgICAg ICAgIG1lbXNldCgmY3R4dCwgMCwgc2l6ZW9mKGN0eHQpKTsKKwogICAgICAgICBjdHh0LmFwaWNf YXNzaXN0X21zciA9IHYtPmFyY2guaHZtX3ZjcHUudmlyaWRpYW4uYXBpY19hc3Npc3QubXNyLnJh dzsKICAgICAgICAgY3R4dC5hcGljX2Fzc2lzdF92ZWN0b3IgPSB2LT5hcmNoLmh2bV92Y3B1LnZp cmlkaWFuLmFwaWNfYXNzaXN0LnZlY3RvcjsKIApAQCAtODUxLDYgKzg1NSw5IEBAIHN0YXRpYyBp bnQgdmlyaWRpYW5fbG9hZF92Y3B1X2N0eHQoc3RydWN0IGRvbWFpbiAqZCwgaHZtX2RvbWFpbl9j b250ZXh0X3QgKmgpCiAgICAgaWYgKCBodm1fbG9hZF9lbnRyeV96ZXJvZXh0ZW5kKFZJUklESUFO X1ZDUFUsIGgsICZjdHh0KSAhPSAwICkKICAgICAgICAgcmV0dXJuIC1FSU5WQUw7CiAKKyAgICBp ZiAoIG1lbWNtcCgmY3R4dC5fcGFkLCB6ZXJvX3BhZ2UsIHNpemVvZihjdHh0Ll9wYWQpKSApCisg ICAgICAgIHJldHVybiAtRUlOVkFMOworCiAgICAgdi0+YXJjaC5odm1fdmNwdS52aXJpZGlhbi5h cGljX2Fzc2lzdC5tc3IucmF3ID0gY3R4dC5hcGljX2Fzc2lzdF9tc3I7CiAgICAgaWYgKCB2LT5h cmNoLmh2bV92Y3B1LnZpcmlkaWFuLmFwaWNfYXNzaXN0Lm1zci5maWVsZHMuZW5hYmxlZCApCiAg ICAgICAgIGluaXRpYWxpemVfYXBpY19hc3Npc3Qodik7CmRpZmYgLS1naXQgYS94ZW4vYXJjaC94 ODYvbW0uYyBiL3hlbi9hcmNoL3g4Ni9tbS5jCmluZGV4IGM5OTdiNTMuLmI4YjQxZmEgMTAwNjQ0 Ci0tLSBhL3hlbi9hcmNoL3g4Ni9tbS5jCisrKyBiL3hlbi9hcmNoL3g4Ni9tbS5jCkBAIC01ODks NyArNTg5LDggQEAgc3RhdGljIGlubGluZSB2b2lkIGd1ZXN0X2dldF9lZmZfa2Vybl9sMWUoc3Ry dWN0IHZjcHUgKnYsIHVuc2lnbmVkIGxvbmcgYWRkciwKICAgICBUT0dHTEVfTU9ERSgpOwogfQog Ci1zdGF0aWMgY29uc3QgY2hhciBfX3NlY3Rpb24oIi5ic3MucGFnZV9hbGlnbmVkLmNvbnN0Iikg emVyb19wYWdlW1BBR0VfU0laRV07CitzdGF0aWMgY29uc3QgY2hhciBfX3NlY3Rpb24oIi5ic3Mu cGFnZV9hbGlnbmVkLmNvbnN0IikgX196ZXJvX3BhZ2VbUEFHRV9TSVpFXTsKK2NvbnN0IGNoYXIg Knplcm9fcGFnZSA9IF9femVyb19wYWdlOwogCiBzdGF0aWMgdm9pZCBpbnZhbGlkYXRlX3NoYWRv d19sZHQoc3RydWN0IHZjcHUgKnYsIGludCBmbHVzaCkKIHsKQEAgLTQ1NjIsNyArNDU2Myw3IEBA IHZvaWQgZGVzdHJveV9nZHQoc3RydWN0IHZjcHUgKnYpCiB7CiAgICAgbDFfcGdlbnRyeV90ICpw bDFlOwogICAgIHVuc2lnbmVkIGludCBpOwotICAgIHVuc2lnbmVkIGxvbmcgcGZuLCB6ZXJvX3Bm biA9IFBGTl9ET1dOKF9fcGEoemVyb19wYWdlKSk7CisgICAgdW5zaWduZWQgbG9uZyBwZm4sIHpl cm9fcGZuID0gUEZOX0RPV04oX19wYShfX3plcm9fcGFnZSkpOwogCiAgICAgdi0+YXJjaC5wdl92 Y3B1LmdkdF9lbnRzID0gMDsKICAgICBwbDFlID0gZ2R0X2xkdF9wdGVzKHYtPmRvbWFpbiwgdik7 CmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9hc20teDg2L21tLmggYi94ZW4vaW5jbHVkZS9hc20t eDg2L21tLmgKaW5kZXggYjI1OTQyYi4uMDE1NTNhYiAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUv YXNtLXg4Ni9tbS5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS14ODYvbW0uaApAQCAtNTk1LDQgKzU5 NSw2IEBAIHR5cGVkZWYgc3RydWN0IG1tX3J3bG9jayB7CiAgICAgICAgICAgICAgICAgICAgICAg ICYoZCktPnhlbnBhZ2VfbGlzdCA6ICYoZCktPnBhZ2VfbGlzdCwgICAgICAgICAgICBcCiAgICAg ICAgICAgICAgICAgICAgJihkKS0+YXJjaC5yZWxtZW1fbGlzdCkKIAorZXh0ZXJuIGNvbnN0IGNo YXIgKnplcm9fcGFnZTsKKwogI2VuZGlmIC8qIF9fQVNNX1g4Nl9NTV9IX18gKi8KLS0gCjIuMS40 CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRl dmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwOi8vbGlzdHMueGVu Lm9yZy94ZW4tZGV2ZWwK