From mboxrd@z Thu Jan 1 00:00:00 1970 From: Xiaolin Zhang Subject: [PATCH v10 2/9] drm/i915: vgpu shared memory setup for pv optimization Date: Tue, 17 Sep 2019 13:48:13 +0800 Message-ID: <1568699301-2799-3-git-send-email-xiaolin.zhang@intel.com> References: <1568699301-2799-1-git-send-email-xiaolin.zhang@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1568699301-2799-1-git-send-email-xiaolin.zhang@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gvt-dev@lists.freedesktop.org, intel-gfx@lists.freedesktop.org Cc: zhenyu.z.wang@intel.com, hang.yuan@intel.com, zhiyuan.lv@intel.com List-Id: intel-gfx@lists.freedesktop.org VG8gZW5hYmxlIHZncHUgcHYgZmVhdHVyZXMsIHdlIG5lZWQgdG8gc2V0dXAgYSBzaGFyZWQgbWVt b3J5IHBhZ2UKd2hpY2ggd2lsbCBiZSB1c2VkIGZvciBkYXRhIGV4Y2hhbmdlIGRpcmVjdGx5IGFj Y2Vzc2VkIGJldHdlZW4gYm90aApndWVzdCBhbmQgYmFja2VuZCBpOTE1IGRyaXZlciB0byBhdm9p ZCBlbXVsYXRpb24gdHJhcCBjb3N0LgoKZ3Vlc3QgaTkxNSB3aWxsIGFsbG9jYXRlIHRoaXMgcGFn ZSBtZW1vcnkgYW5kIHRoZW4gcGFzcyBpdCdzIHBoeXNpY2FsCmFkZHJlc3MgdG8gYmFja2VuZCBp OTE1IGRyaXZlciB0aHJvdWdoIFBWSU5GTyByZWdpc3RlciBzbyB0aGF0IGJhY2tlbmQgaTkxNQpk cml2ZXIgY2FuIGFjY2VzcyB0aGlzIHNoYXJlZCBwYWdlIG1lb3J5IHdpdGhvdXQgYW55IHRyYXAg Y29zdCB3aXRoIHRoZQpoZWxwIGZvcm0gaHlwZXJ2aXNlcidzIHJlYWQgZ3Vlc3QgZ3BhIGZ1bmN0 aW9uYWxpdHkuCgpndWVzdCBpOTE1IHdpbGwgc2VuZCBWR1RfRzJWX1NIQVJFRF9QQUdFX1NFVFVQ IG5vdGlmaWNhdGlvbiB0byBob3N0IEdWVApvbmNlIHNoYXJlZCBtZW1vcnkgc2V0dXAgZmluaXNo ZWQuCgp0aGUgbGF5b3V0IG9mIHRoZSBzaGFyZWRfcGFnZSBhbHNvIGRlZmluZWQgYXMgd2VsbCBp biB0aGlzIHBhdGNoIHdoaWNoCmlzIHVzZWQgZm9yIHB2IGZlYXR1cmVzIGltcGxlbWVudGF0aW9u LgoKdjA6IFJGQy4KdjE6IGFkZHJlc3NlZCBSRkMgY29tbWVudCB0byBtb3ZlIGJvdGggc2hhcmVk X3BhZ2VfbG9jayBhbmQgc2hhcmVkX3BhZ2UKdG8gaTkxNV92aXJ0dWFsX2dwdSBzdHJ1Y3R1cmUu CnYyOiBwYWNrZWQgaTkxNV92aXJ0dWFsX2dwdSBzdHJ1Y3R1cmUuCnYzOiBhZGRlZCBTSEFSRURf UEFHRV9TRVRVUCBnMnYgbm90aWZpY2F0aW9uIGZvciBwdiBzaGFyZWRfcGFnZSBzZXR1cAp2NDog YWRkZWQgaW50ZWxfdmdwdV9zZXR1cF9zaGFyZWRfcGFnZSgpIGluIGk5MTVfdmdwdV9wdi5jLgp2 NTogcGVyIGVuZ2luZSBkZXNjIGRhdGEgaW4gc2hhcmVkIG1lbW9yeS4KdjY6IGFkZGVkIHZlcnNp b24gc3VwcG9ydCBpbiBzaGFyZWQgbWVtb3J5IChaaGVueXUpLgp2NzogYWRkZWQgbmV3IGZ1bmN0 aW9uIGk5MTVfZGVzdHJveV92Z3B1IHRvIGZyZWUgc2hhcmVkIG1lbW9yeS4KClNpZ25lZC1vZmYt Ynk6IFhpYW9saW4gWmhhbmcgPHhpYW9saW4uemhhbmdAaW50ZWwuY29tPgotLS0KIGRyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZHJ2LmMgICAgfCAgMiArCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2Rydi5oICAgIHwgIDQgKy0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcHZpbmZvLmgg fCAgNSArLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV92Z3B1LmMgICB8IDk1ICsrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X3ZncHUuaCAgIHwgMTggKysrKysrKysKIDUgZmlsZXMgY2hhbmdlZCwgMTIyIGluc2VydGlvbnMo KyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9kcnYuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmMKaW5kZXggMGRmY2I0MC4u YjFmOTVkMCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuYworKysg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5jCkBAIC0xNjM3LDYgKzE2MzcsOCBAQCBz dGF0aWMgdm9pZCBpOTE1X2RyaXZlcl9yZWxlYXNlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAK IAlkaXNhYmxlX3JwbV93YWtlcmVmX2Fzc2VydHMocnBtKTsKIAorCWk5MTVfZGVzdHJveV92Z3B1 KGRldl9wcml2KTsKKwogCWk5MTVfZ2VtX2RyaXZlcl9yZWxlYXNlKGRldl9wcml2KTsKIAogCWk5 MTVfZ2d0dF9kcml2ZXJfcmVsZWFzZShkZXZfcHJpdik7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaApp bmRleCAxOWZiYmVmLi5iM2MwODQ5IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKQEAgLTk3Myw3 ICs5NzMsOSBAQCBzdHJ1Y3QgaTkxNV92aXJ0dWFsX2dwdSB7CiAJYm9vbCBhY3RpdmU7CiAJdTMy IGNhcHM7CiAJdTMyIHB2X2NhcHM7Ci19OworCisJc3RydWN0IGk5MTVfdmlydHVhbF9ncHVfcHYg KnB2OworfSBfX3BhY2tlZDsKIAogLyogdXNlZCBpbiBjb21wdXRpbmcgdGhlIG5ldyB3YXRlcm1h cmtzIHN0YXRlICovCiBzdHJ1Y3QgaW50ZWxfd21fY29uZmlnIHsKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfcHZpbmZvLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X3B2aW5mby5oCmluZGV4IGFkMzk4YjQuLjNjNjM2MDMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfcHZpbmZvLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9w dmluZm8uaApAQCAtNDgsNiArNDgsNyBAQCBlbnVtIHZndF9nMnZfdHlwZSB7CiAJVkdUX0cyVl9Q UEdUVF9MNF9QQUdFX1RBQkxFX0RFU1RST1ksCiAJVkdUX0cyVl9FWEVDTElTVF9DT05URVhUX0NS RUFURSwKIAlWR1RfRzJWX0VYRUNMSVNUX0NPTlRFWFRfREVTVFJPWSwKKwlWR1RfRzJWX1NIQVJF RF9QQUdFX1NFVFVQLAogCVZHVF9HMlZfTUFYLAogfTsKIApAQCAtMTEyLDcgKzExMyw5IEBAIHN0 cnVjdCB2Z3RfaWYgewogCiAJdTMyIHB2X2NhcHM7CiAKLQl1MzIgIHJzdjdbMHgyMDAgLSAyNV07 ICAgIC8qIHBhZCB0byBvbmUgcGFnZSAqLworCXU2NCBzaGFyZWRfcGFnZV9ncGE7CisKKwl1MzIg IHJzdjdbMHgyMDAgLSAyN107ICAgIC8qIHBhZCB0byBvbmUgcGFnZSAqLwogfSBfX3BhY2tlZDsK IAogI2RlZmluZSB2Z3RpZl9vZmZzZXQoeCkgKG9mZnNldG9mKHN0cnVjdCB2Z3RfaWYsIHgpKQpk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV92Z3B1LmMgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X3ZncHUuYwppbmRleCA5ODE5NTliLi42OGZlY2ZkIDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3ZncHUuYworKysgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X3ZncHUuYwpAQCAtMTA3LDYgKzEwNywxNyBAQCB2b2lkIGk5MTVfZGV0ZWN0X3Zn cHUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogCXBjaV9pb3VubWFwKHBkZXYs IHNoYXJlZF9hcmVhKTsKIH0KIAordm9pZCBpOTE1X2Rlc3Ryb3lfdmdwdShzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCit7CisJc3RydWN0IGk5MTVfdmlydHVhbF9ncHVfcHYgKnB2 ID0gZGV2X3ByaXYtPnZncHUucHY7CisKKwlpZiAoIWludGVsX3ZncHVfYWN0aXZlKGRldl9wcml2 KSB8fCAhcHYpCisJCXJldHVybjsKKworCV9fZnJlZV9wYWdlKHZpcnRfdG9fcGFnZShwdi0+c2hh cmVkX3BhZ2UpKTsKKwlrZnJlZShwdik7Cit9CisKIGJvb2wgaW50ZWxfdmdwdV9oYXNfZnVsbF9w cGd0dChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiB7CiAJcmV0dXJuIGRldl9w cml2LT52Z3B1LmNhcHMgJiBWR1RfQ0FQU19GVUxMX1BQR1RUOwpAQCAtMzExLDYgKzMyMiw4NCBA QCBpbnQgaW50ZWxfdmd0X2JhbGxvb24oc3RydWN0IGk5MTVfZ2d0dCAqZ2d0dCkKICAqIGk5MTUg dmdwdSBQViBzdXBwb3J0IGZvciBMaW51eAogICovCiAKKy8qCisgKiBzaGFyZWRfcGFnZSBzZXR1 cCBmb3IgVkdQVSBQViBmZWF0dXJlcworICovCitzdGF0aWMgaW50IGludGVsX3ZncHVfc2V0dXBf c2hhcmVkX3BhZ2Uoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAorCQl2b2lkIF9f aW9tZW0gKnNoYXJlZF9hcmVhKQoreworCXZvaWQgX19pb21lbSAqYWRkcjsKKwlzdHJ1Y3QgaTkx NV92aXJ0dWFsX2dwdV9wdiAqcHY7CisJc3RydWN0IGd2dF9zaGFyZWRfcGFnZSAqYmFzZTsKKwl1 NjQgZ3BhOworCXUxNiB2ZXJfbWFqLCB2ZXJfbWluOworCWludCByZXQgPSAwOworCisJLyogV2Ug YWxsb2NhdGUgMSBwYWdlIHNoYXJlZCBiZXR3ZWVuIGd1ZXN0IGFuZCBHVlQgZm9yIGRhdGEgZXhj aGFuZ2UuCisJICogICAgICAgX19fX19fX19fX18uLi4uLi4uLi4uLi4uLi4uLi4uLi4KKwkgKiAg ICAgIHxoZWFkICAgICAgIHwgICAgICAgICAgICAgICAgICAgfAorCSAqICAgICAgfF9fX19fX19f X19ffC4uLi4uLi4uLi4uLi4uLi4uLiBQQUdFLzgKKwkgKiAgICAgIHxQViBFTFNQICAgICAgICAg ICAgICAgICAgICAgICAgfAorCSAqICAgICAgOl9fX19fX19fX19fLi4uLi4uLi4uLi4uLi4uLi4u Li5QQUdFLzQKKwkgKiAgICAgIHxkZXNjIChTRU5EKSAgICAgICAgICAgICAgICAgICAgfAorCSAq ICAgICAgfAkJCQl8CisJICogICAgICA6X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX1BB R0UvMgorCSAqICAgICAgfGNtZHMgKFNFTkQpICAgICAgICAgICAgICAgICAgICB8CisJICogICAg ICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKwkgKiAgICAgIHwgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfAorCSAqICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB8CisJICogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKwkg KiAgICAgIHxfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19ffAorCSAqCisJICogMCBvZmZz ZXQ6IFBWIHZlcnNpb24gYXJlYQorCSAqIFBBR0UvOCBvZmZzZXQ6IHBlciBlbmdpbmUgd29ya2xv YWQgc3VibWlzc2lvbiBkYXRhIGFyZWEKKwkgKiBQQUdFLzQgb2Zmc2V0OiBQViBjb21tYW5kIGJ1 ZmZlciBjb21tYW5kIGRlc2NyaXB0b3IgYXJlYQorCSAqIFBBR0UvMiBvZmZzZXQ6IFBWIGNvbW1h bmQgYnVmZmVyIGNvbW1hbmQgZGF0YSBhcmVhCisJICovCisKKwliYXNlID0gIChzdHJ1Y3QgZ3Z0 X3NoYXJlZF9wYWdlICopZ2V0X3plcm9lZF9wYWdlKEdGUF9LRVJORUwpOworCWlmICghYmFzZSkg eworCQlkZXZfaW5mbyhkZXZfcHJpdi0+ZHJtLmRldiwgIm91dCBvZiBtZW1vcnkgZm9yIHNoYXJl ZCBtZW1vcnlcbiIpOworCQlyZXR1cm4gLUVOT01FTTsKKwl9CisKKwkvKiBwYXNzIGd1ZXN0IG1l bW9yeSBwYSBhZGRyZXNzIHRvIEdWVCBhbmQgdGhlbiByZWFkIGJhY2sgdG8gdmVyaWZ5ICovCisJ Z3BhID0gX19wYShiYXNlKTsKKwlhZGRyID0gc2hhcmVkX2FyZWEgKyB2Z3RpZl9vZmZzZXQoc2hh cmVkX3BhZ2VfZ3BhKTsKKwl3cml0ZXEoZ3BhLCBhZGRyKTsKKwlpZiAoZ3BhICE9IHJlYWRxKGFk ZHIpKSB7CisJCWRldl9pbmZvKGRldl9wcml2LT5kcm0uZGV2LCAicGFzc2VkIHNoYXJlZF9wYWdl X2dwYSBmYWlsZWRcbiIpOworCQlyZXQgPSAtRUlPOworCQlnb3RvIGVycjsKKwl9CisKKwlhZGRy ID0gc2hhcmVkX2FyZWEgKyB2Z3RpZl9vZmZzZXQoZzJ2X25vdGlmeSk7CisJd3JpdGVsKFZHVF9H MlZfU0hBUkVEX1BBR0VfU0VUVVAsIGFkZHIpOworCisJdmVyX21haiA9IGJhc2UtPnZlcl9tYWpv cjsKKwl2ZXJfbWluID0gYmFzZS0+dmVyX21pbm9yOworCWlmICh2ZXJfbWFqICE9IFBWX01BSk9S IHx8IHZlcl9taW4gIT0gUFZfTUlOT1IpIHsKKwkJZGV2X2luZm8oZGV2X3ByaXYtPmRybS5kZXYs ICJWR1BVIFBWIHZlcnNpb24gaW5jb21wYXRpYmxlXG4iKTsKKwkJcmV0ID0gLUVJTzsKKwkJZ290 byBlcnI7CisJfQorCisJcHYgPSBremFsbG9jKHNpemVvZihzdHJ1Y3QgaTkxNV92aXJ0dWFsX2dw dV9wdiksIEdGUF9LRVJORUwpOworCWlmICghcHYpIHsKKwkJcmV0ID0gLUVOT01FTTsKKwkJZ290 byBlcnI7CisJfQorCisJRFJNX0lORk8oInZncHUgUFYgdmVyIG1ham9yICVkIGFuZCBtaW5vciAl ZFxuIiwgdmVyX21haiwgdmVyX21pbik7CisJZGV2X3ByaXYtPnZncHUucHYgPSBwdjsKKwlwdi0+ c2hhcmVkX3BhZ2UgPSBiYXNlOworCXB2LT5lbmFibGVkID0gdHJ1ZTsKKwlyZXR1cm4gcmV0Owor ZXJyOgorCV9fZnJlZV9wYWdlKHZpcnRfdG9fcGFnZShiYXNlKSk7CisJcmV0dXJuIHJldDsKK30K KwogLyoqCiAgKiBpbnRlbF92Z3B1X2NoZWNrX3B2X2NhcHMgLSBkZXRlY3QgdmlydHVhbCBHUFUg UFYgY2FwYWJpbGl0aWVzCiAgKiBAZGV2X3ByaXY6IGk5MTUgZGV2aWNlIHByaXZhdGUKQEAgLTMz OSw1ICs0MjgsMTEgQEAgYm9vbCBpbnRlbF92Z3B1X2NoZWNrX3B2X2NhcHMoc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmRldl9wcml2LAogCWlmICghcHZjYXBzKQogCQlyZXR1cm4gZmFsc2U7CiAK KwlpZiAoaW50ZWxfdmdwdV9zZXR1cF9zaGFyZWRfcGFnZShkZXZfcHJpdiwgc2hhcmVkX2FyZWEp KSB7CisJCWRldl9wcml2LT52Z3B1LnB2X2NhcHMgPSAwOworCQl3cml0ZWwoMCwgc2hhcmVkX2Fy ZWEgKyB2Z3RpZl9vZmZzZXQocHZfY2FwcykpOworCQlyZXR1cm4gZmFsc2U7CisJfQorCiAJcmV0 dXJuIHRydWU7CiB9CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3ZncHUu aCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfdmdwdS5oCmluZGV4IGJiZTU2YjUuLjQwMWFm MjQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfdmdwdS5oCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfdmdwdS5oCkBAIC0yNyw3ICsyNywyNSBAQAogI2luY2x1 ZGUgImk5MTVfZHJ2LmgiCiAjaW5jbHVkZSAiaTkxNV9wdmluZm8uaCIKIAorI2RlZmluZSBQVl9N QUpPUgkJMQorI2RlZmluZSBQVl9NSU5PUgkJMAorCisvKgorICogQSBzaGFyZWQgcGFnZSg0S0Ip IGJldHdlZW4gZ3Z0IGFuZCBWTSwgY291bGQgYmUgYWxsb2NhdGVkIGJ5IGd1ZXN0IGRyaXZlcgor ICogb3IgYSBmaXhlZCBsb2NhdGlvbiBpbiBQQ0kgYmFyIDAgcmVnaW9uCisgKi8KK3N0cnVjdCBn dnRfc2hhcmVkX3BhZ2UgeworCXUxNiB2ZXJfbWFqb3I7CisJdTE2IHZlcl9taW5vcjsKK307CisK K3N0cnVjdCBpOTE1X3ZpcnR1YWxfZ3B1X3B2IHsKKwlzdHJ1Y3QgZ3Z0X3NoYXJlZF9wYWdlICpz aGFyZWRfcGFnZTsKKwlib29sIGVuYWJsZWQ7Cit9OworCiB2b2lkIGk5MTVfZGV0ZWN0X3ZncHUo c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KTsKK3ZvaWQgaTkxNV9kZXN0cm95X3Zn cHUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KTsKIAogYm9vbCBpbnRlbF92Z3B1 X2hhc19mdWxsX3BwZ3R0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdik7CiAKLS0g CjEuOC4zLjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpo dHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeA==