From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [PATCH 13/38] drm/i915: Markup GEM API with lockdep asserts Date: Tue, 20 Sep 2016 09:29:47 +0100 Message-ID: <20160920083012.2754-14-chris@chris-wilson.co.uk> References: <20160920083012.2754-1-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-x241.google.com (mail-wm0-x241.google.com [IPv6:2a00:1450:400c:c09::241]) by gabe.freedesktop.org (Postfix) with ESMTPS id BA9806E686 for ; Tue, 20 Sep 2016 08:30:34 +0000 (UTC) Received: by mail-wm0-x241.google.com with SMTP id 133so2071249wmq.2 for ; Tue, 20 Sep 2016 01:30:34 -0700 (PDT) In-Reply-To: <20160920083012.2754-1-chris@chris-wilson.co.uk> 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: mika.kuoppala@intel.com List-Id: intel-gfx@lists.freedesktop.org QWRkIGxvY2tkZXBfYXNzZXJ0X2hlbGQoc3RydWN0X211dGV4KSB0byB0aGUgQVBJIHByZWFtYmxl IG9mIHRoZQppbnRlcm5hbCBHRU0gaW50ZXJmYWNlcy4KClNpZ25lZC1vZmYtYnk6IENocmlzIFdp bHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZ2VtLmMgICAgICAgICAgICAgIHwgMjAgKysrKysrKysrKysrKysrKysrKysKIGRyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V2aWN0LmMgICAgICAgIHwgIDUgKysrKy0KIGRyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5jICAgICAgICAgIHwgIDIgKysKIGRyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZ2VtX3JlbmRlcl9zdGF0ZS5jIHwgIDIgKysKIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZ2VtX3JlcXVlc3QuYyAgICAgIHwgIDMgKysrCiA1IGZpbGVzIGNoYW5n ZWQsIDMxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0u YwppbmRleCBlODM3M2YyNjQ4NTguLjBkOGFlNmM1NGU1YSAxMDA2NDQKLS0tIGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9nZW0uYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dl bS5jCkBAIC0xMDQsNiArMTA0LDggQEAgaTkxNV9nZW1fd2FpdF9mb3JfZXJyb3Ioc3RydWN0IGk5 MTVfZ3B1X2Vycm9yICplcnJvcikKIHsKIAlpbnQgcmV0OwogCisJbWlnaHRfc2xlZXAoKTsKKwog CWlmICghaTkxNV9yZXNldF9pbl9wcm9ncmVzcyhlcnJvcikpCiAJCXJldHVybiAwOwogCkBAIC0y Mjk1LDYgKzIyOTcsOCBAQCBpOTE1X2dlbV9vYmplY3RfcHV0X3BhZ2VzKHN0cnVjdCBkcm1faTkx NV9nZW1fb2JqZWN0ICpvYmopCiB7CiAJY29uc3Qgc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3Rf b3BzICpvcHMgPSBvYmotPm9wczsKIAorCWxvY2tkZXBfYXNzZXJ0X2hlbGQoJm9iai0+YmFzZS5k ZXYtPnN0cnVjdF9tdXRleCk7CisKIAlpZiAob2JqLT5wYWdlcyA9PSBOVUxMKQogCQlyZXR1cm4g MDsKIApAQCAtMjQ2Niw2ICsyNDcwLDggQEAgaTkxNV9nZW1fb2JqZWN0X2dldF9wYWdlcyhzdHJ1 Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqKQogCWNvbnN0IHN0cnVjdCBkcm1faTkxNV9nZW1f b2JqZWN0X29wcyAqb3BzID0gb2JqLT5vcHM7CiAJaW50IHJldDsKIAorCWxvY2tkZXBfYXNzZXJ0 X2hlbGQoJm9iai0+YmFzZS5kZXYtPnN0cnVjdF9tdXRleCk7CisKIAlpZiAob2JqLT5wYWdlcykK IAkJcmV0dXJuIDA7CiAKQEAgLTI3NDUsNiArMjc1MSw4IEBAIHZvaWQgaTkxNV9nZW1fcmVzZXQo c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogewogCXN0cnVjdCBpbnRlbF9lbmdp bmVfY3MgKmVuZ2luZTsKIAorCWxvY2tkZXBfYXNzZXJ0X2hlbGQoJmRldl9wcml2LT5kcm0uc3Ry dWN0X211dGV4KTsKKwogCWk5MTVfZ2VtX3JldGlyZV9yZXF1ZXN0cyhkZXZfcHJpdik7CiAKIAlm b3JfZWFjaF9lbmdpbmUoZW5naW5lLCBkZXZfcHJpdikKQEAgLTI5NjcsNiArMjk3NSw4IEBAIGlu dCBpOTE1X3ZtYV91bmJpbmQoc3RydWN0IGk5MTVfdm1hICp2bWEpCiAJdW5zaWduZWQgbG9uZyBh Y3RpdmU7CiAJaW50IHJldDsKIAorCWxvY2tkZXBfYXNzZXJ0X2hlbGQoJm9iai0+YmFzZS5kZXYt PnN0cnVjdF9tdXRleCk7CisKIAkvKiBGaXJzdCB3YWl0IHVwb24gYW55IGFjdGl2aXR5IGFzIHJl dGlyaW5nIHRoZSByZXF1ZXN0IG1heQogCSAqIGhhdmUgc2lkZS1lZmZlY3RzIHN1Y2ggYXMgdW5w aW5uaW5nIG9yIGV2ZW4gdW5iaW5kaW5nIHRoaXMgdm1hLgogCSAqLwpAQCAtMzM1OSw2ICszMzY5 LDcgQEAgaTkxNV9nZW1fb2JqZWN0X3NldF90b19ndHRfZG9tYWluKHN0cnVjdCBkcm1faTkxNV9n ZW1fb2JqZWN0ICpvYmosIGJvb2wgd3JpdGUpCiAJaW50IHJldDsKIAogCWxvY2tkZXBfYXNzZXJ0 X2hlbGQoJm9iai0+YmFzZS5kZXYtPnN0cnVjdF9tdXRleCk7CisKIAlyZXQgPSBpOTE1X2dlbV9v YmplY3Rfd2FpdChvYmosCiAJCQkJICAgSTkxNV9XQUlUX0lOVEVSUlVQVElCTEUgfAogCQkJCSAg IEk5MTVfV0FJVF9MT0NLRUQgfApAQCAtMzQzNyw2ICszNDQ4LDggQEAgaW50IGk5MTVfZ2VtX29i amVjdF9zZXRfY2FjaGVfbGV2ZWwoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiwKIAlz dHJ1Y3QgaTkxNV92bWEgKnZtYTsKIAlpbnQgcmV0ID0gMDsKIAorCWxvY2tkZXBfYXNzZXJ0X2hl bGQoJm9iai0+YmFzZS5kZXYtPnN0cnVjdF9tdXRleCk7CisKIAlpZiAob2JqLT5jYWNoZV9sZXZl bCA9PSBjYWNoZV9sZXZlbCkKIAkJZ290byBvdXQ7CiAKQEAgLTM2NDcsNiArMzY2MCw4IEBAIGk5 MTVfZ2VtX29iamVjdF9waW5fdG9fZGlzcGxheV9wbGFuZShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29i amVjdCAqb2JqLAogCXUzMiBvbGRfcmVhZF9kb21haW5zLCBvbGRfd3JpdGVfZG9tYWluOwogCWlu dCByZXQ7CiAKKwlsb2NrZGVwX2Fzc2VydF9oZWxkKCZvYmotPmJhc2UuZGV2LT5zdHJ1Y3RfbXV0 ZXgpOworCiAJLyogTWFyayB0aGUgcGluX2Rpc3BsYXkgZWFybHkgc28gdGhhdCB3ZSBhY2NvdW50 IGZvciB0aGUKIAkgKiBkaXNwbGF5IGNvaGVyZW5jeSB3aGlsc3Qgc2V0dGluZyB1cCB0aGUgY2Fj aGUgZG9tYWlucy4KIAkgKi8KQEAgLTM3MTMsNiArMzcyOCw3IEBAIGVycl91bnBpbl9kaXNwbGF5 Ogogdm9pZAogaTkxNV9nZW1fb2JqZWN0X3VucGluX2Zyb21fZGlzcGxheV9wbGFuZShzdHJ1Y3Qg aTkxNV92bWEgKnZtYSkKIHsKKwlsb2NrZGVwX2Fzc2VydF9oZWxkKCZ2bWEtPnZtLT5kZXYtPnN0 cnVjdF9tdXRleCk7CiAJaWYgKFdBUk5fT04odm1hLT5vYmotPnBpbl9kaXNwbGF5ID09IDApKQog CQlyZXR1cm47CiAKQEAgLTM3NDIsNiArMzc1OCw3IEBAIGk5MTVfZ2VtX29iamVjdF9zZXRfdG9f Y3B1X2RvbWFpbihzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqLCBib29sIHdyaXRlKQog CWludCByZXQ7CiAKIAlsb2NrZGVwX2Fzc2VydF9oZWxkKCZvYmotPmJhc2UuZGV2LT5zdHJ1Y3Rf bXV0ZXgpOworCiAJcmV0ID0gaTkxNV9nZW1fb2JqZWN0X3dhaXQob2JqLAogCQkJCSAgIEk5MTVf V0FJVF9JTlRFUlJVUFRJQkxFIHwKIAkJCQkgICBJOTE1X1dBSVRfTE9DS0VEIHwKQEAgLTM4OTcs NiArMzkxNCw3IEBAIGludCBfX2k5MTVfdm1hX2RvX3BpbihzdHJ1Y3QgaTkxNV92bWEgKnZtYSwK IAl1bnNpZ25lZCBpbnQgYm91bmQgPSB2bWEtPmZsYWdzOwogCWludCByZXQ7CiAKKwlsb2NrZGVw X2Fzc2VydF9oZWxkKCZ2bWEtPnZtLT5kZXYtPnN0cnVjdF9tdXRleCk7CiAJR0VNX0JVR19PTigo ZmxhZ3MgJiAoUElOX0dMT0JBTCB8IFBJTl9VU0VSKSkgPT0gMCk7CiAJR0VNX0JVR19PTigoZmxh Z3MgJiBQSU5fR0xPQkFMKSAmJiAhaTkxNV92bWFfaXNfZ2d0dCh2bWEpKTsKIApAQCAtMzkzNyw2 ICszOTU1LDggQEAgaTkxNV9nZW1fb2JqZWN0X2dndHRfcGluKHN0cnVjdCBkcm1faTkxNV9nZW1f b2JqZWN0ICpvYmosCiAJc3RydWN0IGk5MTVfdm1hICp2bWE7CiAJaW50IHJldDsKIAorCWxvY2tk ZXBfYXNzZXJ0X2hlbGQoJm9iai0+YmFzZS5kZXYtPnN0cnVjdF9tdXRleCk7CisKIAl2bWEgPSBp OTE1X2dlbV9vYmpfbG9va3VwX29yX2NyZWF0ZV92bWEob2JqLCB2bSwgdmlldyk7CiAJaWYgKElT X0VSUih2bWEpKQogCQlyZXR1cm4gdm1hOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9nZW1fZXZpY3QuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V2aWN0 LmMKaW5kZXggNWI2ZjgxYzFkYmNhLi42MWY3MTZjODc2OGMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V2aWN0LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9nZW1fZXZpY3QuYwpAQCAtMTAyLDYgKzEwMiw3IEBAIGk5MTVfZ2VtX2V2aWN0X3NvbWV0 aGluZyhzdHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNlICp2bSwKIAlzdHJ1Y3QgaTkxNV92bWEgKnZt YSwgKm5leHQ7CiAJaW50IHJldDsKIAorCWxvY2tkZXBfYXNzZXJ0X2hlbGQoJnZtLT5kZXYtPnN0 cnVjdF9tdXRleCk7CiAJdHJhY2VfaTkxNV9nZW1fZXZpY3Qodm0sIG1pbl9zaXplLCBhbGlnbm1l bnQsIGZsYWdzKTsKIAogCS8qCkBAIC0yMTIsNiArMjEzLDggQEAgaTkxNV9nZW1fZXZpY3RfZm9y X3ZtYShzdHJ1Y3QgaTkxNV92bWEgKnRhcmdldCkKIHsKIAlzdHJ1Y3QgZHJtX21tX25vZGUgKm5v ZGUsICpuZXh0OwogCisJbG9ja2RlcF9hc3NlcnRfaGVsZCgmdGFyZ2V0LT52bS0+ZGV2LT5zdHJ1 Y3RfbXV0ZXgpOworCiAJbGlzdF9mb3JfZWFjaF9lbnRyeV9zYWZlKG5vZGUsIG5leHQsCiAJCQkm dGFyZ2V0LT52bS0+bW0uaGVhZF9ub2RlLm5vZGVfbGlzdCwKIAkJCW5vZGVfbGlzdCkgewpAQCAt MjY1LDcgKzI2OCw3IEBAIGludCBpOTE1X2dlbV9ldmljdF92bShzdHJ1Y3QgaTkxNV9hZGRyZXNz X3NwYWNlICp2bSwgYm9vbCBkb19pZGxlKQogCXN0cnVjdCBpOTE1X3ZtYSAqdm1hLCAqbmV4dDsK IAlpbnQgcmV0OwogCi0JV0FSTl9PTighbXV0ZXhfaXNfbG9ja2VkKCZ2bS0+ZGV2LT5zdHJ1Y3Rf bXV0ZXgpKTsKKwlsb2NrZGVwX2Fzc2VydF9oZWxkKCZ2bS0+ZGV2LT5zdHJ1Y3RfbXV0ZXgpOwog CXRyYWNlX2k5MTVfZ2VtX2V2aWN0X3ZtKHZtKTsKIAogCWlmIChkb19pZGxlKSB7CmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtX2d0dC5jCmluZGV4IGVkM2NkNzE0ZGQyMS4uNTgxZTc3MWMwOTk2IDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYworKysgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYwpAQCAtMzQyNyw2ICszNDI3LDcgQEAgaTkx NV92bWFfY3JlYXRlKHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmosCiAJCXN0cnVjdCBp OTE1X2FkZHJlc3Nfc3BhY2UgKnZtLAogCQljb25zdCBzdHJ1Y3QgaTkxNV9nZ3R0X3ZpZXcgKnZp ZXcpCiB7CisJbG9ja2RlcF9hc3NlcnRfaGVsZCgmb2JqLT5iYXNlLmRldi0+c3RydWN0X211dGV4 KTsKIAlHRU1fQlVHX09OKHZpZXcgJiYgIWk5MTVfaXNfZ2d0dCh2bSkpOwogCUdFTV9CVUdfT04o aTkxNV9nZW1fb2JqX3RvX3ZtYShvYmosIHZtLCB2aWV3KSk7CiAKQEAgLTM0NTQsNiArMzQ1NSw3 IEBAIGk5MTVfZ2VtX29ial9sb29rdXBfb3JfY3JlYXRlX3ZtYShzdHJ1Y3QgZHJtX2k5MTVfZ2Vt X29iamVjdCAqb2JqLAogewogCXN0cnVjdCBpOTE1X3ZtYSAqdm1hOwogCisJbG9ja2RlcF9hc3Nl cnRfaGVsZCgmb2JqLT5iYXNlLmRldi0+c3RydWN0X211dGV4KTsKIAlHRU1fQlVHX09OKHZpZXcg JiYgIWk5MTVfaXNfZ2d0dCh2bSkpOwogCiAJdm1hID0gaTkxNV9nZW1fb2JqX3RvX3ZtYShvYmos IHZtLCB2aWV3KTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3Jl bmRlcl9zdGF0ZS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fcmVuZGVyX3N0YXRl LmMKaW5kZXggMzFiNzUxMzJmNmY4Li45MTcxZmMwYTkwOGUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZ2VtX3JlbmRlcl9zdGF0ZS5jCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtX3JlbmRlcl9zdGF0ZS5jCkBAIC0yMjMsNiArMjIzLDggQEAgaW50IGk5 MTVfZ2VtX3JlbmRlcl9zdGF0ZV9lbWl0KHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVx KQogCXN0cnVjdCBpbnRlbF9yZW5kZXJfc3RhdGUgKnNvOwogCWludCByZXQ7CiAKKwlsb2NrZGVw X2Fzc2VydF9oZWxkKCZyZXEtPmk5MTUtPmRybS5zdHJ1Y3RfbXV0ZXgpOworCiAJc28gPSByZXEt PmVuZ2luZS0+cmVuZGVyX3N0YXRlOwogCWlmICghc28pCiAJCXJldHVybiAwOwpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fcmVxdWVzdC5jIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9nZW1fcmVxdWVzdC5jCmluZGV4IDY4NzUzN2Q5MWJlOC4uZTQ0YTRkNGZm YjllIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9yZXF1ZXN0LmMK KysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fcmVxdWVzdC5jCkBAIC0yNjcsNiAr MjY3LDggQEAgaW50IGk5MTVfZ2VtX3NldF9zZXFubyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB1 MzIgc2Vxbm8pCiAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShk ZXYpOwogCWludCByZXQ7CiAKKwlsb2NrZGVwX2Fzc2VydF9oZWxkKCZkZXZfcHJpdi0+ZHJtLnN0 cnVjdF9tdXRleCk7CisKIAlpZiAoc2Vxbm8gPT0gMCkKIAkJcmV0dXJuIC1FSU5WQUw7CiAKQEAg LTYwMiw2ICs2MDQsNyBAQCB2b2lkIF9faTkxNV9hZGRfcmVxdWVzdChzdHJ1Y3QgZHJtX2k5MTVf Z2VtX3JlcXVlc3QgKnJlcXVlc3QsIGJvb2wgZmx1c2hfY2FjaGVzKQogCXUzMiByZXNlcnZlZF90 YWlsOwogCWludCByZXQ7CiAKKwlsb2NrZGVwX2Fzc2VydF9oZWxkKCZyZXF1ZXN0LT5pOTE1LT5k cm0uc3RydWN0X211dGV4KTsKIAl0cmFjZV9pOTE1X2dlbV9yZXF1ZXN0X2FkZChyZXF1ZXN0KTsK IAogCS8qCi0tIAoyLjkuMwoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0 b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50 ZWwtZ2Z4Cg==