From mboxrd@z Thu Jan 1 00:00:00 1970 From: Roger Pau Monne Subject: [PATCH v2 2/3] xen/hvm: introduce a fpu_uninitialised field to the CPU save record Date: Tue, 17 Nov 2015 18:44:38 +0000 Message-ID: <1447785879-32574-3-git-send-email-roger.pau@citrix.com> References: <1447785879-32574-1-git-send-email-roger.pau@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta5.messagelabs.com ([195.245.231.135]) by lists.xen.org with esmtp (Exim 4.72) (envelope-from ) id 1ZylFh-0007Tc-RD for xen-devel@lists.xenproject.org; Tue, 17 Nov 2015 18:45:13 +0000 In-Reply-To: <1447785879-32574-1-git-send-email-roger.pau@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: xen-devel@lists.xenproject.org Cc: Andrew Cooper , Jan Beulich , Roger Pau Monne List-Id: xen-devel@lists.xenproject.org SW50cm9kdWNlIGEgbmV3IGZpbGVkIHRvIHNpZ25hbCBpZiB0aGUgRlBVIGhhcyBiZWVuIGluaXRp YWxpc2VkIG9yIG5vdC4gWGVuCm5lZWRzIHRoaXMgbmV3IGZpbGVkIGluIG9yZGVyIHRvIGtub3cg d2hldGhlciB0byBzZXQgdGhlIEZQVSBhcyBpbml0aWFsaXNlZApvciBub3QgZHVyaW5nIHJlc3Rv cmUgb2YgQ1BVIGNvbnRleHQuIFByZXZpb3VzbHkgWGVuIGFsd2F5cyB3cm9uZ2x5IGFzc3VtZWQK dGhlIEZQVSB3YXMgaW5pdGlhbGlzZWQgb24gcmVzdG9yZS4KClNpZ25lZC1vZmYtYnk6IFJvZ2Vy IFBhdSBNb25uw6kgPHJvZ2VyLnBhdUBjaXRyaXguY29tPgpDYzogSmFuIEJldWxpY2ggPGpiZXVs aWNoQHN1c2UuY29tPgpDYzogQW5kcmV3IENvb3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNv bT4KLS0tCkNoYW5nZXMgc2luY2UgdjE6CiAtIERvbid0IGFkZCB5ZXQgYW5vdGhlciBjb21wYXQg c3RydWN0dXJlLCBuZXcgZmllbGRzIHNob3VsZCBhbHdheXMgYmUgYWRkZWQKICAgdG8gdGhlIGVu ZCBvZiB0aGUgZXhpc3Rpbmcgc3RydWN0dXJlIGFuZCBvZmZzZXRvZiBzaG91bGQgYmUgdXNlZCB0 bwogICBjb21wYXJlIHNpemVzLgogLSBMZWF2ZSB0aGUgcHJldmlvdXMgY29tcGF0IHN0cnVjdHVy ZSBhcy1pcywgc2luY2UgdGhlIGZpZWxkIHdhcyBub3QgYWRkZWQKICAgdG8gdGhlIGVuZCB3ZSBj YW5ub3QgcmVtb3ZlIGl0IGFuZCB1c2Ugb2Zmc2V0b2YgaW4gdGhpcyBjYXNlLgotLS0KIHhlbi9h cmNoL3g4Ni9odm0vaHZtLmMgICAgICAgICAgICAgICAgIHwgIDUgKysrLS0KIHhlbi9pbmNsdWRl L3B1YmxpYy9hcmNoLXg4Ni9odm0vc2F2ZS5oIHwgMjYgKysrKysrKysrKysrKysrKysrKy0tLS0t LS0KIDIgZmlsZXMgY2hhbmdlZCwgMjIgaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKCmRp ZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvaHZtL2h2bS5jIGIveGVuL2FyY2gveDg2L2h2bS9odm0u YwppbmRleCBlYTk4MmUyLi5iYWMwOTYyIDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYvaHZtL2h2 bS5jCisrKyBiL3hlbi9hcmNoL3g4Ni9odm0vaHZtLmMKQEAgLTE4MDAsNiArMTgwMCw3IEBAIHN0 YXRpYyBpbnQgaHZtX3NhdmVfY3B1X2N0eHQoc3RydWN0IGRvbWFpbiAqZCwgaHZtX2RvbWFpbl9j b250ZXh0X3QgKmgpCiAgICAgICAgICAgICBtZW1jcHkoY3R4dC5mcHVfcmVncywgdi0+YXJjaC5m cHVfY3R4dCwgc2l6ZW9mKGN0eHQuZnB1X3JlZ3MpKTsKICAgICAgICAgZWxzZSAKICAgICAgICAg ICAgIG1lbXNldChjdHh0LmZwdV9yZWdzLCAwLCBzaXplb2YoY3R4dC5mcHVfcmVncykpOworICAg ICAgICBjdHh0LmZwdV9pbml0aWFsaXNlZCA9IHYtPmZwdV9pbml0aWFsaXNlZDsKIAogICAgICAg ICBjdHh0LnJheCA9IHYtPmFyY2gudXNlcl9yZWdzLmVheDsKICAgICAgICAgY3R4dC5yYnggPSB2 LT5hcmNoLnVzZXJfcmVncy5lYng7CkBAIC0xOTc5LDcgKzE5ODAsNyBAQCBzdGF0aWMgaW50IGh2 bV9sb2FkX2NwdV9jdHh0KHN0cnVjdCBkb21haW4gKmQsIGh2bV9kb21haW5fY29udGV4dF90ICpo KQogICAgICAgICByZXR1cm4gLUVJTlZBTDsKICAgICB9CiAKLSAgICBpZiAoIGh2bV9sb2FkX2Vu dHJ5KENQVSwgaCwgJmN0eHQpICE9IDAgKSAKKyAgICBpZiAoIGh2bV9sb2FkX2VudHJ5X3plcm9l eHRlbmQoQ1BVLCBoLCAmY3R4dCkgIT0gMCApCiAgICAgICAgIHJldHVybiAtRUlOVkFMOwogCiAg ICAgLyogU2FuaXR5IGNoZWNrIHNvbWUgY29udHJvbCByZWdpc3RlcnMuICovCkBAIC0yMTIyLDcg KzIxMjMsNyBAQCBzdGF0aWMgaW50IGh2bV9sb2FkX2NwdV9jdHh0KHN0cnVjdCBkb21haW4gKmQs IGh2bV9kb21haW5fY29udGV4dF90ICpoKQogICAgIHYtPmFyY2guZGVidWdyZWdbN10gPSBjdHh0 LmRyNzsKIAogICAgIHYtPmFyY2gudmdjX2ZsYWdzID0gVkdDRl9vbmxpbmU7Ci0gICAgdi0+ZnB1 X2luaXRpYWxpc2VkID0gMTsKKyAgICB2LT5mcHVfaW5pdGlhbGlzZWQgPSBjdHh0LmZwdV9pbml0 aWFsaXNlZDsKIAogICAgIC8qIEF1eGlsaWFyeSBwcm9jZXNzb3JzIHNob3VsZCBiZSB3b2tlbiBp bW1lZGlhdGVseS4gKi8KICAgICB2LT5pc19pbml0aWFsaXNlZCA9IDE7CmRpZmYgLS1naXQgYS94 ZW4vaW5jbHVkZS9wdWJsaWMvYXJjaC14ODYvaHZtL3NhdmUuaCBiL3hlbi9pbmNsdWRlL3B1Ymxp Yy9hcmNoLXg4Ni9odm0vc2F2ZS5oCmluZGV4IGM3NTYwZjIuLjgzNzUyZjkgMTAwNjQ0Ci0tLSBh L3hlbi9pbmNsdWRlL3B1YmxpYy9hcmNoLXg4Ni9odm0vc2F2ZS5oCisrKyBiL3hlbi9pbmNsdWRl L3B1YmxpYy9hcmNoLXg4Ni9odm0vc2F2ZS5oCkBAIC00Nyw3ICs0Nyw5IEBAIERFQ0xBUkVfSFZN X1NBVkVfVFlQRShIRUFERVIsIDEsIHN0cnVjdCBodm1fc2F2ZV9oZWFkZXIpOwogLyoKICAqIFBy b2Nlc3NvcgogICoKLSAqIENvbXBhdDogUHJlLTMuNCBkaWRuJ3QgaGF2ZSBtc3JfdHNjX2F1eAor ICogQ29tcGF0OgorICogICAgIC0gUHJlLTMuNCBkaWRuJ3QgaGF2ZSBtc3JfdHNjX2F1eAorICog ICAgIC0gUHJlLTQuNyBkaWRuJ3QgaGF2ZSBmcHVfaW5pdGlhbGlzZWQKICAqLwogCiBzdHJ1Y3Qg aHZtX2h3X2NwdSB7CkBAIC0xNTcsNiArMTU5LDggQEAgc3RydWN0IGh2bV9od19jcHUgewogICAg IH07CiAgICAgLyogZXJyb3IgY29kZSBmb3IgcGVuZGluZyBldmVudCAqLwogICAgIHVpbnQzMl90 IGVycm9yX2NvZGU7CisgICAgLyogaXMgZnB1IGluaXRpYWxpc2VkPyAqLworICAgIHVpbnQzMl90 IGZwdV9pbml0aWFsaXNlZDsKIH07CiAKIHN0cnVjdCBodm1faHdfY3B1X2NvbXBhdCB7CkBAIC0y NjYsNiArMjcwLDcgQEAgc3RydWN0IGh2bV9od19jcHVfY29tcGF0IHsKICAgICB9OwogICAgIC8q IGVycm9yIGNvZGUgZm9yIHBlbmRpbmcgZXZlbnQgKi8KICAgICB1aW50MzJfdCBlcnJvcl9jb2Rl OworICAgIC8qdWludDMyX3QgZnB1X2luaXRpYWxpc2VkOyBDT01QQVQgKi8KIH07CiAKIHN0YXRp YyBpbmxpbmUgaW50IF9odm1faHdfZml4X2NwdSh2b2lkICpoLCBpbnQgc2l6ZSkgewpAQCAtMjc1 LDEyICsyODAsMTkgQEAgc3RhdGljIGlubGluZSBpbnQgX2h2bV9od19maXhfY3B1KHZvaWQgKmgs IGludCBzaXplKSB7CiAgICAgICAgIHN0cnVjdCBodm1faHdfY3B1X2NvbXBhdCBjbXA7CiAgICAg fSAqdWNwdSA9ICh1bmlvbiBodm1faHdfY3B1X3VuaW9uICopaDsKIAotICAgIC8qIElmIHdlIGNv cHkgZnJvbSB0aGUgZW5kIGJhY2t3YXJkcywgd2Ugc2hvdWxkCi0gICAgICogYmUgYWJsZSB0byBk byB0aGUgbW9kaWZpY2F0aW9uIGluLXBsYWNlICovCi0gICAgdWNwdS0+bmF0LmVycm9yX2NvZGUg PSB1Y3B1LT5jbXAuZXJyb3JfY29kZTsKLSAgICB1Y3B1LT5uYXQucGVuZGluZ19ldmVudCA9IHVj cHUtPmNtcC5wZW5kaW5nX2V2ZW50OwotICAgIHVjcHUtPm5hdC50c2MgPSB1Y3B1LT5jbXAudHNj OwotICAgIHVjcHUtPm5hdC5tc3JfdHNjX2F1eCA9IDA7CisgICAgaWYgKCBzaXplID09IHNpemVv ZihzdHJ1Y3QgaHZtX2h3X2NwdV9jb21wYXQpICkKKyAgICB7CisgICAgICAgIC8qCisgICAgICAg ICAqIElmIHdlIGNvcHkgZnJvbSB0aGUgZW5kIGJhY2t3YXJkcywgd2Ugc2hvdWxkCisgICAgICAg ICAqIGJlIGFibGUgdG8gZG8gdGhlIG1vZGlmaWNhdGlvbiBpbi1wbGFjZS4KKyAgICAgICAgICov CisgICAgICAgIHVjcHUtPm5hdC5lcnJvcl9jb2RlID0gdWNwdS0+Y21wLmVycm9yX2NvZGU7Cisg ICAgICAgIHVjcHUtPm5hdC5wZW5kaW5nX2V2ZW50ID0gdWNwdS0+Y21wLnBlbmRpbmdfZXZlbnQ7 CisgICAgICAgIHVjcHUtPm5hdC50c2MgPSB1Y3B1LT5jbXAudHNjOworICAgICAgICB1Y3B1LT5u YXQubXNyX3RzY19hdXggPSAwOworICAgIH0KKyAgICAvKiBNaW1pYyB0aGUgb2xkIGJlaGF2aW91 ciBieSB1bmNvbmRpdGlvbmFsbHkgc2V0dGluZyBmcHVfaW5pdGlhbGlzZWQuICovCisgICAgdWNw dS0+bmF0LmZwdV9pbml0aWFsaXNlZCA9IDE7CiAKICAgICByZXR1cm4gMDsKIH0KLS0gCjEuOS41 IChBcHBsZSBHaXQtNTAuMykKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3Jn Cmh0dHA6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=