From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [PATCH 13/42] drm/i915: Markup GEM API with lockdep asserts Date: Fri, 7 Oct 2016 10:46:06 +0100 Message-ID: <20161007094635.28319-14-chris@chris-wilson.co.uk> References: <20161007094635.28319-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 DDB726EB38 for ; Fri, 7 Oct 2016 09:46:56 +0000 (UTC) Received: by mail-wm0-x241.google.com with SMTP id 123so2084197wmb.3 for ; Fri, 07 Oct 2016 02:46:56 -0700 (PDT) In-Reply-To: <20161007094635.28319-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 List-Id: intel-gfx@lists.freedesktop.org QWRkIGxvY2tkZXBfYXNzZXJ0X2hlbGQoc3RydWN0X211dGV4KSB0byB0aGUgQVBJIHByZWFtYmxl IG9mIHRoZQppbnRlcm5hbCBHRU0gaW50ZXJmYWNlcy4KClNpZ25lZC1vZmYtYnk6IENocmlzIFdp bHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgpSZXZpZXdlZC1ieTogSm9vbmFzIExhaHRp bmVuIDxqb29uYXMubGFodGluZW5AbGludXguaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtLmMgICAgICAgICAgICAgIHwgMjEgKysrKysrKysrKysrKysrKysrKysr CiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ldmljdC5jICAgICAgICB8ICA1ICsrKyst CiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYyAgICAgICAgICB8ICAyICsrCiBk cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9yZW5kZXJfc3RhdGUuYyB8ICAyICsrCiBkcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9yZXF1ZXN0LmMgICAgICB8ICA2ICsrKysrKwogNSBm aWxlcyBjaGFuZ2VkLCAzNSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZ2VtLmMKaW5kZXggYjU2MDI2M2JmNDQ2Li5hZGE4MzdlMzkzYTcgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9nZW0uYwpAQCAtMTA0LDYgKzEwNCw4IEBAIGk5MTVfZ2VtX3dhaXRfZm9yX2Vycm9y KHN0cnVjdCBpOTE1X2dwdV9lcnJvciAqZXJyb3IpCiB7CiAJaW50IHJldDsKIAorCW1pZ2h0X3Ns ZWVwKCk7CisKIAlpZiAoIWk5MTVfcmVzZXRfaW5fcHJvZ3Jlc3MoZXJyb3IpKQogCQlyZXR1cm4g MDsKIApAQCAtMjI5NSw2ICsyMjk3LDggQEAgaTkxNV9nZW1fb2JqZWN0X3B1dF9wYWdlcyhzdHJ1 Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqKQogewogCWNvbnN0IHN0cnVjdCBkcm1faTkxNV9n ZW1fb2JqZWN0X29wcyAqb3BzID0gb2JqLT5vcHM7CiAKKwlsb2NrZGVwX2Fzc2VydF9oZWxkKCZv YmotPmJhc2UuZGV2LT5zdHJ1Y3RfbXV0ZXgpOworCiAJaWYgKG9iai0+cGFnZXMgPT0gTlVMTCkK IAkJcmV0dXJuIDA7CiAKQEAgLTI0NjYsNiArMjQ3MCw4IEBAIGk5MTVfZ2VtX29iamVjdF9nZXRf cGFnZXMoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaikKIAljb25zdCBzdHJ1Y3QgZHJt X2k5MTVfZ2VtX29iamVjdF9vcHMgKm9wcyA9IG9iai0+b3BzOwogCWludCByZXQ7CiAKKwlsb2Nr ZGVwX2Fzc2VydF9oZWxkKCZvYmotPmJhc2UuZGV2LT5zdHJ1Y3RfbXV0ZXgpOworCiAJaWYgKG9i ai0+cGFnZXMpCiAJCXJldHVybiAwOwogCkBAIC0yNzQ2LDYgKzI3NTIsOCBAQCB2b2lkIGk5MTVf Z2VtX3Jlc2V0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIHsKIAlzdHJ1Y3Qg aW50ZWxfZW5naW5lX2NzICplbmdpbmU7CiAKKwlsb2NrZGVwX2Fzc2VydF9oZWxkKCZkZXZfcHJp di0+ZHJtLnN0cnVjdF9tdXRleCk7CisKIAlpOTE1X2dlbV9yZXRpcmVfcmVxdWVzdHMoZGV2X3By aXYpOwogCiAJZm9yX2VhY2hfZW5naW5lKGVuZ2luZSwgZGV2X3ByaXYpCkBAIC0yOTc0LDYgKzI5 ODIsOCBAQCBpbnQgaTkxNV92bWFfdW5iaW5kKHN0cnVjdCBpOTE1X3ZtYSAqdm1hKQogCXVuc2ln bmVkIGxvbmcgYWN0aXZlOwogCWludCByZXQ7CiAKKwlsb2NrZGVwX2Fzc2VydF9oZWxkKCZvYmot PmJhc2UuZGV2LT5zdHJ1Y3RfbXV0ZXgpOworCiAJLyogRmlyc3Qgd2FpdCB1cG9uIGFueSBhY3Rp dml0eSBhcyByZXRpcmluZyB0aGUgcmVxdWVzdCBtYXkKIAkgKiBoYXZlIHNpZGUtZWZmZWN0cyBz dWNoIGFzIHVucGlubmluZyBvciBldmVuIHVuYmluZGluZyB0aGlzIHZtYS4KIAkgKi8KQEAgLTMz NjYsNiArMzM3Niw3IEBAIGk5MTVfZ2VtX29iamVjdF9zZXRfdG9fZ3R0X2RvbWFpbihzdHJ1Y3Qg ZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqLCBib29sIHdyaXRlKQogCWludCByZXQ7CiAKIAlsb2Nr ZGVwX2Fzc2VydF9oZWxkKCZvYmotPmJhc2UuZGV2LT5zdHJ1Y3RfbXV0ZXgpOworCiAJcmV0ID0g aTkxNV9nZW1fb2JqZWN0X3dhaXQob2JqLAogCQkJCSAgIEk5MTVfV0FJVF9JTlRFUlJVUFRJQkxF IHwKIAkJCQkgICBJOTE1X1dBSVRfTE9DS0VEIHwKQEAgLTM0NDQsNiArMzQ1NSw4IEBAIGludCBp OTE1X2dlbV9vYmplY3Rfc2V0X2NhY2hlX2xldmVsKHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0 ICpvYmosCiAJc3RydWN0IGk5MTVfdm1hICp2bWE7CiAJaW50IHJldCA9IDA7CiAKKwlsb2NrZGVw X2Fzc2VydF9oZWxkKCZvYmotPmJhc2UuZGV2LT5zdHJ1Y3RfbXV0ZXgpOworCiAJaWYgKG9iai0+ Y2FjaGVfbGV2ZWwgPT0gY2FjaGVfbGV2ZWwpCiAJCWdvdG8gb3V0OwogCkBAIC0zNjU0LDYgKzM2 NjcsOCBAQCBpOTE1X2dlbV9vYmplY3RfcGluX3RvX2Rpc3BsYXlfcGxhbmUoc3RydWN0IGRybV9p OTE1X2dlbV9vYmplY3QgKm9iaiwKIAl1MzIgb2xkX3JlYWRfZG9tYWlucywgb2xkX3dyaXRlX2Rv bWFpbjsKIAlpbnQgcmV0OwogCisJbG9ja2RlcF9hc3NlcnRfaGVsZCgmb2JqLT5iYXNlLmRldi0+ c3RydWN0X211dGV4KTsKKwogCS8qIE1hcmsgdGhlIHBpbl9kaXNwbGF5IGVhcmx5IHNvIHRoYXQg d2UgYWNjb3VudCBmb3IgdGhlCiAJICogZGlzcGxheSBjb2hlcmVuY3kgd2hpbHN0IHNldHRpbmcg dXAgdGhlIGNhY2hlIGRvbWFpbnMuCiAJICovCkBAIC0zNzIwLDYgKzM3MzUsOCBAQCBlcnJfdW5w aW5fZGlzcGxheToKIHZvaWQKIGk5MTVfZ2VtX29iamVjdF91bnBpbl9mcm9tX2Rpc3BsYXlfcGxh bmUoc3RydWN0IGk5MTVfdm1hICp2bWEpCiB7CisJbG9ja2RlcF9hc3NlcnRfaGVsZCgmdm1hLT52 bS0+ZGV2LT5zdHJ1Y3RfbXV0ZXgpOworCiAJaWYgKFdBUk5fT04odm1hLT5vYmotPnBpbl9kaXNw bGF5ID09IDApKQogCQlyZXR1cm47CiAKQEAgLTM3NDksNiArMzc2Niw3IEBAIGk5MTVfZ2VtX29i amVjdF9zZXRfdG9fY3B1X2RvbWFpbihzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqLCBi b29sIHdyaXRlKQogCWludCByZXQ7CiAKIAlsb2NrZGVwX2Fzc2VydF9oZWxkKCZvYmotPmJhc2Uu ZGV2LT5zdHJ1Y3RfbXV0ZXgpOworCiAJcmV0ID0gaTkxNV9nZW1fb2JqZWN0X3dhaXQob2JqLAog CQkJCSAgIEk5MTVfV0FJVF9JTlRFUlJVUFRJQkxFIHwKIAkJCQkgICBJOTE1X1dBSVRfTE9DS0VE IHwKQEAgLTM5MDQsNiArMzkyMiw3IEBAIGludCBfX2k5MTVfdm1hX2RvX3BpbihzdHJ1Y3QgaTkx NV92bWEgKnZtYSwKIAl1bnNpZ25lZCBpbnQgYm91bmQgPSB2bWEtPmZsYWdzOwogCWludCByZXQ7 CiAKKwlsb2NrZGVwX2Fzc2VydF9oZWxkKCZ2bWEtPnZtLT5kZXYtPnN0cnVjdF9tdXRleCk7CiAJ R0VNX0JVR19PTigoZmxhZ3MgJiAoUElOX0dMT0JBTCB8IFBJTl9VU0VSKSkgPT0gMCk7CiAJR0VN X0JVR19PTigoZmxhZ3MgJiBQSU5fR0xPQkFMKSAmJiAhaTkxNV92bWFfaXNfZ2d0dCh2bWEpKTsK IApAQCAtMzk0NCw2ICszOTYzLDggQEAgaTkxNV9nZW1fb2JqZWN0X2dndHRfcGluKHN0cnVjdCBk cm1faTkxNV9nZW1fb2JqZWN0ICpvYmosCiAJc3RydWN0IGk5MTVfdm1hICp2bWE7CiAJaW50IHJl dDsKIAorCWxvY2tkZXBfYXNzZXJ0X2hlbGQoJm9iai0+YmFzZS5kZXYtPnN0cnVjdF9tdXRleCk7 CisKIAl2bWEgPSBpOTE1X2dlbV9vYmpfbG9va3VwX29yX2NyZWF0ZV92bWEob2JqLCB2bSwgdmll dyk7CiAJaWYgKElTX0VSUih2bWEpKQogCQlyZXR1cm4gdm1hOwpkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZXZpY3QuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZ2VtX2V2aWN0LmMKaW5kZXggNWI2ZjgxYzFkYmNhLi42MWY3MTZjODc2OGMgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V2aWN0LmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9nZW1fZXZpY3QuYwpAQCAtMTAyLDYgKzEwMiw3IEBAIGk5MTVfZ2Vt X2V2aWN0X3NvbWV0aGluZyhzdHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNlICp2bSwKIAlzdHJ1Y3Qg aTkxNV92bWEgKnZtYSwgKm5leHQ7CiAJaW50IHJldDsKIAorCWxvY2tkZXBfYXNzZXJ0X2hlbGQo JnZtLT5kZXYtPnN0cnVjdF9tdXRleCk7CiAJdHJhY2VfaTkxNV9nZW1fZXZpY3Qodm0sIG1pbl9z aXplLCBhbGlnbm1lbnQsIGZsYWdzKTsKIAogCS8qCkBAIC0yMTIsNiArMjEzLDggQEAgaTkxNV9n ZW1fZXZpY3RfZm9yX3ZtYShzdHJ1Y3QgaTkxNV92bWEgKnRhcmdldCkKIHsKIAlzdHJ1Y3QgZHJt X21tX25vZGUgKm5vZGUsICpuZXh0OwogCisJbG9ja2RlcF9hc3NlcnRfaGVsZCgmdGFyZ2V0LT52 bS0+ZGV2LT5zdHJ1Y3RfbXV0ZXgpOworCiAJbGlzdF9mb3JfZWFjaF9lbnRyeV9zYWZlKG5vZGUs IG5leHQsCiAJCQkmdGFyZ2V0LT52bS0+bW0uaGVhZF9ub2RlLm5vZGVfbGlzdCwKIAkJCW5vZGVf bGlzdCkgewpAQCAtMjY1LDcgKzI2OCw3IEBAIGludCBpOTE1X2dlbV9ldmljdF92bShzdHJ1Y3Qg aTkxNV9hZGRyZXNzX3NwYWNlICp2bSwgYm9vbCBkb19pZGxlKQogCXN0cnVjdCBpOTE1X3ZtYSAq dm1hLCAqbmV4dDsKIAlpbnQgcmV0OwogCi0JV0FSTl9PTighbXV0ZXhfaXNfbG9ja2VkKCZ2bS0+ ZGV2LT5zdHJ1Y3RfbXV0ZXgpKTsKKwlsb2NrZGVwX2Fzc2VydF9oZWxkKCZ2bS0+ZGV2LT5zdHJ1 Y3RfbXV0ZXgpOwogCXRyYWNlX2k5MTVfZ2VtX2V2aWN0X3ZtKHZtKTsKIAogCWlmIChkb19pZGxl KSB7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5jCmluZGV4IDFjOTVkYTg0MjRjYi4uNzhi NjkyZTViOTk4IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQu YworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYwpAQCAtMzQyNyw2ICsz NDI3LDcgQEAgaTkxNV92bWFfY3JlYXRlKHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmos CiAJCXN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZtLAogCQljb25zdCBzdHJ1Y3QgaTkxNV9n Z3R0X3ZpZXcgKnZpZXcpCiB7CisJbG9ja2RlcF9hc3NlcnRfaGVsZCgmb2JqLT5iYXNlLmRldi0+ c3RydWN0X211dGV4KTsKIAlHRU1fQlVHX09OKHZpZXcgJiYgIWk5MTVfaXNfZ2d0dCh2bSkpOwog CUdFTV9CVUdfT04oaTkxNV9nZW1fb2JqX3RvX3ZtYShvYmosIHZtLCB2aWV3KSk7CiAKQEAgLTM0 NTQsNiArMzQ1NSw3IEBAIGk5MTVfZ2VtX29ial9sb29rdXBfb3JfY3JlYXRlX3ZtYShzdHJ1Y3Qg ZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqLAogewogCXN0cnVjdCBpOTE1X3ZtYSAqdm1hOwogCisJ bG9ja2RlcF9hc3NlcnRfaGVsZCgmb2JqLT5iYXNlLmRldi0+c3RydWN0X211dGV4KTsKIAlHRU1f QlVHX09OKHZpZXcgJiYgIWk5MTVfaXNfZ2d0dCh2bSkpOwogCiAJdm1hID0gaTkxNV9nZW1fb2Jq X3RvX3ZtYShvYmosIHZtLCB2aWV3KTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZ2VtX3JlbmRlcl9zdGF0ZS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1f cmVuZGVyX3N0YXRlLmMKaW5kZXggZmMzNDIxYzU5OTA2Li5hZGIwMGM1MTI1YWQgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3JlbmRlcl9zdGF0ZS5jCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3JlbmRlcl9zdGF0ZS5jCkBAIC0yMjMsNiArMjIz LDggQEAgaW50IGk5MTVfZ2VtX3JlbmRlcl9zdGF0ZV9lbWl0KHN0cnVjdCBkcm1faTkxNV9nZW1f cmVxdWVzdCAqcmVxKQogCXN0cnVjdCBpbnRlbF9yZW5kZXJfc3RhdGUgKnNvOwogCWludCByZXQ7 CiAKKwlsb2NrZGVwX2Fzc2VydF9oZWxkKCZyZXEtPmk5MTUtPmRybS5zdHJ1Y3RfbXV0ZXgpOwor CiAJc28gPSByZXEtPmVuZ2luZS0+cmVuZGVyX3N0YXRlOwogCWlmICghc28pCiAJCXJldHVybiAw OwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fcmVxdWVzdC5jIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fcmVxdWVzdC5jCmluZGV4IDliMmFjMDgyZDVk YS4uNWFkOTkwYWRkMTRkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dl bV9yZXF1ZXN0LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fcmVxdWVzdC5j CkBAIC0xNDMsNiArMTQzLDkgQEAgc3RhdGljIHZvaWQgaTkxNV9nZW1fcmVxdWVzdF9yZXRpcmUo c3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXF1ZXN0KQogewogCXN0cnVjdCBpOTE1X2dl bV9hY3RpdmUgKmFjdGl2ZSwgKm5leHQ7CiAKKwlsb2NrZGVwX2Fzc2VydF9oZWxkKCZyZXF1ZXN0 LT5pOTE1LT5kcm0uc3RydWN0X211dGV4KTsKKwlHRU1fQlVHX09OKCFpOTE1X2dlbV9yZXF1ZXN0 X2NvbXBsZXRlZChyZXF1ZXN0KSk7CisKIAl0cmFjZV9pOTE1X2dlbV9yZXF1ZXN0X3JldGlyZShy ZXF1ZXN0KTsKIAlsaXN0X2RlbF9pbml0KCZyZXF1ZXN0LT5saW5rKTsKIApAQCAtMjY3LDYgKzI3 MCw4IEBAIGludCBpOTE1X2dlbV9zZXRfc2Vxbm8oc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdTMy IHNlcW5vKQogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZGV2 KTsKIAlpbnQgcmV0OwogCisJbG9ja2RlcF9hc3NlcnRfaGVsZCgmZGV2X3ByaXYtPmRybS5zdHJ1 Y3RfbXV0ZXgpOworCiAJaWYgKHNlcW5vID09IDApCiAJCXJldHVybiAtRUlOVkFMOwogCkBAIC02 MDMsNiArNjA4LDcgQEAgdm9pZCBfX2k5MTVfYWRkX3JlcXVlc3Qoc3RydWN0IGRybV9pOTE1X2dl bV9yZXF1ZXN0ICpyZXF1ZXN0LCBib29sIGZsdXNoX2NhY2hlcykKIAl1MzIgcmVzZXJ2ZWRfdGFp bDsKIAlpbnQgcmV0OwogCisJbG9ja2RlcF9hc3NlcnRfaGVsZCgmcmVxdWVzdC0+aTkxNS0+ZHJt LnN0cnVjdF9tdXRleCk7CiAJdHJhY2VfaTkxNV9nZW1fcmVxdWVzdF9hZGQocmVxdWVzdCk7CiAK IAkvKgotLSAKMi45LjMKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9w Lm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVs LWdmeAo=