From mboxrd@z Thu Jan 1 00:00:00 1970 From: Zhiyuan Lv Subject: [PATCH 6/7] drm/i915: guest i915 notification for Intel-GVTg Date: Thu, 20 Aug 2015 12:00:20 +0800 Message-ID: <20150820040020.GA6213@zlv-hp-dev> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTP id 8BB816E06F for ; Wed, 19 Aug 2015 21:13:08 -0700 (PDT) Content-Disposition: inline List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org Cc: igvt-g@lists.01.org List-Id: intel-gfx@lists.freedesktop.org V2hlbiBpOTE1IGRyaXZlcnMgcnVuIGluc2lkZSBhIFZNIHdpdGggSW50ZWwtR1ZUZywgc29tZSBl eHBsaWNpdApub3RpZmljYXRpb25zIGFyZSBuZWVkZWQgZnJvbSBndWVzdCB0byBob3N0IGRldmlj ZSBtb2RlbCB0aHJvdWdoIFBWCklORk8gcGFnZSB3cml0ZS4gVGhlIG5vdGlmaWNhdGlvbnMgaW5j bHVkZToKCglQUEdUVCBjcmVhdGUvZGVzdHJveQoJRVhFQ0xJU1QgY3JlYXRlL2Rlc3Ryb3kKClRo ZXkgYXJlIHVzZWQgZm9yIHRoZSBzaGFkb3cgaW1wbGVtZW50YXRpb24gb2YgUFBHVFQgYW5kIEVY RUNMSVNUCmNvbnRleHQuIEludGVsIEdWVC1nIG5lZWRzIHRvIHdyaXRlLXByb3RlY3QgdGhlIGd1 ZXN0IHBhZ2VzIG9mIFBQR1RUCmFuZCBjb250ZXh0cywgYW5kIGNsZWFyIHRoZSB3cml0ZSBwcm90 ZWN0aW9uIHdoZW4gdGhleSBlbmQgdGhlaXIgbGlmZQpjeWNsZS4KClNpZ25lZC1vZmYtYnk6IFpo aXl1YW4gTHYgPHpoaXl1YW4ubHZAaW50ZWwuY29tPgpTaWduZWQtb2ZmLWJ5OiBaaGkgV2FuZyA8 emhpLmEud2FuZ0BpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1f Z3R0LmMgfCA0MSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBkcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYyAgICB8IDI1ICsrKysrKysrKysrKysrKysrKysrKysK IDIgZmlsZXMgY2hhbmdlZCwgNjYgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9n ZW1fZ3R0LmMKaW5kZXggODIzMDA1Yy4uMDBkYWZiMCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9n ZW1fZ3R0LmMKQEAgLTg5Niw2ICs4OTYsNDEgQEAgc3RhdGljIGludCBnZW44X2luaXRfc2NyYXRj aChzdHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNlICp2bSkKIAlyZXR1cm4gMDsKIH0KIAorc3RhdGlj IGludCBnZW44X3BwZ3R0X25vdGlmeV92Z3Qoc3RydWN0IGk5MTVfaHdfcHBndHQgKnBwZ3R0LCBi b29sIGNyZWF0ZSkKK3sKKwllbnVtIHZndF9nMnZfdHlwZSBtc2c7CisJc3RydWN0IGRybV9kZXZp Y2UgKmRldiA9IHBwZ3R0LT5iYXNlLmRldjsKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2 X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOworCXVuc2lnbmVkIGludCBvZmZzZXQgPSB2Z3RpZl9y ZWcocGRwMF9sbyk7CisJaW50IGk7CisKKwlpZiAoVVNFU19GVUxMXzQ4QklUX1BQR1RUKGRldikp IHsKKwkJdTY0IGRhZGRyID0gcHhfZG1hKCZwcGd0dC0+cG1sNCk7CisKKwkJSTkxNV9XUklURShv ZmZzZXQsIGRhZGRyICYgMHhmZmZmZmZmZik7CisJCUk5MTVfV1JJVEUob2Zmc2V0ICsgNCwgZGFk ZHIgPj4gMzIpOworCisJCW1zZyA9IChjcmVhdGUgPyBWR1RfRzJWX1BQR1RUX0w0X1BBR0VfVEFC TEVfQ1JFQVRFIDoKKwkJCQlWR1RfRzJWX1BQR1RUX0w0X1BBR0VfVEFCTEVfREVTVFJPWSk7CisJ fSBlbHNlIHsKKwkJZm9yIChpID0gMDsgaSA8IEdFTjhfTEVHQUNZX1BEUEVTOyBpKyspIHsKKwkJ CXU2NCBkYWRkciA9IGk5MTVfcGFnZV9kaXJfZG1hX2FkZHIocHBndHQsIGkpOworCisJCQlJOTE1 X1dSSVRFKG9mZnNldCwgZGFkZHIgJiAweGZmZmZmZmZmKTsKKwkJCUk5MTVfV1JJVEUob2Zmc2V0 ICsgNCwgZGFkZHIgPj4gMzIpOworCisJCQlvZmZzZXQgKz0gODsKKwkJfQorCisJCW1zZyA9IChj cmVhdGUgPyBWR1RfRzJWX1BQR1RUX0wzX1BBR0VfVEFCTEVfQ1JFQVRFIDoKKwkJCQlWR1RfRzJW X1BQR1RUX0wzX1BBR0VfVEFCTEVfREVTVFJPWSk7CisJfQorCisJSTkxNV9XUklURSh2Z3RpZl9y ZWcoZzJ2X25vdGlmeSksIG1zZyk7CisKKwlyZXR1cm4gMDsKK30KKwogc3RhdGljIHZvaWQgZ2Vu OF9mcmVlX3NjcmF0Y2goc3RydWN0IGk5MTVfYWRkcmVzc19zcGFjZSAqdm0pCiB7CiAJc3RydWN0 IGRybV9kZXZpY2UgKmRldiA9IHZtLT5kZXY7CkBAIC05NDIsNiArOTc3LDkgQEAgc3RhdGljIHZv aWQgZ2VuOF9wcGd0dF9jbGVhbnVwKHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZtKQogCXN0 cnVjdCBpOTE1X2h3X3BwZ3R0ICpwcGd0dCA9CiAJCWNvbnRhaW5lcl9vZih2bSwgc3RydWN0IGk5 MTVfaHdfcHBndHQsIGJhc2UpOwogCisJaWYgKGludGVsX3ZncHVfYWN0aXZlKHZtLT5kZXYpKQor CQlnZW44X3BwZ3R0X25vdGlmeV92Z3QocHBndHQsIGZhbHNlKTsKKwogCWlmICghVVNFU19GVUxM XzQ4QklUX1BQR1RUKHBwZ3R0LT5iYXNlLmRldikpCiAJCWdlbjhfcHBndHRfY2xlYW51cF8zbHZs KHBwZ3R0LT5iYXNlLmRldiwgJnBwZ3R0LT5wZHApOwogCWVsc2UKQEAgLTE1MTYsNiArMTU1NCw5 IEBAIHN0YXRpYyBpbnQgZ2VuOF9wcGd0dF9pbml0KHN0cnVjdCBpOTE1X2h3X3BwZ3R0ICpwcGd0 dCkKIAkJfQogCX0KIAorCWlmIChpbnRlbF92Z3B1X2FjdGl2ZShwcGd0dC0+YmFzZS5kZXYpKQor CQlnZW44X3BwZ3R0X25vdGlmeV92Z3QocHBndHQsIHRydWUpOworCiAJcmV0dXJuIDA7CiAKIGZy ZWVfc2NyYXRjaDoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5j IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMKaW5kZXggNGIyYWMzNy4uODBkNDI0 YiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMKKysrIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMKQEAgLTEzNiw2ICsxMzYsNyBAQAogI2luY2x1 ZGUgPGRybS9pOTE1X2RybS5oPgogI2luY2x1ZGUgImk5MTVfZHJ2LmgiCiAjaW5jbHVkZSAiaW50 ZWxfbW9jcy5oIgorI2luY2x1ZGUgImk5MTVfdmdwdS5oIgogCiAjZGVmaW5lIEdFTjlfTFJfQ09O VEVYVF9SRU5ERVJfU0laRSAoMjIgKiBQQUdFX1NJWkUpCiAjZGVmaW5lIEdFTjhfTFJfQ09OVEVY VF9SRU5ERVJfU0laRSAoMjAgKiBQQUdFX1NJWkUpCkBAIC0yMTIyLDYgKzIxMjMsMjIgQEAgbWFr ZV9ycGNzKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAJcmV0dXJuIHJwY3M7CiB9CiAKK3N0YXRp YyB2b2lkIGludGVsX2xyX2NvbnRleHRfbm90aWZ5X3ZndChzdHJ1Y3QgaW50ZWxfY29udGV4dCAq Y3R4LAorCQkJCQlzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nLAorCQkJCQlpbnQgbXNnKQor eworCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSByaW5nLT5kZXY7CisJc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2ID0gZGV2LT5kZXZfcHJpdmF0ZTsKKwl1NjQgdG1wID0gaW50ZWxf bHJfY29udGV4dF9kZXNjcmlwdG9yKGN0eCwgcmluZyk7CisKKwlJOTE1X1dSSVRFKHZndGlmX3Jl ZyhleGVjbGlzdF9jb250ZXh0X2Rlc2NyaXB0b3JfbG8pLAorCQkJdG1wICYgMHhmZmZmZmZmZik7 CisJSTkxNV9XUklURSh2Z3RpZl9yZWcoZXhlY2xpc3RfY29udGV4dF9kZXNjcmlwdG9yX2hpKSwK KwkJCXRtcCA+PiAzMik7CisKKwlJOTE1X1dSSVRFKHZndGlmX3JlZyhnMnZfbm90aWZ5KSwgbXNn KTsKK30KKwogc3RhdGljIGludAogcG9wdWxhdGVfbHJfY29udGV4dChzdHJ1Y3QgaW50ZWxfY29u dGV4dCAqY3R4LCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqY3R4X29iaiwKIAkJICAgIHN0 cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcsIHN0cnVjdCBpbnRlbF9yaW5nYnVmZmVyICpyaW5n YnVmKQpAQCAtMjI4Miw2ICsyMjk5LDEwIEBAIHZvaWQgaW50ZWxfbHJfY29udGV4dF9mcmVlKHN0 cnVjdCBpbnRlbF9jb250ZXh0ICpjdHgpCiAJCQkJCWN0eC0+ZW5naW5lW2ldLnJpbmdidWY7CiAJ CQlzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nID0gcmluZ2J1Zi0+cmluZzsKIAorCQkJaWYg KGludGVsX3ZncHVfYWN0aXZlKHJpbmdidWYtPnJpbmctPmRldikpCisJCQkJaW50ZWxfbHJfY29u dGV4dF9ub3RpZnlfdmd0KGN0eCwgcmluZywKKwkJCQkJVkdUX0cyVl9FWEVDTElTVF9DT05URVhU X0RFU1RST1kpOworCiAJCQlpZiAoKGN0eCA9PSByaW5nLT5kZWZhdWx0X2NvbnRleHQpIHx8CiAJ CQkgICAgKGludGVsX3ZncHVfYWN0aXZlKHJpbmctPmRldikpKSB7CiAJCQkJaW50ZWxfdW5waW5f cmluZ2J1ZmZlcl9vYmoocmluZ2J1Zik7CkBAIC0yNDM5LDYgKzI0NjAsMTAgQEAgaW50IGludGVs X2xyX2NvbnRleHRfZGVmZXJyZWRfY3JlYXRlKHN0cnVjdCBpbnRlbF9jb250ZXh0ICpjdHgsCiAJ Y3R4LT5lbmdpbmVbcmluZy0+aWRdLnJpbmdidWYgPSByaW5nYnVmOwogCWN0eC0+ZW5naW5lW3Jp bmctPmlkXS5zdGF0ZSA9IGN0eF9vYmo7CiAKKwlpZiAoaW50ZWxfdmdwdV9hY3RpdmUoZGV2KSkK KwkJaW50ZWxfbHJfY29udGV4dF9ub3RpZnlfdmd0KGN0eCwgcmluZywKKwkJCQlWR1RfRzJWX0VY RUNMSVNUX0NPTlRFWFRfQ1JFQVRFKTsKKwogCWlmIChjdHggPT0gcmluZy0+ZGVmYXVsdF9jb250 ZXh0KQogCQlscmNfc2V0dXBfaGFyZHdhcmVfc3RhdHVzX3BhZ2UocmluZywgY3R4X29iaik7CiAJ ZWxzZSBpZiAocmluZy0+aWQgPT0gUkNTICYmICFjdHgtPnJjc19pbml0aWFsaXplZCkgewotLSAK MS45LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCklu dGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRw Oi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==