From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matthew Auld Subject: [PATCH v2 35/37] drm/i915/query: Expose memory regions through the query uAPI Date: Thu, 27 Jun 2019 21:56:31 +0100 Message-ID: <20190627205633.1143-36-matthew.auld@intel.com> References: <20190627205633.1143-1-matthew.auld@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by gabe.freedesktop.org (Postfix) with ESMTPS id C69E96E867 for ; Thu, 27 Jun 2019 20:57:24 +0000 (UTC) In-Reply-To: <20190627205633.1143-1-matthew.auld@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-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org RnJvbTogQWJkaWVsIEphbnVsZ3VlIDxhYmRpZWwuamFudWxndWVAbGludXguaW50ZWwuY29tPgoK UmV0dXJucyB0aGUgYXZhaWxhYmxlIG1lbW9yeSByZWdpb24gYXJlYXMgc3VwcG9ydGVkIGJ5IHRo ZSBIVy4KClNpZ25lZC1vZmYtYnk6IEFiZGllbCBKYW51bGd1ZSA8YWJkaWVsLmphbnVsZ3VlQGxp bnV4LmludGVsLmNvbT4KQ2M6IEpvb25hcyBMYWh0aW5lbiA8am9vbmFzLmxhaHRpbmVuQGxpbnV4 LmludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3F1ZXJ5LmMgfCA1NyAr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBpbmNsdWRlL3VhcGkvZHJtL2k5MTVfZHJt LmggICAgICAgfCAzOSArKysrKysrKysrKysrKysrKysrKysKIDIgZmlsZXMgY2hhbmdlZCwgOTYg aW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcXVl cnkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcXVlcnkuYwppbmRleCA3YjcwMTYxNzEw NTcuLjIxYzRjMjU5MmQ2YyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9x dWVyeS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcXVlcnkuYwpAQCAtMTQzLDEw ICsxNDMsNjcgQEAgcXVlcnlfZW5naW5lX2luZm8oc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5 MTUsCiAJcmV0dXJuIGxlbjsKIH0KIAorc3RhdGljIGludCBxdWVyeV9tZW1yZWdpb25faW5mbyhz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCisJCQkJc3RydWN0IGRybV9pOTE1X3F1 ZXJ5X2l0ZW0gKnF1ZXJ5X2l0ZW0pCit7CisJc3RydWN0IGRybV9pOTE1X3F1ZXJ5X21lbW9yeV9y ZWdpb25faW5mbyBfX3VzZXIgKnF1ZXJ5X3B0ciA9CisJCXU2NF90b191c2VyX3B0cihxdWVyeV9p dGVtLT5kYXRhX3B0cik7CisJc3RydWN0IGRybV9pOTE1X21lbW9yeV9yZWdpb25faW5mbyBfX3Vz ZXIgKmluZm9fcHRyID0KKwkJJnF1ZXJ5X3B0ci0+cmVnaW9uc1swXTsKKwlzdHJ1Y3QgZHJtX2k5 MTVfbWVtb3J5X3JlZ2lvbl9pbmZvIGluZm8gPSB7IH07CisJc3RydWN0IGRybV9pOTE1X3F1ZXJ5 X21lbW9yeV9yZWdpb25faW5mbyBxdWVyeTsKKwl1MzIgdG90YWxfbGVuZ3RoOworCWludCByZXQs IGk7CisKKwlpZiAocXVlcnlfaXRlbS0+ZmxhZ3MgIT0gMCkKKwkJcmV0dXJuIC1FSU5WQUw7CisK Kwl0b3RhbF9sZW5ndGggPSBzaXplb2Yoc3RydWN0IGRybV9pOTE1X3F1ZXJ5X21lbW9yeV9yZWdp b25faW5mbyk7CisJZm9yIChpID0gMDsgaSA8IEFSUkFZX1NJWkUoZGV2X3ByaXYtPnJlZ2lvbnMp OyArK2kpIHsKKwkJc3RydWN0IGludGVsX21lbW9yeV9yZWdpb24gKnJlZ2lvbiA9IGRldl9wcml2 LT5yZWdpb25zW2ldOworCisJCWlmICghcmVnaW9uKQorCQkJY29udGludWU7CisKKwkJdG90YWxf bGVuZ3RoICs9IHNpemVvZihzdHJ1Y3QgZHJtX2k5MTVfbWVtb3J5X3JlZ2lvbl9pbmZvKTsKKwl9 CisKKwlyZXQgPSBjb3B5X3F1ZXJ5X2l0ZW0oJnF1ZXJ5LCBzaXplb2YocXVlcnkpLCB0b3RhbF9s ZW5ndGgsCisJCQkgICAgICBxdWVyeV9pdGVtKTsKKwlpZiAocmV0ICE9IDApCisJCXJldHVybiBy ZXQ7CisKKwlpZiAocXVlcnkubnVtX3JlZ2lvbnMgfHwgcXVlcnkucnN2ZFswXSB8fCBxdWVyeS5y c3ZkWzFdIHx8CisJICAgIHF1ZXJ5LnJzdmRbMl0pCisJCXJldHVybiAtRUlOVkFMOworCisJZm9y IChpID0gMDsgaSA8IEFSUkFZX1NJWkUoZGV2X3ByaXYtPnJlZ2lvbnMpOyArK2kpIHsKKwkJc3Ry dWN0IGludGVsX21lbW9yeV9yZWdpb24gKnJlZ2lvbiA9IGRldl9wcml2LT5yZWdpb25zW2ldOwor CisJCWlmICghcmVnaW9uKQorCQkJY29udGludWU7CisKKwkJaW5mby5pZCA9IHJlZ2lvbi0+aWQ7 CisJCWluZm8uc2l6ZSA9IHJlc291cmNlX3NpemUoJnJlZ2lvbi0+cmVnaW9uKTsKKworCQlpZiAo X19jb3B5X3RvX3VzZXIoaW5mb19wdHIsICZpbmZvLCBzaXplb2YoaW5mbykpKQorCQkJcmV0dXJu IC1FRkFVTFQ7CisKKwkJcXVlcnkubnVtX3JlZ2lvbnMrKzsKKwkJaW5mb19wdHIrKzsKKwl9CisK KwlpZiAoX19jb3B5X3RvX3VzZXIocXVlcnlfcHRyLCAmcXVlcnksIHNpemVvZihxdWVyeSkpKQor CQlyZXR1cm4gLUVGQVVMVDsKKworCXJldHVybiB0b3RhbF9sZW5ndGg7Cit9CisKIHN0YXRpYyBp bnQgKCogY29uc3QgaTkxNV9xdWVyeV9mdW5jc1tdKShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYsCiAJCQkJCXN0cnVjdCBkcm1faTkxNV9xdWVyeV9pdGVtICpxdWVyeV9pdGVtKSA9 IHsKIAlxdWVyeV90b3BvbG9neV9pbmZvLAogCXF1ZXJ5X2VuZ2luZV9pbmZvLAorCXF1ZXJ5X21l bXJlZ2lvbl9pbmZvLAogfTsKIAogaW50IGk5MTVfcXVlcnlfaW9jdGwoc3RydWN0IGRybV9kZXZp Y2UgKmRldiwgdm9pZCAqZGF0YSwgc3RydWN0IGRybV9maWxlICpmaWxlKQpkaWZmIC0tZ2l0IGEv aW5jbHVkZS91YXBpL2RybS9pOTE1X2RybS5oIGIvaW5jbHVkZS91YXBpL2RybS9pOTE1X2RybS5o CmluZGV4IDVjZjk3NmU3NjA4YS4uOWI3N2Q4YWY5ODc3IDEwMDY0NAotLS0gYS9pbmNsdWRlL3Vh cGkvZHJtL2k5MTVfZHJtLmgKKysrIGIvaW5jbHVkZS91YXBpL2RybS9pOTE1X2RybS5oCkBAIC0y MDQxLDYgKzIwNDEsNyBAQCBzdHJ1Y3QgZHJtX2k5MTVfcXVlcnlfaXRlbSB7CiAJX191NjQgcXVl cnlfaWQ7CiAjZGVmaW5lIERSTV9JOTE1X1FVRVJZX1RPUE9MT0dZX0lORk8gICAgMQogI2RlZmlu ZSBEUk1fSTkxNV9RVUVSWV9FTkdJTkVfSU5GTwkyCisjZGVmaW5lIERSTV9JOTE1X1FVRVJZX01F TVJFR0lPTl9JTkZPICAgMwogLyogTXVzdCBiZSBrZXB0IGNvbXBhY3QgLS0gbm8gaG9sZXMgYW5k IHdlbGwgZG9jdW1lbnRlZCAqLwogCiAJLyoKQEAgLTIxODAsNiArMjE4MSw0NCBAQCBzdHJ1Y3Qg ZHJtX2k5MTVfcXVlcnlfZW5naW5lX2luZm8gewogCXN0cnVjdCBkcm1faTkxNV9lbmdpbmVfaW5m byBlbmdpbmVzW107CiB9OwogCitzdHJ1Y3QgZHJtX2k5MTVfbWVtb3J5X3JlZ2lvbl9pbmZvIHsK KworCS8qKiBCYXNlIHR5cGUgb2YgYSByZWdpb24KKwkgKi8KKyNkZWZpbmUgSTkxNV9TWVNURU1f TUVNT1JZICAgICAgICAgMAorI2RlZmluZSBJOTE1X0RFVklDRV9NRU1PUlkgICAgICAgICAxCisK KwkvKiogVGhlIHJlZ2lvbiBpZCBpcyBlbmNvZGVkIGluIGEgbGF5b3V0IHdoaWNoIG1ha2VzIGl0 IHBvc3NpYmxlIHRvCisJICogIHJldHJpZXZlIHRoZSBmb2xsb3dpbmcgaW5mb3JtYXRpb246CisJ ICoKKwkgKiAgQmFzZSB0eXBlOiBsb2cyKElEID4+IDE2KQorCSAqICBJbnN0YW5jZTogIGxvZzIo SUQgJiAweGZmZmYpCisJICovCisJX191MzIgaWQ7CisKKwkvKiogUmVzZXJ2ZWQgZmllbGQuIE1C WiAqLworCV9fdTMyIHJzdmQwOworCisJLyoqIFVudXNlZCBmb3Igbm93LiBNQlogKi8KKwlfX3U2 NCBmbGFnczsKKworCV9fdTY0IHNpemU7CisKKwkvKiogUmVzZXJ2ZWQgZmllbGRzIG11c3QgYmUg Y2xlYXJlZCB0byB6ZXJvLiAqLworCV9fdTY0IHJzdmQxWzRdOworfTsKKworc3RydWN0IGRybV9p OTE1X3F1ZXJ5X21lbW9yeV9yZWdpb25faW5mbyB7CisKKwkvKiogTnVtYmVyIG9mIHN0cnVjdCBk cm1faTkxNV9tZW1vcnlfcmVnaW9uX2luZm8gc3RydWN0cyAqLworCV9fdTMyIG51bV9yZWdpb25z OworCisJLyoqIE1CWiAqLworCV9fdTMyIHJzdmRbM107CisKKwlzdHJ1Y3QgZHJtX2k5MTVfbWVt b3J5X3JlZ2lvbl9pbmZvIHJlZ2lvbnNbXTsKK307CisKICNpZiBkZWZpbmVkKF9fY3BsdXNwbHVz KQogfQogI2VuZGlmCi0tIAoyLjIwLjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZy ZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL2ludGVsLWdmeA==