From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [PATCH 2/3] drm/i915/execlists: Suppress preempting self Date: Wed, 23 Jan 2019 12:36:01 +0000 Message-ID: <20190123123602.21816-2-chris@chris-wilson.co.uk> References: <20190123123602.21816-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 fireflyinternet.com (mail.fireflyinternet.com [109.228.58.192]) by gabe.freedesktop.org (Postfix) with ESMTPS id 2C6CB6EF1E for ; Wed, 23 Jan 2019 12:36:21 +0000 (UTC) In-Reply-To: <20190123123602.21816-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 SW4gb3JkZXIgdG8gYXZvaWQgcHJlZW1wdGluZyBvdXJzZWx2ZXMsIHdlIGN1cnJlbnRseSByZWZ1 c2UgdG8gc2NoZWR1bGUKdGhlIHRhc2tsZXQgaWYgd2UgcmVzY2hlZHVsZSBhbiBpbmZsaWdodCBj b250ZXh0LiBIb3dldmVyLCB0aGlzIGdsb3NzZXMKb3ZlciBhIGZldyBpc3N1ZXMgc3VjaCBhcyB3 aGF0IGhhcHBlbnMgYWZ0ZXIgYSBDUyBjb21wbGV0aW9uIGV2ZW50IGFuZAp3ZSB0aGVuIHByZWVt cHQgdGhlIG5ld2x5IGV4ZWN1dGluZyBjb250ZXh0IHdpdGggaXRzZWxmLCBvciBpZiBzb21ldGhp bmcKZWxzZSBjYXVzZXMgYSB0YXNrbGV0X3NjaGVkdWxlIHRyaWdnZXJpbmcgdGhlIHNhbWUgZXZh bHVhdGlvbiB0bwpwcmVlbXB0IHRoZSBhY3RpdmUgY29udGV4dCB3aXRoIGl0c2VsZi4KClRvIGF2 b2lkIHRoZSBleHRyYSBjb21wbGljYXRpb25zLCBhZnRlciBkZWNpZGluZyB0aGF0IHdlIGhhdmUK cG90ZW50aWFsbHkgcXVldWVkIGEgcmVxdWVzdCB3aXRoIGhpZ2hlciBwcmlvcml0eSB0aGFuIHRo ZSBjdXJyZW50bHkKZXhlY3V0aW5nIHJlcXVlc3QsIGluc3BlY3QgdGhlIGhlYWQgb2YgdGhlIHF1 ZXVlIHRvIHNlZSBpZiBpdCBpcyBpbmRlZWQKaGlnaGVyIHByaW9yaXR5IGZyb20gYW5vdGhlciBj b250ZXh0LgoKUmVmZXJlbmNlczogYTJiZjkyZThjYzE2ICgiZHJtL2k5MTUvZXhlY2xpc3RzOiBB dm9pZCBraWNraW5nIHByaW9yaXR5IG9uIHRoZSBjdXJyZW50IGNvbnRleHQiKQpTaWduZWQtb2Zm LWJ5OiBDaHJpcyBXaWxzb24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51az4KQ2M6IFR2cnRrbyBV cnN1bGluIDx0dnJ0a28udXJzdWxpbkBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9zY2hlZHVsZXIuYyB8IDIwICsrKysrKy0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9scmMuYyAgICAgIHwgNjcgKysrKysrKysrKysrKysrKysrKysrKysrLS0tCiAyIGZpbGVz IGNoYW5nZWQsIDc2IGluc2VydGlvbnMoKyksIDExIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfc2NoZWR1bGVyLmMgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X3NjaGVkdWxlci5jCmluZGV4IDM0MGZhZWE2YzA4YS4uZmI1ZDk1MzQzMGU1IDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3NjaGVkdWxlci5jCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfc2NoZWR1bGVyLmMKQEAgLTIzOSw2ICsyMzksMTggQEAg c2NoZWRfbG9ja19lbmdpbmUoc3RydWN0IGk5MTVfc2NoZWRfbm9kZSAqbm9kZSwgc3RydWN0IGlu dGVsX2VuZ2luZV9jcyAqbG9ja2VkKQogCXJldHVybiBlbmdpbmU7CiB9CiAKK3N0YXRpYyBib29s IGluZmxpZ2h0KGNvbnN0IHN0cnVjdCBpOTE1X3JlcXVlc3QgKnJxLAorCQkgICAgIGNvbnN0IHN0 cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSkKK3sKKwljb25zdCBzdHJ1Y3QgaTkxNV9yZXF1 ZXN0ICphY3RpdmU7CisKKwlpZiAoIXJxLT5nbG9iYWxfc2Vxbm8pCisJCXJldHVybiBmYWxzZTsK KworCWFjdGl2ZSA9IHBvcnRfcmVxdWVzdChlbmdpbmUtPmV4ZWNsaXN0cy5wb3J0KTsKKwlyZXR1 cm4gYWN0aXZlLT5od19jb250ZXh0ID09IHJxLT5od19jb250ZXh0OworfQorCiBzdGF0aWMgdm9p ZCBfX2k5MTVfc2NoZWR1bGUoc3RydWN0IGk5MTVfcmVxdWVzdCAqcnEsCiAJCQkgICAgY29uc3Qg c3RydWN0IGk5MTVfc2NoZWRfYXR0ciAqYXR0cikKIHsKQEAgLTMyOCw2ICszNDAsNyBAQCBzdGF0 aWMgdm9pZCBfX2k5MTVfc2NoZWR1bGUoc3RydWN0IGk5MTVfcmVxdWVzdCAqcnEsCiAJCUlOSVRf TElTVF9IRUFEKCZkZXAtPmRmc19saW5rKTsKIAogCQllbmdpbmUgPSBzY2hlZF9sb2NrX2VuZ2lu ZShub2RlLCBlbmdpbmUpOworCQlsb2NrZGVwX2Fzc2VydF9oZWxkKCZlbmdpbmUtPnRpbWVsaW5l LmxvY2spOwogCiAJCS8qIFJlY2hlY2sgYWZ0ZXIgYWNxdWlyaW5nIHRoZSBlbmdpbmUtPnRpbWVs aW5lLmxvY2sgKi8KIAkJaWYgKHByaW8gPD0gbm9kZS0+YXR0ci5wcmlvcml0eSB8fCBub2RlX3Np Z25hbGVkKG5vZGUpKQpAQCAtMzU2LDE3ICszNjksMTYgQEAgc3RhdGljIHZvaWQgX19pOTE1X3Nj aGVkdWxlKHN0cnVjdCBpOTE1X3JlcXVlc3QgKnJxLAogCQlpZiAocHJpbyA8PSBlbmdpbmUtPmV4 ZWNsaXN0cy5xdWV1ZV9wcmlvcml0eSkKIAkJCWNvbnRpbnVlOwogCisJCWVuZ2luZS0+ZXhlY2xp c3RzLnF1ZXVlX3ByaW9yaXR5ID0gcHJpbzsKKwogCQkvKgogCQkgKiBJZiB3ZSBhcmUgYWxyZWFk eSB0aGUgY3VycmVudGx5IGV4ZWN1dGluZyBjb250ZXh0LCBkb24ndAogCQkgKiBib3RoZXIgZXZh bHVhdGluZyBpZiB3ZSBzaG91bGQgcHJlZW1wdCBvdXJzZWx2ZXMuCiAJCSAqLwotCQlpZiAobm9k ZV90b19yZXF1ZXN0KG5vZGUpLT5nbG9iYWxfc2Vxbm8gJiYKLQkJICAgIGk5MTVfc2Vxbm9fcGFz c2VkKHBvcnRfcmVxdWVzdChlbmdpbmUtPmV4ZWNsaXN0cy5wb3J0KS0+Z2xvYmFsX3NlcW5vLAot CQkJCSAgICAgIG5vZGVfdG9fcmVxdWVzdChub2RlKS0+Z2xvYmFsX3NlcW5vKSkKKwkJaWYgKGlu ZmxpZ2h0KG5vZGVfdG9fcmVxdWVzdChub2RlKSwgZW5naW5lKSkKIAkJCWNvbnRpbnVlOwogCiAJ CS8qIERlZmVyICh0YXNrbGV0KSBzdWJtaXNzaW9uIHVudGlsIGFmdGVyIGFsbCBvZiBvdXIgdXBk YXRlcy4gKi8KLQkJZW5naW5lLT5leGVjbGlzdHMucXVldWVfcHJpb3JpdHkgPSBwcmlvOwogCQl0 YXNrbGV0X2hpX3NjaGVkdWxlKCZlbmdpbmUtPmV4ZWNsaXN0cy50YXNrbGV0KTsKIAl9CiAKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfbHJjLmMKaW5kZXggOGFhOGE0ODYyNTQzLi5kOWQ3NDRmNmFiMmMgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2xyYy5jCkBAIC0xODIsMTIgKzE4Miw2NCBAQCBzdGF0aWMgaW5s aW5lIGludCBycV9wcmlvKGNvbnN0IHN0cnVjdCBpOTE1X3JlcXVlc3QgKnJxKQogfQogCiBzdGF0 aWMgaW5saW5lIGJvb2wgbmVlZF9wcmVlbXB0KGNvbnN0IHN0cnVjdCBpbnRlbF9lbmdpbmVfY3Mg KmVuZ2luZSwKLQkJCQljb25zdCBzdHJ1Y3QgaTkxNV9yZXF1ZXN0ICpsYXN0LAotCQkJCWludCBw cmlvKQorCQkJCWNvbnN0IHN0cnVjdCBpOTE1X3JlcXVlc3QgKnJxLAorCQkJCWludCBxX3ByaW8p CiB7Ci0JcmV0dXJuIChpbnRlbF9lbmdpbmVfaGFzX3ByZWVtcHRpb24oZW5naW5lKSAmJgotCQlf X2V4ZWNsaXN0c19uZWVkX3ByZWVtcHQocHJpbywgcnFfcHJpbyhsYXN0KSkgJiYKLQkJIWk5MTVf cmVxdWVzdF9jb21wbGV0ZWQobGFzdCkpOworCWNvbnN0IHN0cnVjdCBpbnRlbF9jb250ZXh0ICpj dHggPSBycS0+aHdfY29udGV4dDsKKwljb25zdCBpbnQgbGFzdF9wcmlvID0gcnFfcHJpbyhycSk7 CisJc3RydWN0IHJiX25vZGUgKnJiOworCWludCBpZHg7CisKKwlpZiAoIWludGVsX2VuZ2luZV9o YXNfcHJlZW1wdGlvbihlbmdpbmUpKQorCQlyZXR1cm4gZmFsc2U7CisKKwlpZiAoaTkxNV9yZXF1 ZXN0X2NvbXBsZXRlZChycSkpCisJCXJldHVybiBmYWxzZTsKKworCWlmICghX19leGVjbGlzdHNf bmVlZF9wcmVlbXB0KHFfcHJpbywgbGFzdF9wcmlvKSkKKwkJcmV0dXJuIGZhbHNlOworCisJLyoK KwkgKiBUaGUgcXVldWVfcHJpb3JpdHkgaXMgYSBtZXJlIGhpbnQgdGhhdCB3ZSBtYXkgbmVlZCB0 byBwcmVlbXB0LgorCSAqIElmIHRoYXQgaGludCBpcyBzdGFsZSBvciB3ZSBtYXkgYmUgdHJ5aW5n IHRvIHByZWVtcHQgb3Vyc2VsdmVzLAorCSAqIGlnbm9yZSB0aGUgcmVxdWVzdC4KKwkgKi8KKwor CWxpc3RfZm9yX2VhY2hfZW50cnlfY29udGludWUocnEsICZlbmdpbmUtPnRpbWVsaW5lLnJlcXVl c3RzLCBsaW5rKSB7CisJCUdFTV9CVUdfT04ocnEtPmh3X2NvbnRleHQgPT0gY3R4KTsKKwkJaWYg KHJxX3ByaW8ocnEpID4gbGFzdF9wcmlvKQorCQkJcmV0dXJuIHRydWU7CisJfQorCisJcmIgPSBy Yl9maXJzdF9jYWNoZWQoJmVuZ2luZS0+ZXhlY2xpc3RzLnF1ZXVlKTsKKwlpZiAoIXJiKQorCQly ZXR1cm4gZmFsc2U7CisKKwlwcmlvbGlzdF9mb3JfZWFjaF9yZXF1ZXN0KHJxLCB0b19wcmlvbGlz dChyYiksIGlkeCkKKwkJcmV0dXJuIHJxLT5od19jb250ZXh0ICE9IGN0eCAmJiBycV9wcmlvKHJx KSA+IGxhc3RfcHJpbzsKKworCXJldHVybiBmYWxzZTsKK30KKworX19tYXliZV91bnVzZWQgc3Rh dGljIGlubGluZSBib29sCithc3NlcnRfcHJpb3JpdHlfcXVldWUoY29uc3Qgc3RydWN0IGludGVs X2VuZ2luZV9leGVjbGlzdHMgKmV4ZWNsaXN0cywKKwkJICAgICAgY29uc3Qgc3RydWN0IGk5MTVf cmVxdWVzdCAqcHJldiwKKwkJICAgICAgY29uc3Qgc3RydWN0IGk5MTVfcmVxdWVzdCAqbmV4dCkK K3sKKwlpZiAoIXByZXYpCisJCXJldHVybiB0cnVlOworCisJLyoKKwkgKiBXaXRob3V0IHByZWVt cHRpb24sIHRoZSBwcmV2IG1heSByZWZlciB0byB0aGUgc3RpbGwgYWN0aXZlIGVsZW1lbnQKKwkg KiB3aGljaCB3ZSByZWZ1c2UgdG8gbGV0IGdvLgorCSAqCisJICogRXZlbiB3aXRoIHByZW1wdGlv biwgdGhlcmUgYXJlIHRpbWVzIHdoZW4gd2UgdGhpbmsgaXQgaXMgYmV0dGVyIG5vdAorCSAqIHRv IHByZWVtcHQgYW5kIGxlYXZlIGFuIG9zdGVuc2libHkgbG93ZXIgcHJpb3JpdHkgcmVxdWVzdCBp biBmbGlnaHQuCisJICovCisJaWYgKHBvcnRfcmVxdWVzdChleGVjbGlzdHMtPnBvcnQpID09IHBy ZXYpCisJCXJldHVybiB0cnVlOworCisJcmV0dXJuIHJxX3ByaW8ocHJldikgPj0gcnFfcHJpbyhu ZXh0KTsKIH0KIAogLyoKQEAgLTYyNiw4ICs2NzgsNyBAQCBzdGF0aWMgdm9pZCBleGVjbGlzdHNf ZGVxdWV1ZShzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUpCiAJCWludCBpOwogCiAJCXBy aW9saXN0X2Zvcl9lYWNoX3JlcXVlc3RfY29uc3VtZShycSwgcm4sIHAsIGkpIHsKLQkJCUdFTV9C VUdfT04obGFzdCAmJgotCQkJCSAgIG5lZWRfcHJlZW1wdChlbmdpbmUsIGxhc3QsIHJxX3ByaW8o cnEpKSk7CisJCQlHRU1fQlVHX09OKCFhc3NlcnRfcHJpb3JpdHlfcXVldWUoZXhlY2xpc3RzLCBs YXN0LCBycSkpOwogCiAJCQkvKgogCQkJICogQ2FuIHdlIGNvbWJpbmUgdGhpcyByZXF1ZXN0IHdp dGggdGhlIGN1cnJlbnQgcG9ydD8KQEAgLTg3Miw2ICs5MjMsOCBAQCBzdGF0aWMgdm9pZCBwcm9j ZXNzX2NzYihzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUpCiAJY29uc3QgdTMyICogY29u c3QgYnVmID0gZXhlY2xpc3RzLT5jc2Jfc3RhdHVzOwogCXU4IGhlYWQsIHRhaWw7CiAKKwlsb2Nr ZGVwX2Fzc2VydF9oZWxkKCZlbmdpbmUtPnRpbWVsaW5lLmxvY2spOworCiAJLyoKIAkgKiBOb3Rl IHRoYXQgY3NiX3dyaXRlLCBjc2Jfc3RhdHVzIG1heSBiZSBlaXRoZXIgaW4gSFdTUCBvciBtbWlv LgogCSAqIFdoZW4gcmVhZGluZyBmcm9tIHRoZSBjc2Jfd3JpdGUgbW1pbyByZWdpc3Rlciwgd2Ug aGF2ZSB0byBiZQotLSAKMi4yMC4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVl ZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5m by9pbnRlbC1nZngK