From mboxrd@z Thu Jan 1 00:00:00 1970 From: Xiaolin Zhang Subject: [PATCH v6 2/8] drm/i915: vgpu shared memory setup for pv optimization Date: Mon, 3 Jun 2019 14:02:43 +0800 Message-ID: <1559541769-25279-3-git-send-email-xiaolin.zhang@intel.com> References: <1559541769-25279-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: <1559541769-25279-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 b24gc3VwcG9ydCBpbiBzaGFyZWQgbWVtb3J5IChaaGVueXUpLgoKU2lnbmVkLW9mZi1ieTogWGlh b2xpbiBaaGFuZyA8eGlhb2xpbi56aGFuZ0BpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9kcnYuaCAgICB8ICAzICsrLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9w dmluZm8uaCB8ICA1ICsrKy0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfdmdwdS5jICAgfCA0 OCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV92Z3B1LmggICB8IDMxICsrKysrKysrKysrKysrKysrKysrKysrKwogNCBmaWxl cyBjaGFuZ2VkLCA4NSBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2Rydi5oCmluZGV4IDJiYjM4YjQuLjljY2YzN2IgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZHJ2LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYu aApAQCAtMTI0NCw3ICsxMjQ0LDggQEAgc3RydWN0IGk5MTVfdmlydHVhbF9ncHUgewogCWJvb2wg YWN0aXZlOwogCXUzMiBjYXBzOwogCXUzMiBwdl9jYXBzOwotfTsKKwlzdHJ1Y3QgZ3Z0X3NoYXJl ZF9wYWdlICpzaGFyZWRfcGFnZTsKK30gX19wYWNrZWQ7CiAKIC8qIHVzZWQgaW4gY29tcHV0aW5n IHRoZSBuZXcgd2F0ZXJtYXJrcyBzdGF0ZSAqLwogc3RydWN0IGludGVsX3dtX2NvbmZpZyB7CmRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3B2aW5mby5oIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9wdmluZm8uaAppbmRleCA2MTkzMDVhLi40NjU3YmY3IDEwMDY0NAot LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3B2aW5mby5oCisrKyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfcHZpbmZvLmgKQEAgLTQ2LDYgKzQ2LDcgQEAgZW51bSB2Z3RfZzJ2X3R5 cGUgewogCVZHVF9HMlZfUFBHVFRfTDRfUEFHRV9UQUJMRV9ERVNUUk9ZLAogCVZHVF9HMlZfRVhF Q0xJU1RfQ09OVEVYVF9DUkVBVEUsCiAJVkdUX0cyVl9FWEVDTElTVF9DT05URVhUX0RFU1RST1ks CisJVkdUX0cyVl9TSEFSRURfUEFHRV9TRVRVUCwKIAlWR1RfRzJWX01BWCwKIH07CiAKQEAgLTEx MCw3ICsxMTEsOSBAQCBzdHJ1Y3Qgdmd0X2lmIHsKIAogCXUzMiBwdl9jYXBzOwogCi0JdTMyICBy c3Y3WzB4MjAwIC0gMjVdOyAgICAvKiBwYWQgdG8gb25lIHBhZ2UgKi8KKwl1NjQgc2hhcmVkX3Bh Z2VfZ3BhOworCisJdTMyICByc3Y3WzB4MjAwIC0gMjddOyAgICAvKiBwYWQgdG8gb25lIHBhZ2Ug Ki8KIH0gX19wYWNrZWQ7CiAKICNkZWZpbmUgdmd0aWZfcmVnKHgpIFwKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfdmdwdS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV92Z3B1LmMKaW5kZXggYmI5Zjk4OC4uNjAyMDUxNSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV92Z3B1LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV92Z3B1 LmMKQEAgLTEzNSw2ICsxMzUsOSBAQCB2b2lkIGludGVsX3ZndF9kZWJhbGxvb24oc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogCiAJZm9yIChpID0gMDsgaSA8IDQ7IGkrKykKIAkJ dmd0X2RlYmFsbG9vbl9zcGFjZSgmZGV2X3ByaXYtPmdndHQsICZibF9pbmZvLnNwYWNlW2ldKTsK KworCWlmIChkZXZfcHJpdi0+dmdwdS5zaGFyZWRfcGFnZSkKKwkJZnJlZV9wYWdlKCh1bnNpZ25l ZCBsb25nKWRldl9wcml2LT52Z3B1LnNoYXJlZF9wYWdlKTsKIH0KIAogc3RhdGljIGludCB2Z3Rf YmFsbG9vbl9zcGFjZShzdHJ1Y3QgaTkxNV9nZ3R0ICpnZ3R0LApAQCAtMjg2LDYgKzI4OSw0NiBA QCBpbnQgaW50ZWxfdmd0X2JhbGxvb24oc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 KQogICogaTkxNSB2Z3B1IFBWIHN1cHBvcnQgZm9yIExpbnV4CiAgKi8KIAorLyoKKyAqIHNoYXJl ZF9wYWdlIHNldHVwIGZvciBWR1BVIFBWIGZlYXR1cmVzCisgKi8KK3N0YXRpYyBpbnQgaW50ZWxf dmdwdV9zZXR1cF9zaGFyZWRfcGFnZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYp Cit7CisJc3RydWN0IGludGVsX3VuY29yZSAqdW5jb3JlID0gJmRldl9wcml2LT51bmNvcmU7CisJ c3RydWN0IGd2dF9zaGFyZWRfcGFnZSAqc2hhcmVkX3BhZ2U7CisJdTY0IGdwYTsKKwl1MTYgdmVy X21haiwgdmVyX21pbjsKKworCXNoYXJlZF9wYWdlID0gIChzdHJ1Y3QgZ3Z0X3NoYXJlZF9wYWdl ICopZ2V0X3plcm9lZF9wYWdlKEdGUF9LRVJORUwpOworCWlmICghc2hhcmVkX3BhZ2UpIHsKKwkJ RFJNX0lORk8oIm91dCBvZiBtZW1vcnkgZm9yIHNoYXJlZCBwYWdlIG1lbW9yeVxuIik7CisJCXJl dHVybiAtRU5PTUVNOworCX0KKworCS8qIHBhc3MgZ3Vlc3QgbWVtb3J5IHBhIGFkZHJlc3MgdG8g R1ZUIGFuZCB0aGVuIHJlYWQgYmFjayB0byB2ZXJpZnkgKi8KKwlncGEgPSBfX3BhKHNoYXJlZF9w YWdlKTsKKwlfX3Jhd191bmNvcmVfd3JpdGU2NCh1bmNvcmUsIHZndGlmX3JlZyhzaGFyZWRfcGFn ZV9ncGEpLCBncGEpOworCWlmIChncGEgIT0gX19yYXdfdW5jb3JlX3JlYWQ2NCh1bmNvcmUsIHZn dGlmX3JlZyhzaGFyZWRfcGFnZV9ncGEpKSkgeworCQlEUk1fSU5GTygidmdwdTogcGFzc2VkIHNo YXJlZF9wYWdlX2dwYSBmYWlsZWRcbiIpOworCQlmcmVlX3BhZ2UoKHVuc2lnbmVkIGxvbmcpZGV2 X3ByaXYtPnZncHUuc2hhcmVkX3BhZ2UpOworCQlyZXR1cm4gLUVJTzsKKwl9CisKKwlfX3Jhd191 bmNvcmVfd3JpdGUzMih1bmNvcmUsIHZndGlmX3JlZyhnMnZfbm90aWZ5KSwKKwkJCVZHVF9HMlZf U0hBUkVEX1BBR0VfU0VUVVApOworCXZlcl9tYWogPSBzaGFyZWRfcGFnZS0+dmVyX21ham9yOwor CXZlcl9taW4gPSBzaGFyZWRfcGFnZS0+dmVyX21pbm9yOworCURSTV9JTkZPKCJ2Z3B1IFBWIHZl ciBtYWpvciAlZCBhbmQgbWlub3IgJWRcbiIsIHZlcl9tYWosIHZlcl9taW4pOworCWlmICh2ZXJf bWFqICE9IFBWX01BSk9SIHx8IHZlcl9taW4gIT0gUFZfTUlOT1IpIHsKKwkJRFJNX0lORk8oInZn cHU6IHNoYXJlZF9wYWdlIGZvcm1hdCBpbmNvbXBhdGlibGVcbiIpOworCQlmcmVlX3BhZ2UoKHVu c2lnbmVkIGxvbmcpZGV2X3ByaXYtPnZncHUuc2hhcmVkX3BhZ2UpOworCQlyZXR1cm4gLUVJTzsK Kwl9CisKKwlkZXZfcHJpdi0+dmdwdS5zaGFyZWRfcGFnZSA9IHNoYXJlZF9wYWdlOworCXJldHVy biAwOworfQorCiAvKioKICAqIGludGVsX3ZncHVfY2hlY2tfcHZfY2FwcyAtIGRldGVjdCB2aXJ0 dWFsIEdQVSBQViBjYXBhYmlsaXRpZXMKICAqIEBkZXZfcHJpdjogaTkxNSBkZXZpY2UgcHJpdmF0 ZQpAQCAtMzA1LDkgKzM0OCwxNCBAQCBib29sIGludGVsX3ZncHVfY2hlY2tfcHZfY2FwcyhzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiAJaWYgKCFpbnRlbF92Z3B1X2hhc19wdl9j YXBzKGRldl9wcml2KSkKIAkJcmV0dXJuIGZhbHNlOwogCisJaWYgKGludGVsX3ZncHVfc2V0dXBf c2hhcmVkX3BhZ2UoZGV2X3ByaXYpKQorCQlnb3RvIGVycjsKKwogCS8qIFBWIGNhcGFiaWxpdHkg bmVnb3RpYXRpb24gYmV0d2VlbiBQViBndWVzdCBhbmQgR1ZUICovCiAJZ3Z0X3B2Y2FwcyA9IF9f cmF3X3VuY29yZV9yZWFkMzIodW5jb3JlLCB2Z3RpZl9yZWcocHZfY2FwcykpOwogCXB2Y2FwcyA9 IGRldl9wcml2LT52Z3B1LnB2X2NhcHMgJiBndnRfcHZjYXBzOworCitlcnI6CiAJZGV2X3ByaXYt PnZncHUucHZfY2FwcyA9IHB2Y2FwczsKIAlfX3Jhd191bmNvcmVfd3JpdGUzMih1bmNvcmUsIHZn dGlmX3JlZyhwdl9jYXBzKSwgcHZjYXBzKTsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV92Z3B1LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3ZncHUuaAppbmRl eCA5MTAxMGZjLi4xMDMwZjVhIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X3ZncHUuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3ZncHUuaApAQCAtMjYsNiAr MjYsMzcgQEAKIAogI2luY2x1ZGUgImk5MTVfcHZpbmZvLmgiCiAKKy8qCisgKiBBIHNoYXJlZCBw YWdlKDRLQikgYmV0d2VlbiBndnQgYW5kIFZNLCBjb3VsZCBiZSBhbGxvY2F0ZWQgYnkgZ3Vlc3Qg ZHJpdmVyCisgKiBvciBhIGZpeGVkIGxvY2F0aW9uIGluIFBDSSBiYXIgMCByZWdpb24KKyAqLwor c3RydWN0IHB2X3BwZ3R0X3VwZGF0ZSB7CisJdTY0IHBkcDsKKwl1NjQgc3RhcnQ7CisJdTY0IGxl bmd0aDsKKwl1MzIgY2FjaGVfbGV2ZWw7Cit9OworCitzdHJ1Y3QgcHZfc3VibWlzc2lvbiB7CisJ dTY0IGRlc2NzW0VYRUNMSVNUX01BWF9QT1JUU107Cit9OworCisjZGVmaW5lIFBWX01BWF9FTkdJ TkVTX05VTSAoVkVDUzFfSFcgKyAxKQorI2RlZmluZSBQVl9NQUpPUgkJMQorI2RlZmluZSBQVl9N SU5PUgkJMAorCitzdHJ1Y3QgcHZfYnVmZmVyX2Rlc2MgeworCXN0cnVjdCBwdl9wcGd0dF91cGRh dGUgcHZfcHBndHQ7CisJc3RydWN0IHB2X3N1Ym1pc3Npb24gcHZfZWxzcFtQVl9NQVhfRU5HSU5F U19OVU1dOworCWJvb2wgc3VibWl0dGVkW1BWX01BWF9FTkdJTkVTX05VTV07Cit9IF9fcGFja2Vk OworCitzdHJ1Y3QgZ3Z0X3NoYXJlZF9wYWdlIHsKKwl1MTYgdmVyX21ham9yOworCXUxNiB2ZXJf bWlub3I7CisJc3RydWN0IHB2X2J1ZmZlcl9kZXNjIGJ1ZjsKK307CisKIHZvaWQgaTkxNV9jaGVj a192Z3B1KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdik7CiAKIGJvb2wgaW50ZWxf dmdwdV9oYXNfZnVsbF9wcGd0dChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwot LSAKMi43LjQKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpo dHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeA==