From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [PATCH 05/41] drm/i915: Move fence cancellation to runtime suspend Date: Thu, 20 Oct 2016 16:03:47 +0100 Message-ID: <20161020150423.4560-6-chris@chris-wilson.co.uk> References: <20161020150423.4560-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-lf0-x244.google.com (mail-lf0-x244.google.com [IPv6:2a00:1450:4010:c07::244]) by gabe.freedesktop.org (Postfix) with ESMTPS id D66466EB8B for ; Thu, 20 Oct 2016 15:04:36 +0000 (UTC) Received: by mail-lf0-x244.google.com with SMTP id x79so460660lff.2 for ; Thu, 20 Oct 2016 08:04:36 -0700 (PDT) In-Reply-To: <20161020150423.4560-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: Daniel Vetter List-Id: intel-gfx@lists.freedesktop.org QXQgdGhlIG1vbWVudCwgd2UgaGF2ZSBkZXBlbmRlbmN5IG9uIHRoZSBSUE0gYXMgYSBiYXJyaWVy IGl0c2VsZiBpbiBib3RoCmk5MTVfZ2VtX3JlbGVhc2VfYWxsX21tYXBzKCkgYW5kIGk5MTVfZ2Vt X3Jlc3RvcmVfZmVuY2VzKCkuCmk5MTVfZ2VtX3Jlc3RvcmVfZmVuY2VzKCkgaXMgYWxzbyBjYWxs ZWQgYWxvbmcgIXJ1bnRpbWUgcG0gcGF0aHMsIGJ1dCB3ZQpjYW4gbW92ZSB0aGUgbWFya3VwIG9m IGxvc3QgZmVuY2VzIGFsb25nc2lkZSByZWxlYXNpbmcgdGhlIG1tYXBzIGludG8gYQpjb21tb24g aTkxNV9nZW1fcnVudGltZV9zdXNwZW5kKCkuIFRoaXMgaGFzIHRoZSBhZHZhbnRhZ2Ugb2YgbG9j YXRpbmcKYWxsIHRoZSB0cmlja3kgYmFycmllciBkZXBlbmRlbmNpZXMgaW50byBvbmUgbG9jYXRp b24uCgpTdWdnZXN0ZWQtYnk6IERhbmllbCBWZXR0ZXIgPGRhbmllbC52ZXR0ZXJAZmZ3bGwuY2g+ ClNpZ25lZC1vZmYtYnk6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgpD YzogRGFuaWVsIFZldHRlciA8ZGFuaWVsLnZldHRlckBmZndsbC5jaD4KLS0tCiBkcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2Rydi5jICAgICAgIHwgIDYgKystLS0tCiBkcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2Rydi5oICAgICAgIHwgIDMgKystCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2dlbS5jICAgICAgIHwgMjUgKysrKysrKysrKysrKysrKysrKysrKystLQogZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9nZW1fZmVuY2UuYyB8IDEyICsrKysrLS0tLS0tLQogNCBmaWxlcyBjaGFu Z2VkLCAzMiBpbnNlcnRpb25zKCspLCAxNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9k cnYuYwppbmRleCA4ODVkMzNmMzQxZjMuLjk5ZTRlMDQ0ZTk1OCAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2Rydi5jCkBAIC0yMjc4LDEwICsyMjc4LDggQEAgc3RhdGljIGludCB2bHZfcmVzdW1lX3ByZXBh cmUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogCiAJdmx2X2NoZWNrX25vX2d0 X2FjY2VzcyhkZXZfcHJpdik7CiAKLQlpZiAocnBtX3Jlc3VtZSkgeworCWlmIChycG1fcmVzdW1l KQogCQlpbnRlbF9pbml0X2Nsb2NrX2dhdGluZyhkZXYpOwotCQlpOTE1X2dlbV9yZXN0b3JlX2Zl bmNlcyhkZXYpOwotCX0KIAogCXJldHVybiByZXQ7CiB9CkBAIC0yMzA3LDcgKzIzMDUsNyBAQCBz dGF0aWMgaW50IGludGVsX3J1bnRpbWVfc3VzcGVuZChzdHJ1Y3QgZGV2aWNlICprZGV2KQogCSAq IFdlIGFyZSBzYWZlIGhlcmUgYWdhaW5zdCByZS1mYXVsdHMsIHNpbmNlIHRoZSBmYXVsdCBoYW5k bGVyIHRha2VzCiAJICogYW4gUlBNIHJlZmVyZW5jZS4KIAkgKi8KLQlpOTE1X2dlbV9yZWxlYXNl X2FsbF9tbWFwcyhkZXZfcHJpdik7CisJaTkxNV9nZW1fcnVudGltZV9zdXNwZW5kKGRldl9wcml2 KTsKIAogCWludGVsX2d1Y19zdXNwZW5kKGRldik7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCmlu ZGV4IGMzODgzNjFhZDcxNy4uOTQzNDczNDE3NmEzIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgK QEAgLTMxMzAsOSArMzEzMCwxMCBAQCB2b2lkIGk5MTVfdm1hX2Rlc3Ryb3koc3RydWN0IGk5MTVf dm1hICp2bWEpOwogCiBpbnQgaTkxNV9nZW1fb2JqZWN0X3VuYmluZChzdHJ1Y3QgZHJtX2k5MTVf Z2VtX29iamVjdCAqb2JqKTsKIGludCBpOTE1X2dlbV9vYmplY3RfcHV0X3BhZ2VzKHN0cnVjdCBk cm1faTkxNV9nZW1fb2JqZWN0ICpvYmopOwotdm9pZCBpOTE1X2dlbV9yZWxlYXNlX2FsbF9tbWFw cyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwogdm9pZCBpOTE1X2dlbV9yZWxl YXNlX21tYXAoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaik7CiAKK3ZvaWQgaTkxNV9n ZW1fcnVudGltZV9zdXNwZW5kKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdik7CisK IGludCBfX211c3RfY2hlY2sgaTkxNV9nZW1fb2JqZWN0X2dldF9wYWdlcyhzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX29iamVjdCAqb2JqKTsKIAogc3RhdGljIGlubGluZSBpbnQgX19zZ19wYWdlX2NvdW50 KHN0cnVjdCBzY2F0dGVybGlzdCAqc2cpCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2dlbS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwppbmRleCA2NGE4 OGNlNGIzYzYuLjQxMDg4YzMxYWRhNiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9nZW0uYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCkBAIC0xOTUy LDEwICsxOTUyLDEwIEBAIGk5MTVfZ2VtX3JlbGVhc2VfbW1hcChzdHJ1Y3QgZHJtX2k5MTVfZ2Vt X29iamVjdCAqb2JqKQogCWludGVsX3J1bnRpbWVfcG1fcHV0KGk5MTUpOwogfQogCi12b2lkCi1p OTE1X2dlbV9yZWxlYXNlX2FsbF9tbWFwcyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3By aXYpCit2b2lkIGk5MTVfZ2VtX3J1bnRpbWVfc3VzcGVuZChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYpCiB7CiAJc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiwgKm9uOwor CWludCBpOwogCiAJLyoKIAkgKiBPbmx5IGNhbGxlZCBkdXJpbmcgUlBNIHN1c3BlbmQuIEFsbCB1 c2VycyBvZiB0aGUgdXNlcmZhdWx0X2xpc3QKQEAgLTE5NzAsNiArMTk3MCwyNyBAQCBpOTE1X2dl bV9yZWxlYXNlX2FsbF9tbWFwcyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiAJ CWRybV92bWFfbm9kZV91bm1hcCgmb2JqLT5iYXNlLnZtYV9ub2RlLAogCQkJCSAgIG9iai0+YmFz ZS5kZXYtPmFub25faW5vZGUtPmlfbWFwcGluZyk7CiAJfQorCisJLyogVGhlIGZlbmNlIHdpbGwg YmUgbG9zdCB3aGVuIHRoZSBkZXZpY2UgcG93ZXJzIGRvd24uIElmIGFueSB3ZXJlCisJICogaW4g dXNlIGJ5IGhhcmR3YXJlIChpLmUuIHRoZXkgYXJlIHBpbm5lZCksIHdlIHNob3VsZCBub3QgYmUg cG93ZXJpbmcKKwkgKiBkb3duISBBbGwgb3RoZXIgZmVuY2VzIHdpbGwgYmUgcmVhY3F1aXJlZCBi eSB0aGUgdXNlciB1cG9uIHdha2luZy4KKwkgKi8KKwlmb3IgKGkgPSAwOyBpIDwgZGV2X3ByaXYt Pm51bV9mZW5jZV9yZWdzOyBpKyspIHsKKwkJc3RydWN0IGRybV9pOTE1X2ZlbmNlX3JlZyAqcmVn ID0gJmRldl9wcml2LT5mZW5jZV9yZWdzW2ldOworCQlzdHJ1Y3QgaTkxNV92bWEgKnZtYTsKKwor CQlpZiAoV0FSTl9PTihyZWctPnBpbl9jb3VudCkpCisJCQljb250aW51ZTsKKworCQl2bWEgPSBm ZXRjaF9hbmRfemVybygmcmVnLT52bWEpOworCQlpZiAoIXZtYSkKKwkJCWNvbnRpbnVlOworCisJ CUdFTV9CVUdfT04oIWxpc3RfZW1wdHkoJnZtYS0+b2JqLT51c2VyZmF1bHRfbGluaykpOworCisJ CWxpc3RfbW92ZSgmcmVnLT5saW5rLCAmZGV2X3ByaXYtPm1tLmZlbmNlX2xpc3QpOworCQl2bWEt PmZlbmNlID0gTlVMTDsKKwl9CiB9CiAKIC8qKgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9nZW1fZmVuY2UuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2Zl bmNlLmMKaW5kZXggNjcwMTMxNzliOGVkLi4zYzVhODA4MmNhYzMgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2ZlbmNlLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9nZW1fZmVuY2UuYwpAQCAtMzQzLDYgKzM0Myw5IEBAIGk5MTVfdm1hX2dldF9mZW5j ZShzdHJ1Y3QgaTkxNV92bWEgKnZtYSkKIAlzdHJ1Y3QgZHJtX2k5MTVfZmVuY2VfcmVnICpmZW5j ZTsKIAlzdHJ1Y3QgaTkxNV92bWEgKnNldCA9IGk5MTVfZ2VtX29iamVjdF9pc190aWxlZCh2bWEt Pm9iaikgPyB2bWEgOiBOVUxMOwogCisJLyogTm90ZSB0aGF0IHdlIHJldm9rZSBmZW5jZXMgb24g cnVudGltZSBzdXNwZW5kLiBUaGVyZWZvcmUgdGhlIHVzZXIKKwkgKiBtdXN0IGtlZXAgdGhlIGRl dmljZSBhd2FrZSB3aGlsc3QgdXNpbmcgdGhlIGZlbmNlLgorCSAqLwogCWFzc2VydF9ycG1fd2Fr ZWxvY2tfaGVsZCh0b19pOTE1KHZtYS0+dm0tPmRldikpOwogCiAJLyogSnVzdCB1cGRhdGUgb3Vy IHBsYWNlIGluIHRoZSBMUlUgaWYgb3VyIGZlbmNlIGlzIGdldHRpbmcgcmV1c2VkLiAqLwpAQCAt MzY4LDE5ICszNzEsMTQgQEAgaTkxNV92bWFfZ2V0X2ZlbmNlKHN0cnVjdCBpOTE1X3ZtYSAqdm1h KQogICogQGRldjogRFJNIGRldmljZQogICoKICAqIFJlc3RvcmUgdGhlIGh3IGZlbmNlIHN0YXRl IHRvIG1hdGNoIHRoZSBzb2Z0d2FyZSB0cmFja2luZyBhZ2FpbiwgdG8gYmUgY2FsbGVkCi0gKiBh ZnRlciBhIGdwdSByZXNldCBhbmQgb24gcmVzdW1lLgorICogYWZ0ZXIgYSBncHUgcmVzZXQgYW5k IG9uIHJlc3VtZS4gTm90ZSB0aGF0IG9uIHJ1bnRpbWUgc3VzcGVuZCB3ZSBvbmx5IGNhbmNlbAor ICogdGhlIGZlbmNlcywgdG8gYmUgcmVhY3F1aXJlZCBieSB0aGUgdXNlciBsYXRlci4KICAqLwog dm9pZCBpOTE1X2dlbV9yZXN0b3JlX2ZlbmNlcyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogewog CXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZGV2KTsKIAlpbnQg aTsKIAotCS8qIE5vdGUgdGhhdCB0aGlzIG1heSBiZSBjYWxsZWQgb3V0c2lkZSBvZiBzdHJ1Y3Rf bXV0ZXgsIGJ5Ci0JICogcnVudGltZSBzdXNwZW5kL3Jlc3VtZS4gVGhlIGJhcnJpZXIgd2UgcmVx dWlyZSBpcyBlbmZvcmNlZCBieQotCSAqIHJwbSBpdHNlbGYgLSBhbGwgYWNjZXNzIHRvIGZlbmNl cy9HVFQgYXJlIG9ubHkgd2l0aGluIGFuIHJwbQotCSAqIHdha2VyZWYsIGFuZCB0byBhY3F1aXJl IHRoYXQgd2FrZXJlZiB5b3UgbXVzdCBwYXNzIHRocm91Z2ggaGVyZS4KLQkgKi8KLQogCWZvciAo aSA9IDA7IGkgPCBkZXZfcHJpdi0+bnVtX2ZlbmNlX3JlZ3M7IGkrKykgewogCQlzdHJ1Y3QgZHJt X2k5MTVfZmVuY2VfcmVnICpyZWcgPSAmZGV2X3ByaXYtPmZlbmNlX3JlZ3NbaV07CiAJCXN0cnVj dCBpOTE1X3ZtYSAqdm1hID0gcmVnLT52bWE7Ci0tIAoyLjkuMwoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRl bC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3Jn L21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==