From mboxrd@z Thu Jan 1 00:00:00 1970 From: Juergen Gross Subject: [PATCH 08/22] mini-os: initialize trap handling for HVMlite Date: Tue, 23 Aug 2016 17:15:54 +0200 Message-ID: <1471965368-6159-9-git-send-email-jgross@suse.com> References: <1471965368-6159-1-git-send-email-jgross@suse.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1471965368-6159-1-git-send-email-jgross@suse.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: minios-devel@lists.xenproject.org, xen-devel@lists.xenproject.org Cc: Juergen Gross , samuel.thibault@ens-lyon.org, wei.liu2@citrix.com List-Id: xen-devel@lists.xenproject.org VHJhcCBoYW5kbGluZyBmb3IgSFZNbGl0ZSBkb21haW5zIHJlcXVpcmVzIGFuIGluaXRpYWxpemVk IElEVC4KClNpZ25lZC1vZmYtYnk6IEp1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT4KLS0t CiBhcmNoL3g4Ni9zZXR1cC5jICB8IDE1IC0tLS0tLS0tLS0KIGFyY2gveDg2L3RyYXBzLmMgIHwg ODggKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KwogYXJjaC94ODYveDg2XzY0LlMgfCAgNCArKysKIGluY2x1ZGUveDg2L29zLmggIHwgIDEgKwog NCBmaWxlcyBjaGFuZ2VkLCA5MyBpbnNlcnRpb25zKCspLCAxNSBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9hcmNoL3g4Ni9zZXR1cC5jIGIvYXJjaC94ODYvc2V0dXAuYwppbmRleCBlZGM0Y2E0 Li5lZmVjZWZiIDEwMDY0NAotLS0gYS9hcmNoL3g4Ni9zZXR1cC5jCisrKyBiL2FyY2gveDg2L3Nl dHVwLmMKQEAgLTUyLDEwICs1Miw2IEBAIGNoYXIgc3RhY2tbMipTVEFDS19TSVpFXTsKIAogZXh0 ZXJuIGNoYXIgc2hhcmVkX2luZm9bUEFHRV9TSVpFXTsKIAotLyogQXNzZW1ibGVyIGludGVyZmFj ZSBmbnMgaW4gZW50cnkuUy4gKi8KLXZvaWQgaHlwZXJ2aXNvcl9jYWxsYmFjayh2b2lkKTsKLXZv aWQgZmFpbHNhZmVfY2FsbGJhY2sodm9pZCk7Ci0KICNpZiBkZWZpbmVkKF9feDg2XzY0X18pCiAj ZGVmaW5lIF9fcHRlKHgpICgocHRlX3QpIHsgKHgpIH0gKQogI2Vsc2UKQEAgLTE2MiwxNyArMTU4 LDYgQEAgYXJjaF9pbml0KHZvaWQgKnBhcikKIAkvKiBHcmFiIHRoZSBzaGFyZWRfaW5mbyBwb2lu dGVyIGFuZCBwdXQgaXQgaW4gYSBzYWZlIHBsYWNlLiAqLwogCUhZUEVSVklTT1Jfc2hhcmVkX2lu Zm8gPSBtYXBfc2hhcmVkX2luZm8oc3RhcnRfaW5mby5zaGFyZWRfaW5mbyk7CiAKLQkgICAgLyog U2V0IHVwIGV2ZW50IGFuZCBmYWlsc2FmZSBjYWxsYmFjayBhZGRyZXNzZXMuICovCi0jaWZkZWYg X19pMzg2X18KLQlIWVBFUlZJU09SX3NldF9jYWxsYmFja3MoCi0JCV9fS0VSTkVMX0NTLCAodW5z aWduZWQgbG9uZyloeXBlcnZpc29yX2NhbGxiYWNrLAotCQlfX0tFUk5FTF9DUywgKHVuc2lnbmVk IGxvbmcpZmFpbHNhZmVfY2FsbGJhY2spOwotI2Vsc2UKLQlIWVBFUlZJU09SX3NldF9jYWxsYmFj a3MoCi0JCSh1bnNpZ25lZCBsb25nKWh5cGVydmlzb3JfY2FsbGJhY2ssCi0JCSh1bnNpZ25lZCBs b25nKWZhaWxzYWZlX2NhbGxiYWNrLCAwKTsKLSNlbmRpZgotCiAJc3RhcnRfa2VybmVsKCk7CiB9 CiAKZGlmZiAtLWdpdCBhL2FyY2gveDg2L3RyYXBzLmMgYi9hcmNoL3g4Ni90cmFwcy5jCmluZGV4 IDMwN2ExNGMuLjNiMWZmZmIgMTAwNjQ0Ci0tLSBhL2FyY2gveDg2L3RyYXBzLmMKKysrIGIvYXJj aC94ODYvdHJhcHMuYwpAQCAtMSwxMCArMSwxMiBAQAogCiAjaW5jbHVkZSA8bWluaS1vcy9vcy5o PgogI2luY2x1ZGUgPG1pbmktb3MvdHJhcHMuaD4KKyNpbmNsdWRlIDxtaW5pLW9zL2Rlc2MuaD4K ICNpbmNsdWRlIDxtaW5pLW9zL2h5cGVydmlzb3IuaD4KICNpbmNsdWRlIDxtaW5pLW9zL21tLmg+ CiAjaW5jbHVkZSA8bWluaS1vcy9saWIuaD4KICNpbmNsdWRlIDxtaW5pLW9zL3NjaGVkLmg+Cisj aW5jbHVkZSA8eGVuL2h2bS9wYXJhbXMuaD4KIAogLyoKICAqIFRoZXNlIGFyZSBhc3NlbWJsZXIg c3R1YnMgaW4gZW50cnkuUy4KQEAgLTI5Myw2ICsyOTUsMTEgQEAgdm9pZCBkb19zcHVyaW91c19p bnRlcnJ1cHRfYnVnKHN0cnVjdCBwdF9yZWdzICogcmVncykKIHsKIH0KIAorLyogQXNzZW1ibGVy IGludGVyZmFjZSBmbnMgaW4gZW50cnkuUy4gKi8KK3ZvaWQgaHlwZXJ2aXNvcl9jYWxsYmFjayh2 b2lkKTsKK3ZvaWQgZmFpbHNhZmVfY2FsbGJhY2sodm9pZCk7CisKKyNpZmRlZiBDT05GSUdfUEFS QVZJUlQKIC8qCiAgKiBTdWJtaXQgYSB2aXJ0dWFsIElEVCB0byB0ZWggaHlwZXJ2aXNvci4gVGhp cyBjb25zaXN0cyBvZiB0dXBsZXMKICAqIChpbnRlcnJ1cHQgdmVjdG9yLCBwcml2aWxlZ2Ugcmlu ZywgQ1M6RUlQIG9mIGhhbmRsZXIpLgpAQCAtMzI1LDkgKzMzMiw5MCBAQCBzdGF0aWMgdHJhcF9p bmZvX3QgdHJhcF90YWJsZVtdID0gewogdm9pZCB0cmFwX2luaXQodm9pZCkKIHsKICAgICBIWVBF UlZJU09SX3NldF90cmFwX3RhYmxlKHRyYXBfdGFibGUpOyAgICAKKworI2lmZGVmIF9faTM4Nl9f CisgICAgSFlQRVJWSVNPUl9zZXRfY2FsbGJhY2tzKAorICAgICAgICBfX0tFUk5FTF9DUywgKHVu c2lnbmVkIGxvbmcpaHlwZXJ2aXNvcl9jYWxsYmFjaywKKyAgICAgICAgX19LRVJORUxfQ1MsICh1 bnNpZ25lZCBsb25nKWZhaWxzYWZlX2NhbGxiYWNrKTsKKyNlbHNlCisgICAgSFlQRVJWSVNPUl9z ZXRfY2FsbGJhY2tzKAorICAgICAgICAodW5zaWduZWQgbG9uZyloeXBlcnZpc29yX2NhbGxiYWNr LAorICAgICAgICAodW5zaWduZWQgbG9uZylmYWlsc2FmZV9jYWxsYmFjaywgMCk7CisjZW5kaWYK IH0KIAogdm9pZCB0cmFwX2Zpbmkodm9pZCkKIHsKICAgICBIWVBFUlZJU09SX3NldF90cmFwX3Rh YmxlKE5VTEwpOwogfQorI2Vsc2UKKworI2RlZmluZSBJTlRSX1NUQUNLX1NJWkUgUEFHRV9TSVpF CitzdGF0aWMgdWludDhfdCBpbnRyX3N0YWNrW0lOVFJfU1RBQ0tfU0laRV0gX19hdHRyaWJ1dGVf XygoYWxpZ25lZCgxNikpKTsKKworaHdfdHNzIHRzcyBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDE2 KSkpID0KK3sKKyNpZiBkZWZpbmVkKF9faTM4Nl9fKQorICAgIC5lc3AwID0gKHVuc2lnbmVkIGxv bmcpJmludHJfc3RhY2tbSU5UUl9TVEFDS19TSVpFXSwKKyAgICAuc3MwICA9IF9fS0VSTl9EUywK KyNlbGlmIGRlZmluZWQoX194ODZfNjRfXykKKyAgICAucnNwMCA9ICh1bnNpZ25lZCBsb25nKSZp bnRyX3N0YWNrW0lOVFJfU1RBQ0tfU0laRV0sCisjZW5kaWYKKyAgICAuaW9wYiA9IFg4Nl9UU1Nf SU5WQUxJRF9JT19CSVRNQVAsCit9OworCitzdGF0aWMgdm9pZCBzZXR1cF9nYXRlKHVuc2lnbmVk IGludCBlbnRyeSwgdm9pZCAqYWRkciwgdW5zaWduZWQgaW50IGRwbCkKK3sKKyAgICBpZHRbZW50 cnldLm9mZnNldDAgPSAodW5zaWduZWQgbG9uZylhZGRyICYgMHhmZmZmOworICAgIGlkdFtlbnRy eV0uc2VsZWN0b3IgPSBfX0tFUk5fQ1M7CisgICAgaWR0W2VudHJ5XS5fcjAgPSAwOworICAgIGlk dFtlbnRyeV0udHlwZSA9IDE0OworICAgIGlkdFtlbnRyeV0ucyA9IDA7CisgICAgaWR0W2VudHJ5 XS5kcGwgPSBkcGw7CisgICAgaWR0W2VudHJ5XS5wID0gMTsKKyAgICBpZHRbZW50cnldLm9mZnNl dDEgPSAoKHVuc2lnbmVkIGxvbmcpYWRkciA+PiAxNikgJiAweGZmZmY7CisjaWYgZGVmaW5lZChf X3g4Nl82NF9fKQorICAgIGlkdFtlbnRyeV0uaXN0ID0gMDsKKyAgICBpZHRbZW50cnldLm9mZnNl dDIgPSAoKHVuc2lnbmVkIGxvbmcpYWRkciA+PiAzMikgJiAweGZmZmZmZmZmdTsKKyAgICBpZHRb ZW50cnldLl9yMSA9IDA7CisjZW5kaWYKK30KKwordm9pZCB0cmFwX2luaXQodm9pZCkKK3sKKyAg ICBzZXR1cF9nYXRlKFRSQVBfZGl2aWRlX2Vycm9yLCAmZGl2aWRlX2Vycm9yLCAwKTsKKyAgICBz ZXR1cF9nYXRlKFRSQVBfZGVidWcsICZkZWJ1ZywgMCk7CisgICAgc2V0dXBfZ2F0ZShUUkFQX2lu dDMsICZpbnQzLCAzKTsKKyAgICBzZXR1cF9nYXRlKFRSQVBfb3ZlcmZsb3csICZvdmVyZmxvdywg Myk7CisgICAgc2V0dXBfZ2F0ZShUUkFQX2JvdW5kcywgJmJvdW5kcywgMCk7CisgICAgc2V0dXBf Z2F0ZShUUkFQX2ludmFsaWRfb3AsICZpbnZhbGlkX29wLCAwKTsKKyAgICBzZXR1cF9nYXRlKFRS QVBfbm9fZGV2aWNlLCAmZGV2aWNlX25vdF9hdmFpbGFibGUsIDApOworICAgIHNldHVwX2dhdGUo VFJBUF9jb3Byb19zZWcsICZjb3Byb2Nlc3Nvcl9zZWdtZW50X292ZXJydW4sIDApOworICAgIHNl dHVwX2dhdGUoVFJBUF9pbnZhbGlkX3RzcywgJmludmFsaWRfVFNTLCAwKTsKKyAgICBzZXR1cF9n YXRlKFRSQVBfbm9fc2VnbWVudCwgJnNlZ21lbnRfbm90X3ByZXNlbnQsIDApOworICAgIHNldHVw X2dhdGUoVFJBUF9zdGFja19lcnJvciwgJnN0YWNrX3NlZ21lbnQsIDApOworICAgIHNldHVwX2dh dGUoVFJBUF9ncF9mYXVsdCwgJmdlbmVyYWxfcHJvdGVjdGlvbiwgMCk7CisgICAgc2V0dXBfZ2F0 ZShUUkFQX3BhZ2VfZmF1bHQsICZwYWdlX2ZhdWx0LCAwKTsKKyAgICBzZXR1cF9nYXRlKFRSQVBf c3B1cmlvdXNfaW50LCAmc3B1cmlvdXNfaW50ZXJydXB0X2J1ZywgMCk7CisgICAgc2V0dXBfZ2F0 ZShUUkFQX2NvcHJvX2Vycm9yLCAmY29wcm9jZXNzb3JfZXJyb3IsIDApOworICAgIHNldHVwX2dh dGUoVFJBUF9hbGlnbm1lbnRfY2hlY2ssICZhbGlnbm1lbnRfY2hlY2ssIDApOworICAgIHNldHVw X2dhdGUoVFJBUF9zaW1kX2Vycm9yLCAmc2ltZF9jb3Byb2Nlc3Nvcl9lcnJvciwgMCk7CisgICAg c2V0dXBfZ2F0ZShUUkFQX3hlbl9jYWxsYmFjaywgaHlwZXJ2aXNvcl9jYWxsYmFjaywgMCk7CisK KyAgICBhc20gdm9sYXRpbGUgKCJsaWR0IGlkdF9wdHIiKTsKKworICAgIGdkdFtHRFRFX1RTU10g PSAodHlwZW9mKCpnZHQpKUlOSVRfR0RURSgodW5zaWduZWQgbG9uZykmdHNzLCAweDY3LCAweDg5 KTsKKyAgICBhc20gdm9sYXRpbGUgKCJsdHIgJXcwIiA6OiAicm0iIChHRFRFX1RTUyAqIDgpKTsK KworICAgIGlmICggaHZtX3NldF9wYXJhbWV0ZXIoSFZNX1BBUkFNX0NBTExCQUNLX0lSUSwKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICgyVUxMIDw8IDU2KSB8IFRSQVBfeGVuX2NhbGxiYWNr KSApCisgICAgeworICAgICAgICB4cHJpbnRrKCJSZXF1ZXN0IGZvciBYZW4gSFZNIGNhbGxiYWNr IHZlY3RvciBmYWlsZWRcbiIpOworICAgICAgICBkb19leGl0KCk7CisgICAgfQorfQorCit2b2lk IHRyYXBfZmluaSh2b2lkKQoreworfQorI2VuZGlmCmRpZmYgLS1naXQgYS9hcmNoL3g4Ni94ODZf NjQuUyBiL2FyY2gveDg2L3g4Nl82NC5TCmluZGV4IDM3M2Y0MDAuLmU3MjVjNjMgMTAwNjQ0Ci0t LSBhL2FyY2gveDg2L3g4Nl82NC5TCisrKyBiL2FyY2gveDg2L3g4Nl82NC5TCkBAIC0xMzAsMTgg KzEzMCwyMiBAQCBLRVJORUxfQ1NfTUFTSyA9IDB4ZmMKIC5lbmRtCiAKIC5tYWNybyBIWVBFUlZJ U09SX0lSRVQgZmxhZworI2lmZGVmIENPTkZJR19QQVJBVklSVAogCXRlc3RsICROTUlfTUFTSywy KjgoJXJzcCkKIAlqbnogICAyZgorI2VuZGlmCiAKIAkvKiBEaXJlY3QgaXJldCB0byBrZXJuZWwg c3BhY2UuIENvcnJlY3QgQ1MgYW5kIFNTLiAqLwogCW9yYiAgICQzLDEqOCglcnNwKQogCW9yYiAg ICQzLDQqOCglcnNwKQogCWlyZXRxCiAKKyNpZmRlZiBDT05GSUdfUEFSQVZJUlQKIDI6CS8qIFNs b3cgaXJldCB2aWEgaHlwZXJ2aXNvci4gKi8KIAlhbmRsICAkfk5NSV9NQVNLLCAxNiglcnNwKQog CXB1c2hxICRcZmxhZwogCWptcCAgaHlwZXJjYWxsX3BhZ2UgKyAoX19IWVBFUlZJU09SX2lyZXQg KiAzMikKKyNlbmRpZgogLmVuZG0KIAogCmRpZmYgLS1naXQgYS9pbmNsdWRlL3g4Ni9vcy5oIGIv aW5jbHVkZS94ODYvb3MuaAppbmRleCA2MTBkOGUwLi42ODI2YjlmIDEwMDY0NAotLS0gYS9pbmNs dWRlL3g4Ni9vcy5oCisrKyBiL2luY2x1ZGUveDg2L29zLmgKQEAgLTU2LDYgKzU2LDcgQEAKICNk ZWZpbmUgVFJBUF9tYWNoaW5lX2NoZWNrICAgIDE4CiAjZGVmaW5lIFRSQVBfc2ltZF9lcnJvciAg ICAgICAxOQogI2RlZmluZSBUUkFQX2RlZmVycmVkX25taSAgICAgMzEKKyNkZWZpbmUgVFJBUF94 ZW5fY2FsbGJhY2sgICAgIDMyCiAKIC8qIEV2ZXJ5dGhpbmcgYmVsb3cgdGhpcyBwb2ludCBpcyBu b3QgaW5jbHVkZWQgYnkgYXNzZW1ibGVyICguUykgZmlsZXMuICovCiAjaWZuZGVmIF9fQVNTRU1C TFlfXwotLSAKMi42LjYKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0 dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK