From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yi Sun Subject: [PATCH v3 04/15] x86: refactor psr: Encapsulate 'cbm_len' and 'cbm_max' Date: Tue, 25 Oct 2016 11:40:52 +0800 Message-ID: <1477366863-5246-5-git-send-email-yi.y.sun@linux.intel.com> References: <1477366863-5246-1-git-send-email-yi.y.sun@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta6.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1byrYl-0004HN-BD for xen-devel@lists.xenproject.org; Tue, 25 Oct 2016 02:33:51 +0000 In-Reply-To: <1477366863-5246-1-git-send-email-yi.y.sun@linux.intel.com> 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: wei.liu2@citrix.com, he.chen@linux.intel.com, andrew.cooper3@citrix.com, ian.jackson@eu.citrix.com, Yi Sun , jbeulich@suse.com, chao.p.peng@linux.intel.com List-Id: xen-devel@lists.xenproject.org J2NibV9sZW4nIGFuZCAnY2JtX21heCcgYXJlIENBVC9DRFAgc3BlY2lmaWMgZmVhdHVyZSBIVyBp bmZvLgpTbyBlbmNhcHN1bGF0ZSB0aGVtIGludG8gJ3N0cnVjdCBwc3JfY2F0X2h3X2luZm8nLiBJ ZiBuZXcKZmVhdHVyZSBpcyBzdXBwb3J0ZWQsIHdlIGNhbiBkZWZpbmUgb3RoZXIgc3RydWN0dXJl IHRvIHNhdmUKaXRzIEhXIGluZm8uCgpTaWduZWQtb2ZmLWJ5OiBZaSBTdW4gPHlpLnkuc3VuQGxp bnV4LmludGVsLmNvbT4KLS0tCiB4ZW4vYXJjaC94ODYvcHNyLmMgfCAzMyArKysrKysrKysrKysr KysrKysrLS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAxOSBpbnNlcnRpb25zKCspLCAx NCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvcHNyLmMgYi94ZW4vYXJj aC94ODYvcHNyLmMKaW5kZXggYTAzNDJjZS4uOTdmMWMzMyAxMDA2NDQKLS0tIGEveGVuL2FyY2gv eDg2L3Bzci5jCisrKyBiL3hlbi9hcmNoL3g4Ni9wc3IuYwpAQCAtMjYsOSArMjYsMTQgQEAKIC8q IFBlciBzcGVjLCB0aGUgbWF4aW11bSBDT1MgcmVnaXN0ZXIgbnVtYmVyIGlzIDEyOC4gKi8KICNk ZWZpbmUgTUFYX0NPU19SRUdfTlVNICAxMjgKIAotc3RydWN0IHBzcl9jYXRfc29ja2V0X2luZm8g eworLyogQ0FUL0NEUCBIVyBpbmZvIGRhdGEgc3RydWN0dXJlLiAqLworc3RydWN0IHBzcl9jYXRf aHdfaW5mbyB7CiAgICAgdW5zaWduZWQgaW50IGNibV9sZW47CiAgICAgdW5zaWduZWQgaW50IGNv c19tYXg7Cit9OworCitzdHJ1Y3QgcHNyX2NhdF9zb2NrZXRfaW5mbyB7CisgICAgc3RydWN0IHBz cl9jYXRfaHdfaW5mbyBsM19pbmZvOwogICAgIC8qCiAgICAgICogU3RvcmUgdGhlIHZhbHVlcyBv ZiBDT1MgcmVnaXN0ZXJzOgogICAgICAqIENBVCB1c2VzIDEgZW50cnkgZm9yIG9uZSBDT1MgSUQ7 CkBAIC0yMzUsNyArMjQwLDcgQEAgc3RhdGljIGlubGluZSB2b2lkIHBzcl9hc3NvY19pbml0KHZv aWQpCiAKICAgICAgICAgaWYgKCB0ZXN0X2JpdChzb2NrZXQsIGNhdF9zb2NrZXRfZW5hYmxlKSAp CiAgICAgICAgICAgICBwc3JhLT5jb3NfbWFzayA9ICgoMXVsbCA8PCBnZXRfY291bnRfb3JkZXIo Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhdF9zb2NrZXRfaW5mb1tzb2NrZXRdLmNv c19tYXgpKSAtIDEpIDw8IDMyOworICAgICAgICAgICAgICAgICAgICAgICAgICBjYXRfc29ja2V0 X2luZm9bc29ja2V0XS5sM19pbmZvLmNvc19tYXgpKSAtIDEpIDw8IDMyOwogICAgIH0KIAogICAg IGlmICggcHNyX2NtdF9lbmFibGVkKCkgfHwgcHNyYS0+Y29zX21hc2sgKQpAQCAtMjk5LDggKzMw NCw4IEBAIGludCBwc3JfZ2V0X2NhdF9sM19pbmZvKHVuc2lnbmVkIGludCBzb2NrZXQsIHVpbnQz Ml90ICpjYm1fbGVuLAogICAgIGlmICggSVNfRVJSKGluZm8pICkKICAgICAgICAgcmV0dXJuIFBU Ul9FUlIoaW5mbyk7CiAKLSAgICAqY2JtX2xlbiA9IGluZm8tPmNibV9sZW47Ci0gICAgKmNvc19t YXggPSBpbmZvLT5jb3NfbWF4OworICAgICpjYm1fbGVuID0gaW5mby0+bDNfaW5mby5jYm1fbGVu OworICAgICpjb3NfbWF4ID0gaW5mby0+bDNfaW5mby5jb3NfbWF4OwogCiAgICAgKmZsYWdzID0g MDsKICAgICBpZiAoIGNkcF9pc19lbmFibGVkKHNvY2tldCkgKQpAQCAtNDY1LDE0ICs0NzAsMTQg QEAgaW50IHBzcl9zZXRfbDNfY2JtKHN0cnVjdCBkb21haW4gKmQsIHVuc2lnbmVkIGludCBzb2Nr ZXQsCiAgICAgaWYgKCBJU19FUlIoaW5mbykgKQogICAgICAgICByZXR1cm4gUFRSX0VSUihpbmZv KTsKIAotICAgIGlmICggIXBzcl9jaGVja19jYm0oaW5mby0+Y2JtX2xlbiwgY2JtKSApCisgICAg aWYgKCAhcHNyX2NoZWNrX2NibShpbmZvLT5sM19pbmZvLmNibV9sZW4sIGNibSkgKQogICAgICAg ICByZXR1cm4gLUVJTlZBTDsKIAogICAgIGlmICggIWNkcF9lbmFibGVkICYmICh0eXBlID09IFBT Ul9DQk1fVFlQRV9MM19DT0RFIHx8CiAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGUgPT0g UFNSX0NCTV9UWVBFX0wzX0RBVEEpICkKICAgICAgICAgcmV0dXJuIC1FTlhJTzsKIAotICAgIGNv c19tYXggPSBpbmZvLT5jb3NfbWF4OworICAgIGNvc19tYXggPSBpbmZvLT5sM19pbmZvLmNvc19t YXg7CiAgICAgb2xkX2NvcyA9IGQtPmFyY2gucHNyX2Nvc19pZHNbc29ja2V0XTsKICAgICByZWYg PSBpbmZvLT5jb3NfcmVmOwogCkBAIC02MTcsMTEgKzYyMiwxMSBAQCBzdGF0aWMgdm9pZCBjYXRf Y3B1X2luaXQodm9pZCkKICAgICB7CiAgICAgICAgIGNwdWlkX2NvdW50KFBTUl9DUFVJRF9MRVZF TF9DQVQsIDEsICZlYXgsICZlYngsICZlY3gsICZlZHgpOwogICAgICAgICBpbmZvID0gY2F0X3Nv Y2tldF9pbmZvICsgc29ja2V0OwotICAgICAgICBpbmZvLT5jYm1fbGVuID0gKGVheCAmIDB4MWYp ICsgMTsKLSAgICAgICAgaW5mby0+Y29zX21heCA9IG1pbihvcHRfY29zX21heCwgZWR4ICYgMHhm ZmZmKTsKKyAgICAgICAgaW5mby0+bDNfaW5mby5jYm1fbGVuID0gKGVheCAmIDB4MWYpICsgMTsK KyAgICAgICAgaW5mby0+bDNfaW5mby5jb3NfbWF4ID0gbWluKG9wdF9jb3NfbWF4LCBlZHggJiAw eGZmZmYpOwogCiAgICAgICAgIC8qIGNvcz0wIGlzIHJlc2VydmVkIGFzIGRlZmF1bHQgY2JtKGFs bCBvbmVzKS4gKi8KLSAgICAgICAgaW5mby0+Y29zX3JlZ192YWxbMF0gPSAoMXVsbCA8PCBpbmZv LT5jYm1fbGVuKSAtIDE7CisgICAgICAgIGluZm8tPmNvc19yZWdfdmFsWzBdID0gKDF1bGwgPDwg aW5mby0+bDNfaW5mby5jYm1fbGVuKSAtIDE7CiAKICAgICAgICAgc3Bpbl9sb2NrX2luaXQoJmlu Zm8tPnJlZl9sb2NrKTsKIApAQCAtNjMxLDIzICs2MzYsMjMgQEAgc3RhdGljIHZvaWQgY2F0X2Nw dV9pbml0KHZvaWQpCiAgICAgICAgICAgICAgY2RwX3NvY2tldF9lbmFibGUgJiYgIXRlc3RfYml0 KHNvY2tldCwgY2RwX3NvY2tldF9lbmFibGUpICkKICAgICAgICAgewogICAgICAgICAgICAgLyog Q09ERSAqLwotICAgICAgICAgICAgZ2V0X2NkcF9jb2RlKGluZm8sIDApID0gKDF1bGwgPDwgaW5m by0+Y2JtX2xlbikgLSAxOworICAgICAgICAgICAgZ2V0X2NkcF9jb2RlKGluZm8sIDApID0gKDF1 bGwgPDwgaW5mby0+bDNfaW5mby5jYm1fbGVuKSAtIDE7CiAgICAgICAgICAgICAvKiBEQVRBICov Ci0gICAgICAgICAgICBnZXRfY2RwX2RhdGEoaW5mbywgMCkgPSAoMXVsbCA8PCBpbmZvLT5jYm1f bGVuKSAtIDE7CisgICAgICAgICAgICBnZXRfY2RwX2RhdGEoaW5mbywgMCkgPSAoMXVsbCA8PCBp bmZvLT5sM19pbmZvLmNibV9sZW4pIC0gMTsKIAogICAgICAgICAgICAgLyogV2Ugb25seSB3cml0 ZSBtYXNrMSBzaW5jZSBtYXNrMCBpcyBhbHdheXMgYWxsIG9uZXMgYnkgZGVmYXVsdC4gKi8KLSAg ICAgICAgICAgIHdybXNybChNU1JfSUEzMl9QU1JfTDNfTUFTSygxKSwgKDF1bGwgPDwgaW5mby0+ Y2JtX2xlbikgLSAxKTsKKyAgICAgICAgICAgIHdybXNybChNU1JfSUEzMl9QU1JfTDNfTUFTSygx KSwgKDF1bGwgPDwgaW5mby0+bDNfaW5mby5jYm1fbGVuKSAtIDEpOwogCiAgICAgICAgICAgICBy ZG1zcmwoTVNSX0lBMzJfUFNSX0wzX1FPU19DRkcsIHZhbCk7CiAgICAgICAgICAgICB3cm1zcmwo TVNSX0lBMzJfUFNSX0wzX1FPU19DRkcsIHZhbCB8ICgxIDw8IFBTUl9MM19RT1NfQ0RQX0VOQUJM RV9CSVQpKTsKIAogICAgICAgICAgICAgLyogQ3V0IGhhbGYgb2YgY29zX21heCB3aGVuIENEUCBp cyBlbmFibGVkLiAqLwotICAgICAgICAgICAgaW5mby0+Y29zX21heCA+Pj0gMTsKKyAgICAgICAg ICAgIGluZm8tPmwzX2luZm8uY29zX21heCA+Pj0gMTsKIAogICAgICAgICAgICAgc2V0X2JpdChz b2NrZXQsIGNkcF9zb2NrZXRfZW5hYmxlKTsKICAgICAgICAgfQogICAgICAgICBwcmludGsoWEVO TE9HX0lORk8gIkNBVDogZW5hYmxlZCBvbiBzb2NrZXQgJXUsIGNvc19tYXg6JXUsIGNibV9sZW46 JXUsIENEUDolc1xuIiwKLSAgICAgICAgICAgICAgIHNvY2tldCwgaW5mby0+Y29zX21heCwgaW5m by0+Y2JtX2xlbiwKKyAgICAgICAgICAgICAgIHNvY2tldCwgaW5mby0+bDNfaW5mby5jb3NfbWF4 LCBpbmZvLT5sM19pbmZvLmNibV9sZW4sCiAgICAgICAgICAgICAgICBjZHBfaXNfZW5hYmxlZChz b2NrZXQpID8gIm9uIiA6ICJvZmYiKTsKICAgICB9CiB9Ci0tIAoyLjcuNAoKCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxp c3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZl bAo=