From mboxrd@z Thu Jan 1 00:00:00 1970 From: Wei Liu Subject: [PATCH v4 23/31] x86/mm: export more get/put page functions Date: Thu, 17 Aug 2017 15:44:48 +0100 Message-ID: <20170817144456.18989-24-wei.liu2@citrix.com> References: <20170817144456.18989-1-wei.liu2@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 ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1diM53-0002hc-PD for xen-devel@lists.xenproject.org; Thu, 17 Aug 2017 14:47:29 +0000 In-Reply-To: <20170817144456.18989-1-wei.liu2@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Xen-devel Cc: George Dunlap , Andrew Cooper , Wei Liu , Jan Beulich List-Id: xen-devel@lists.xenproject.org RXhwb3J0IHNvbWUgb2YgdGhlIGdldC9wdXQgZnVuY3Rpb25zIHNvIHRoYXQgd2UgY2FuIG1vdmUg UFYgbW0gY29kZQp0cnVuayBieSB0cnVuay4KCldoZW4gbW92aW5nIGNvZGUgaXMgZG9uZSBzb21l IG9mIHRoZSBmdW5jdGlvbnMgbWlnaHQgYmUgbWFkZSBzdGF0aWMKYWdhaW4uCgpBbHNvIGZpeCBj b2Rpbmcgc3R5bGUgaXNzdWVzIGFuZCB1c2UgYm9vbCB3aGVuIGFwcHJvcHJpYXRlLgoKU2lnbmVk LW9mZi1ieTogV2VpIExpdSA8d2VpLmxpdTJAY2l0cml4LmNvbT4KLS0tCiB4ZW4vYXJjaC94ODYv bW0uYyAgICAgICAgfCA0MCArKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0t CiB4ZW4vaW5jbHVkZS9hc20teDg2L21tLmggfCAxNyArKysrKysrKysrKysrKystLQogMiBmaWxl cyBjaGFuZ2VkLCAzNSBpbnNlcnRpb25zKCspLCAyMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS94ZW4vYXJjaC94ODYvbW0uYyBiL3hlbi9hcmNoL3g4Ni9tbS5jCmluZGV4IDFmZGFlNmUxZTYu LmZiNjQ4NTUwMGYgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9tbS5jCisrKyBiL3hlbi9hcmNo L3g4Ni9tbS5jCkBAIC01NTUsOSArNTU1LDggQEAgYm9vbCBnZXRfcGFnZV9mcm9tX21mbihtZm5f dCBtZm4sIHN0cnVjdCBkb21haW4gKmQpCiB9CiAKIAotc3RhdGljIGludCBnZXRfcGFnZV9hbmRf dHlwZV9mcm9tX21mbigKLSAgICBtZm5fdCBtZm4sIHVuc2lnbmVkIGxvbmcgdHlwZSwgc3RydWN0 IGRvbWFpbiAqZCwKLSAgICBpbnQgcGFydGlhbCwgaW50IHByZWVtcHRpYmxlKQoraW50IGdldF9w YWdlX2FuZF90eXBlX2Zyb21fbWZuKG1mbl90IG1mbiwgdW5zaWduZWQgbG9uZyB0eXBlLCBzdHJ1 Y3QgZG9tYWluICpkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBwYXJ0aWFs LCBib29sIHByZWVtcHRpYmxlKQogewogICAgIHN0cnVjdCBwYWdlX2luZm8gKnBhZ2UgPSBtZm5f dG9fcGFnZShtZm5feChtZm4pKTsKICAgICBpbnQgcmM7CkBAIC05NDAsNyArOTM5LDcgQEAgZ2V0 X3BhZ2VfZnJvbV9sMWUoCiAgKiAgPDAgPT4gZXJyb3IgY29kZQogICovCiBkZWZpbmVfZ2V0X2xp bmVhcl9wYWdldGFibGUobDIpOwotc3RhdGljIGludAoraW50CiBnZXRfcGFnZV9mcm9tX2wyZSgK ICAgICBsMl9wZ2VudHJ5X3QgbDJlLCB1bnNpZ25lZCBsb25nIHBmbiwgc3RydWN0IGRvbWFpbiAq ZCkKIHsKQEAgLTk1OSw3ICs5NTgsOCBAQCBnZXRfcGFnZV9mcm9tX2wyZSgKIAogICAgIGlmICgg IShsMmVfZ2V0X2ZsYWdzKGwyZSkgJiBfUEFHRV9QU0UpICkKICAgICB7Ci0gICAgICAgIHJjID0g Z2V0X3BhZ2VfYW5kX3R5cGVfZnJvbV9tZm4oX21mbihtZm4pLCBQR1RfbDFfcGFnZV90YWJsZSwg ZCwgMCwgMCk7CisgICAgICAgIHJjID0gZ2V0X3BhZ2VfYW5kX3R5cGVfZnJvbV9tZm4oX21mbiht Zm4pLCBQR1RfbDFfcGFnZV90YWJsZSwgZCwgMCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBmYWxzZSk7CiAgICAgICAgIGlmICggdW5saWtlbHkocmMgPT0gLUVJTlZB TCkgJiYgZ2V0X2wyX2xpbmVhcl9wYWdldGFibGUobDJlLCBwZm4sIGQpICkKICAgICAgICAgICAg IHJjID0gMDsKICAgICAgICAgcmV0dXJuIHJjOwpAQCAtOTc2LDcgKzk3Niw3IEBAIGdldF9wYWdl X2Zyb21fbDJlKAogICogIDwwID0+IGVycm9yIGNvZGUKICAqLwogZGVmaW5lX2dldF9saW5lYXJf cGFnZXRhYmxlKGwzKTsKLXN0YXRpYyBpbnQKK2ludAogZ2V0X3BhZ2VfZnJvbV9sM2UoCiAgICAg bDNfcGdlbnRyeV90IGwzZSwgdW5zaWduZWQgbG9uZyBwZm4sIHN0cnVjdCBkb21haW4gKmQsIGlu dCBwYXJ0aWFsKQogewpAQCAtOTkyLDggKzk5Miw4IEBAIGdldF9wYWdlX2Zyb21fbDNlKAogICAg ICAgICByZXR1cm4gLUVJTlZBTDsKICAgICB9CiAKLSAgICByYyA9IGdldF9wYWdlX2FuZF90eXBl X2Zyb21fbWZuKAotICAgICAgICBfbWZuKGwzZV9nZXRfcGZuKGwzZSkpLCBQR1RfbDJfcGFnZV90 YWJsZSwgZCwgcGFydGlhbCwgMSk7CisgICAgcmMgPSBnZXRfcGFnZV9hbmRfdHlwZV9mcm9tX21m bihfbWZuKGwzZV9nZXRfcGZuKGwzZSkpLCBQR1RfbDJfcGFnZV90YWJsZSwKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGQsIHBhcnRpYWwsIHRydWUpOwogICAgIGlmICggdW5s aWtlbHkocmMgPT0gLUVJTlZBTCkgJiYKICAgICAgICAgICFpc19wdl8zMmJpdF9kb21haW4oZCkg JiYKICAgICAgICAgIGdldF9sM19saW5lYXJfcGFnZXRhYmxlKGwzZSwgcGZuLCBkKSApCkBAIC0x MDA5LDcgKzEwMDksNyBAQCBnZXRfcGFnZV9mcm9tX2wzZSgKICAqICA8MCA9PiBlcnJvciBjb2Rl CiAgKi8KIGRlZmluZV9nZXRfbGluZWFyX3BhZ2V0YWJsZShsNCk7Ci1zdGF0aWMgaW50CitpbnQK IGdldF9wYWdlX2Zyb21fbDRlKAogICAgIGw0X3BnZW50cnlfdCBsNGUsIHVuc2lnbmVkIGxvbmcg cGZuLCBzdHJ1Y3QgZG9tYWluICpkLCBpbnQgcGFydGlhbCkKIHsKQEAgLTEwMjUsOCArMTAyNSw4 IEBAIGdldF9wYWdlX2Zyb21fbDRlKAogICAgICAgICByZXR1cm4gLUVJTlZBTDsKICAgICB9CiAK LSAgICByYyA9IGdldF9wYWdlX2FuZF90eXBlX2Zyb21fbWZuKAotICAgICAgICBfbWZuKGw0ZV9n ZXRfcGZuKGw0ZSkpLCBQR1RfbDNfcGFnZV90YWJsZSwgZCwgcGFydGlhbCwgMSk7CisgICAgcmMg PSBnZXRfcGFnZV9hbmRfdHlwZV9mcm9tX21mbihfbWZuKGw0ZV9nZXRfcGZuKGw0ZSkpLCBQR1Rf bDNfcGFnZV90YWJsZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQsIHBh cnRpYWwsIHRydWUpOwogICAgIGlmICggdW5saWtlbHkocmMgPT0gLUVJTlZBTCkgJiYgZ2V0X2w0 X2xpbmVhcl9wYWdldGFibGUobDRlLCBwZm4sIGQpICkKICAgICAgICAgcmMgPSAwOwogCkBAIC0x MDk3LDcgKzEwOTcsNyBAQCB2b2lkIHB1dF9wYWdlX2Zyb21fbDFlKGwxX3BnZW50cnlfdCBsMWUs IHN0cnVjdCBkb21haW4gKmwxZV9vd25lcikKICAqIE5CLiBWaXJ0dWFsIGFkZHJlc3MgJ2wyZScg bWFwcyB0byBhIG1hY2hpbmUgYWRkcmVzcyB3aXRoaW4gZnJhbWUgJ3BmbicuCiAgKiBOb3RlIGFs c28gdGhhdCB0aGlzIGF1dG9tYXRpY2FsbHkgZGVhbHMgY29ycmVjdGx5IHdpdGggbGluZWFyIHAu dC4ncy4KICAqLwotc3RhdGljIGludCBwdXRfcGFnZV9mcm9tX2wyZShsMl9wZ2VudHJ5X3QgbDJl LCB1bnNpZ25lZCBsb25nIHBmbikKK2ludCBwdXRfcGFnZV9mcm9tX2wyZShsMl9wZ2VudHJ5X3Qg bDJlLCB1bnNpZ25lZCBsb25nIHBmbikKIHsKICAgICBpZiAoICEobDJlX2dldF9mbGFncyhsMmUp ICYgX1BBR0VfUFJFU0VOVCkgfHwgKGwyZV9nZXRfcGZuKGwyZSkgPT0gcGZuKSApCiAgICAgICAg IHJldHVybiAxOwpAQCAtMTExNyw4ICsxMTE3LDggQEAgc3RhdGljIGludCBwdXRfcGFnZV9mcm9t X2wyZShsMl9wZ2VudHJ5X3QgbDJlLCB1bnNpZ25lZCBsb25nIHBmbikKIAogc3RhdGljIGludCBf X3B1dF9wYWdlX3R5cGUoc3RydWN0IHBhZ2VfaW5mbyAqLCBpbnQgcHJlZW1wdGlibGUpOwogCi1z dGF0aWMgaW50IHB1dF9wYWdlX2Zyb21fbDNlKGwzX3BnZW50cnlfdCBsM2UsIHVuc2lnbmVkIGxv bmcgcGZuLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcGFydGlhbCwgYm9vbCBk ZWZlcikKK2ludCBwdXRfcGFnZV9mcm9tX2wzZShsM19wZ2VudHJ5X3QgbDNlLCB1bnNpZ25lZCBs b25nIHBmbiwgaW50IHBhcnRpYWwsCisgICAgICAgICAgICAgICAgICAgICAgYm9vbCBkZWZlcikK IHsKICAgICBzdHJ1Y3QgcGFnZV9pbmZvICpwZzsKIApAQCAtMTE1NSw4ICsxMTU1LDggQEAgc3Rh dGljIGludCBwdXRfcGFnZV9mcm9tX2wzZShsM19wZ2VudHJ5X3QgbDNlLCB1bnNpZ25lZCBsb25n IHBmbiwKICAgICByZXR1cm4gcHV0X3BhZ2VfYW5kX3R5cGVfcHJlZW1wdGlibGUocGcpOwogfQog Ci1zdGF0aWMgaW50IHB1dF9wYWdlX2Zyb21fbDRlKGw0X3BnZW50cnlfdCBsNGUsIHVuc2lnbmVk IGxvbmcgcGZuLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcGFydGlhbCwgYm9v bCBkZWZlcikKK2ludCBwdXRfcGFnZV9mcm9tX2w0ZShsNF9wZ2VudHJ5X3QgbDRlLCB1bnNpZ25l ZCBsb25nIHBmbiwgaW50IHBhcnRpYWwsCisgICAgICAgICAgICAgICAgICAgICAgYm9vbCBkZWZl cikKIHsKICAgICBpZiAoIChsNGVfZ2V0X2ZsYWdzKGw0ZSkgJiBfUEFHRV9QUkVTRU5UKSAmJgog ICAgICAgICAgKGw0ZV9nZXRfcGZuKGw0ZSkgIT0gcGZuKSApCkBAIC0xMzQwLDcgKzEzNDAsNyBA QCBzdGF0aWMgaW50IGFsbG9jX2wzX3RhYmxlKHN0cnVjdCBwYWdlX2luZm8gKnBhZ2UpCiAgICAg ICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgcmMgPSBnZXRfcGFnZV9hbmRfdHlwZV9mcm9t X21mbigKICAgICAgICAgICAgICAgICAgICAgX21mbihsM2VfZ2V0X3BmbihwbDNlW2ldKSksCi0g ICAgICAgICAgICAgICAgICAgIFBHVF9sMl9wYWdlX3RhYmxlIHwgUEdUX3BhZV94ZW5fbDIsIGQs IHBhcnRpYWwsIDEpOworICAgICAgICAgICAgICAgICAgICBQR1RfbDJfcGFnZV90YWJsZSB8IFBH VF9wYWVfeGVuX2wyLCBkLCBwYXJ0aWFsLCB0cnVlKTsKICAgICAgICAgfQogICAgICAgICBlbHNl IGlmICggIWlzX2d1ZXN0X2wzX3Nsb3QoaSkgfHwKICAgICAgICAgICAgICAgICAgIChyYyA9IGdl dF9wYWdlX2Zyb21fbDNlKHBsM2VbaV0sIHBmbiwgZCwgcGFydGlhbCkpID4gMCApCkBAIC0xOTky LDcgKzE5OTIsNyBAQCBpbnQgZ2V0X3BhZ2Uoc3RydWN0IHBhZ2VfaW5mbyAqcGFnZSwgc3RydWN0 IGRvbWFpbiAqZG9tYWluKQogICogICBhY3F1aXJlZCByZWZlcmVuY2UgYWdhaW4uCiAgKiBEdWUg dG8gZ2V0X3BhZ2UoKSByZXNlcnZpbmcgb25lIHJlZmVyZW5jZSwgdGhpcyBjYWxsIGNhbm5vdCBm YWlsLgogICovCi1zdGF0aWMgdm9pZCBnZXRfcGFnZV9saWdodChzdHJ1Y3QgcGFnZV9pbmZvICpw YWdlKQordm9pZCBnZXRfcGFnZV9saWdodChzdHJ1Y3QgcGFnZV9pbmZvICpwYWdlKQogewogICAg IHVuc2lnbmVkIGxvbmcgeCwgbngsIHkgPSBwYWdlLT5jb3VudF9pbmZvOwogCkBAIC0yNTI1LDcg KzI1MjUsNyBAQCBpbnQgcHZfbmV3X2d1ZXN0X2NyMyh1bnNpZ25lZCBsb25nIG1mbikKICAgICBy YyA9IHBhZ2luZ19tb2RlX3JlZmNvdW50cyhjdXJyZCkKICAgICAgICAgID8gKGdldF9wYWdlX2Zy b21fbWZuKF9tZm4obWZuKSwgY3VycmQpID8gMCA6IC1FSU5WQUwpCiAgICAgICAgICA6IGdldF9w YWdlX2FuZF90eXBlX2Zyb21fbWZuKF9tZm4obWZuKSwgUEdUX3Jvb3RfcGFnZV90YWJsZSwKLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VycmQsIDAsIDEpOworICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJyZCwgMCwgdHJ1ZSk7CiAgICAgc3dp dGNoICggcmMgKQogICAgIHsKICAgICBjYXNlIDA6CkBAIC0yOTAxLDcgKzI5MDEsNyBAQCBsb25n IGRvX21tdWV4dF9vcCgKICAgICAgICAgICAgIGlmICggb3AuYXJnMS5tZm4gIT0gMCApCiAgICAg ICAgICAgICB7CiAgICAgICAgICAgICAgICAgcmMgPSBnZXRfcGFnZV9hbmRfdHlwZV9mcm9tX21m bigKLSAgICAgICAgICAgICAgICAgICAgX21mbihvcC5hcmcxLm1mbiksIFBHVF9yb290X3BhZ2Vf dGFibGUsIGN1cnJkLCAwLCAxKTsKKyAgICAgICAgICAgICAgICAgICAgX21mbihvcC5hcmcxLm1m biksIFBHVF9yb290X3BhZ2VfdGFibGUsIGN1cnJkLCAwLCB0cnVlKTsKIAogICAgICAgICAgICAg ICAgIGlmICggdW5saWtlbHkocmMpICkKICAgICAgICAgICAgICAgICB7CmRpZmYgLS1naXQgYS94 ZW4vaW5jbHVkZS9hc20teDg2L21tLmggYi94ZW4vaW5jbHVkZS9hc20teDg2L21tLmgKaW5kZXgg YTU2NjJmMzI3Yi4uMDdkNGMwNmZjMyAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9t bS5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS14ODYvbW0uaApAQCAtMzM5LDEwICszMzksMjMgQEAg aW50ICBnZXRfcGFnZV90eXBlKHN0cnVjdCBwYWdlX2luZm8gKnBhZ2UsIHVuc2lnbmVkIGxvbmcg dHlwZSk7CiBpbnQgIHB1dF9wYWdlX3R5cGVfcHJlZW1wdGlibGUoc3RydWN0IHBhZ2VfaW5mbyAq cGFnZSk7CiBpbnQgIGdldF9wYWdlX3R5cGVfcHJlZW1wdGlibGUoc3RydWN0IHBhZ2VfaW5mbyAq cGFnZSwgdW5zaWduZWQgbG9uZyB0eXBlKTsKIGludCAgcHV0X29sZF9ndWVzdF90YWJsZShzdHJ1 Y3QgdmNwdSAqKTsKLWludCAgZ2V0X3BhZ2VfZnJvbV9sMWUoCi0gICAgbDFfcGdlbnRyeV90IGwx ZSwgc3RydWN0IGRvbWFpbiAqbDFlX293bmVyLCBzdHJ1Y3QgZG9tYWluICpwZ19vd25lcik7Citp bnQgIGdldF9wYWdlX2Zyb21fbDFlKGwxX3BnZW50cnlfdCBsMWUsIHN0cnVjdCBkb21haW4gKmwx ZV9vd25lciwKKyAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IGRvbWFpbiAqcGdfb3duZXIp Owogdm9pZCBwdXRfcGFnZV9mcm9tX2wxZShsMV9wZ2VudHJ5X3QgbDFlLCBzdHJ1Y3QgZG9tYWlu ICpsMWVfb3duZXIpOworaW50IGdldF9wYWdlX2Zyb21fbDJlKGwyX3BnZW50cnlfdCBsMmUsIHVu c2lnbmVkIGxvbmcgcGZuLCBzdHJ1Y3QgZG9tYWluICpkKTsKK2ludCBwdXRfcGFnZV9mcm9tX2wy ZShsMl9wZ2VudHJ5X3QgbDJlLCB1bnNpZ25lZCBsb25nIHBmbik7CitpbnQgZ2V0X3BhZ2VfZnJv bV9sM2UobDNfcGdlbnRyeV90IGwzZSwgdW5zaWduZWQgbG9uZyBwZm4sIHN0cnVjdCBkb21haW4g KmQsCisgICAgICAgICAgICAgICAgICAgICAgaW50IHBhcnRpYWwpOworaW50IHB1dF9wYWdlX2Zy b21fbDNlKGwzX3BnZW50cnlfdCBsM2UsIHVuc2lnbmVkIGxvbmcgcGZuLCBpbnQgcGFydGlhbCwK KyAgICAgICAgICAgICAgICAgICAgICBib29sIGRlZmVyKTsKK2ludCBnZXRfcGFnZV9mcm9tX2w0 ZShsNF9wZ2VudHJ5X3QgbDRlLCB1bnNpZ25lZCBsb25nIHBmbiwgc3RydWN0IGRvbWFpbiAqZCwK KyAgICAgICAgICAgICAgICAgICAgICBpbnQgcGFydGlhbCk7CitpbnQgcHV0X3BhZ2VfZnJvbV9s NGUobDRfcGdlbnRyeV90IGw0ZSwgdW5zaWduZWQgbG9uZyBwZm4sIGludCBwYXJ0aWFsLAorICAg ICAgICAgICAgICAgICAgICAgIGJvb2wgZGVmZXIpOwordm9pZCBnZXRfcGFnZV9saWdodChzdHJ1 Y3QgcGFnZV9pbmZvICpwYWdlKTsKIGJvb2wgZ2V0X3BhZ2VfZnJvbV9tZm4obWZuX3QgbWZuLCBz dHJ1Y3QgZG9tYWluICpkKTsKK2ludCBnZXRfcGFnZV9hbmRfdHlwZV9mcm9tX21mbihtZm5fdCBt Zm4sIHVuc2lnbmVkIGxvbmcgdHlwZSwgc3RydWN0IGRvbWFpbiAqZCwKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBpbnQgcGFydGlhbCwgYm9vbCBwcmVlbXB0aWJsZSk7CiAKIHN0YXRp YyBpbmxpbmUgdm9pZCBwdXRfcGFnZV9hbmRfdHlwZShzdHJ1Y3QgcGFnZV9pbmZvICpwYWdlKQog ewotLSAKMi4xMS4wCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRw czovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==