From mboxrd@z Thu Jan 1 00:00:00 1970 From: "=?UTF-8?q?Christian=20K=C3=B6nig?=" Subject: [PATCH 5/7] drm/amdgpu: free PDs/PTs on demand Date: Tue, 19 Feb 2019 14:41:01 +0100 Message-ID: <20190219134103.1531-5-christian.koenig@amd.com> References: <20190219134103.1531-1-christian.koenig@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190219134103.1531-1-christian.koenig-5C7GfCeVMHo@public.gmane.org> List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" To: amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org V2hlbiBzb21ldGhpbmcgaXMgdW5tYXBwZWQgd2Ugbm93IGZyZWUgdGhlIGFmZmVjdGVkIFBEcy9Q VHMgYWdhaW4uCgpTaWduZWQtb2ZmLWJ5OiBDaHJpc3RpYW4gS8O2bmlnIDxjaHJpc3RpYW4ua29l bmlnQGFtZC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3ZtLmMg fCA3MSArKysrKysrKysrKysrKysrKysrLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDUzIGluc2Vy dGlvbnMoKyksIDE4IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9h bWQvYW1kZ3B1L2FtZGdwdV92bS5jIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1 X3ZtLmMKaW5kZXggMjY1M2U3MTkwMmE4Li4zNWMzYjcwZmQzNjQgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV92bS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9h bWQvYW1kZ3B1L2FtZGdwdV92bS5jCkBAIC01MTUsMTIgKzUxNSwzMSBAQCBzdGF0aWMgdm9pZCBh bWRncHVfdm1fcHRfbmV4dChzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwKICAqLwogc3RhdGlj IHZvaWQgYW1kZ3B1X3ZtX3B0X2ZpcnN0X2RmcyhzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwK IAkJCQkgICBzdHJ1Y3QgYW1kZ3B1X3ZtICp2bSwKKwkJCQkgICBzdHJ1Y3QgYW1kZ3B1X3ZtX3B0 X2N1cnNvciAqc3RhcnQsCiAJCQkJICAgc3RydWN0IGFtZGdwdV92bV9wdF9jdXJzb3IgKmN1cnNv cikKIHsKLQlhbWRncHVfdm1fcHRfc3RhcnQoYWRldiwgdm0sIDAsIGN1cnNvcik7CisJaWYgKHN0 YXJ0KQorCQkqY3Vyc29yID0gKnN0YXJ0OworCWVsc2UKKwkJYW1kZ3B1X3ZtX3B0X3N0YXJ0KGFk ZXYsIHZtLCAwLCBjdXJzb3IpOwogCXdoaWxlIChhbWRncHVfdm1fcHRfZGVzY2VuZGFudChhZGV2 LCBjdXJzb3IpKTsKIH0KIAorLyoqCisgKiBhbWRncHVfdm1fcHRfY29udGludWVfZGZzIC0gY2hl Y2sgaWYgdGhlIGRlZXAgZmlyc3Qgc2VhcmNoIHNob3VsZCBjb250aW51ZQorICoKKyAqIEBzdGFy dDogc3RhcnRpbmcgcG9pbnQgZm9yIHRoZSBzZWFyY2gKKyAqIEBlbnRyeTogY3VycmVudCBlbnRy eQorICoKKyAqIFJldHVybnM6CisgKiBUcnVlIHdoZW4gdGhlIHNlYXJjaCBzaG91bGQgY29udGlu dWUsIGZhbHNlIG90aGVyd2lzZS4KKyAqLworc3RhdGljIGJvb2wgYW1kZ3B1X3ZtX3B0X2NvbnRp bnVlX2RmcyhzdHJ1Y3QgYW1kZ3B1X3ZtX3B0X2N1cnNvciAqc3RhcnQsCisJCQkJICAgICAgc3Ry dWN0IGFtZGdwdV92bV9wdCAqZW50cnkpCit7CisJcmV0dXJuIGVudHJ5ICYmICghc3RhcnQgfHwg ZW50cnkgIT0gc3RhcnQtPmVudHJ5KTsKK30KKwogLyoqCiAgKiBhbWRncHVfdm1fcHRfbmV4dF9k ZnMgLSBnZXQgdGhlIG5leHQgbm9kZSBmb3IgYSBkZWVwIGZpcnN0IHNlYXJjaAogICoKQEAgLTU0 NiwxMSArNTY1LDExIEBAIHN0YXRpYyB2b2lkIGFtZGdwdV92bV9wdF9uZXh0X2RmcyhzdHJ1Y3Qg YW1kZ3B1X2RldmljZSAqYWRldiwKIC8qKgogICogZm9yX2VhY2hfYW1kZ3B1X3ZtX3B0X2Rmc19z YWZlIC0gc2FmZSBkZWVwIGZpcnN0IHNlYXJjaCBvZiBhbGwgUERzL1BUcwogICovCi0jZGVmaW5l IGZvcl9lYWNoX2FtZGdwdV92bV9wdF9kZnNfc2FmZShhZGV2LCB2bSwgY3Vyc29yLCBlbnRyeSkJ CQlcCi0JZm9yIChhbWRncHVfdm1fcHRfZmlyc3RfZGZzKChhZGV2KSwgKHZtKSwgJihjdXJzb3Ip KSwJCQlcCisjZGVmaW5lIGZvcl9lYWNoX2FtZGdwdV92bV9wdF9kZnNfc2FmZShhZGV2LCB2bSwg c3RhcnQsIGN1cnNvciwgZW50cnkpCQlcCisJZm9yIChhbWRncHVfdm1fcHRfZmlyc3RfZGZzKChh ZGV2KSwgKHZtKSwgKHN0YXJ0KSwgJihjdXJzb3IpKSwJCVwKIAkgICAgIChlbnRyeSkgPSAoY3Vy c29yKS5lbnRyeSwgYW1kZ3B1X3ZtX3B0X25leHRfZGZzKChhZGV2KSwgJihjdXJzb3IpKTtcCi0J ICAgICAoZW50cnkpOyAoZW50cnkpID0gKGN1cnNvcikuZW50cnksCQkJCQlcCi0JICAgICBhbWRn cHVfdm1fcHRfbmV4dF9kZnMoKGFkZXYpLCAmKGN1cnNvcikpKQorCSAgICAgYW1kZ3B1X3ZtX3B0 X2NvbnRpbnVlX2Rmcygoc3RhcnQpLCAoZW50cnkpKTsJCQlcCisJICAgICAoZW50cnkpID0gKGN1 cnNvcikuZW50cnksIGFtZGdwdV92bV9wdF9uZXh0X2RmcygoYWRldiksICYoY3Vyc29yKSkpCiAK IC8qKgogICogYW1kZ3B1X3ZtX2dldF9wZF9ibyAtIGFkZCB0aGUgVk0gUEQgdG8gYSB2YWxpZGF0 aW9uIGxpc3QKQEAgLTkzMSwzMiArOTUwLDQ2IEBAIHN0YXRpYyBpbnQgYW1kZ3B1X3ZtX2FsbG9j X3B0cyhzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwKIAlyZXR1cm4gcjsKIH0KIAorLyoqCisg KiBhbWRncHVfdm1fZnJlZV90YWJsZSAtIGZyZSBvbmUgUEQvUFQKKyAqCisgKiBAZW50cnk6IFBE RSB0byBmcmVlCisgKi8KK3N0YXRpYyB2b2lkIGFtZGdwdV92bV9mcmVlX3RhYmxlKHN0cnVjdCBh bWRncHVfdm1fcHQgKmVudHJ5KQoreworCWlmIChlbnRyeS0+YmFzZS5ibykgeworCQllbnRyeS0+ YmFzZS5iby0+dm1fYm8gPSBOVUxMOworCQlsaXN0X2RlbCgmZW50cnktPmJhc2Uudm1fc3RhdHVz KTsKKwkJYW1kZ3B1X2JvX3VucmVmKCZlbnRyeS0+YmFzZS5iby0+c2hhZG93KTsKKwkJYW1kZ3B1 X2JvX3VucmVmKCZlbnRyeS0+YmFzZS5ibyk7CisJfQorCWt2ZnJlZShlbnRyeS0+ZW50cmllcyk7 CisJZW50cnktPmVudHJpZXMgPSBOVUxMOworfQorCiAvKioKICAqIGFtZGdwdV92bV9mcmVlX3B0 cyAtIGZyZWUgUEQvUFQgbGV2ZWxzCiAgKgogICogQGFkZXY6IGFtZGdwdSBkZXZpY2Ugc3RydWN0 dXJlCiAgKiBAdm06IGFtZGdwdSB2bSBzdHJ1Y3R1cmUKKyAqIEBzdGFydDogb3B0aW9uYWwgY3Vy c29yIHdoZXJlIHRvIHN0YXJ0IGZyZWVpbmcgUERzL1BUcwogICoKICAqIEZyZWUgdGhlIHBhZ2Ug ZGlyZWN0b3J5IG9yIHBhZ2UgdGFibGUgbGV2ZWwgYW5kIGFsbCBzdWIgbGV2ZWxzLgogICovCiBz dGF0aWMgdm9pZCBhbWRncHVfdm1fZnJlZV9wdHMoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYs Ci0JCQkgICAgICAgc3RydWN0IGFtZGdwdV92bSAqdm0pCisJCQkgICAgICAgc3RydWN0IGFtZGdw dV92bSAqdm0sCisJCQkgICAgICAgc3RydWN0IGFtZGdwdV92bV9wdF9jdXJzb3IgKnN0YXJ0KQog ewogCXN0cnVjdCBhbWRncHVfdm1fcHRfY3Vyc29yIGN1cnNvcjsKIAlzdHJ1Y3QgYW1kZ3B1X3Zt X3B0ICplbnRyeTsKIAotCWZvcl9lYWNoX2FtZGdwdV92bV9wdF9kZnNfc2FmZShhZGV2LCB2bSwg Y3Vyc29yLCBlbnRyeSkgeworCXZtLT5idWxrX21vdmVhYmxlID0gZmFsc2U7CiAKLQkJaWYgKGVu dHJ5LT5iYXNlLmJvKSB7Ci0JCQllbnRyeS0+YmFzZS5iby0+dm1fYm8gPSBOVUxMOwotCQkJbGlz dF9kZWwoJmVudHJ5LT5iYXNlLnZtX3N0YXR1cyk7Ci0JCQlhbWRncHVfYm9fdW5yZWYoJmVudHJ5 LT5iYXNlLmJvLT5zaGFkb3cpOwotCQkJYW1kZ3B1X2JvX3VucmVmKCZlbnRyeS0+YmFzZS5ibyk7 Ci0JCX0KLQkJa3ZmcmVlKGVudHJ5LT5lbnRyaWVzKTsKLQl9CisJZm9yX2VhY2hfYW1kZ3B1X3Zt X3B0X2Rmc19zYWZlKGFkZXYsIHZtLCBzdGFydCwgY3Vyc29yLCBlbnRyeSkKKwkJYW1kZ3B1X3Zt X2ZyZWVfdGFibGUoZW50cnkpOwogCi0JQlVHX09OKHZtLT5yb290LmJhc2UuYm8pOworCWlmIChz dGFydCkKKwkJYW1kZ3B1X3ZtX2ZyZWVfdGFibGUoc3RhcnQtPmVudHJ5KTsKIH0KIAogLyoqCkBA IC0xMzUyLDcgKzEzODUsNyBAQCBzdGF0aWMgdm9pZCBhbWRncHVfdm1faW52YWxpZGF0ZV9wZHMo c3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYsCiAJc3RydWN0IGFtZGdwdV92bV9wdF9jdXJzb3Ig Y3Vyc29yOwogCXN0cnVjdCBhbWRncHVfdm1fcHQgKmVudHJ5OwogCi0JZm9yX2VhY2hfYW1kZ3B1 X3ZtX3B0X2Rmc19zYWZlKGFkZXYsIHZtLCBjdXJzb3IsIGVudHJ5KQorCWZvcl9lYWNoX2FtZGdw dV92bV9wdF9kZnNfc2FmZShhZGV2LCB2bSwgTlVMTCwgY3Vyc29yLCBlbnRyeSkKIAkJaWYgKGVu dHJ5LT5iYXNlLmJvICYmICFlbnRyeS0+YmFzZS5tb3ZlZCkKIAkJCWFtZGdwdV92bV9ib19yZWxv Y2F0ZWQoJmVudHJ5LT5iYXNlKTsKIH0KQEAgLTE2NjAsNiArMTY5Myw3IEBAIHN0YXRpYyBpbnQg YW1kZ3B1X3ZtX3VwZGF0ZV9wdGVzKHN0cnVjdCBhbWRncHVfcHRlX3VwZGF0ZV9wYXJhbXMgKnBh cmFtcywKIAkJCS8qIE1hcmsgYWxsIGNoaWxkIGVudHJpZXMgYXMgaHVnZSAqLwogCQkJd2hpbGUg KGN1cnNvci5wZm4gPCBmcmFnX3N0YXJ0KSB7CiAJCQkJY3Vyc29yLmVudHJ5LT5odWdlID0gdHJ1 ZTsKKwkJCQlhbWRncHVfdm1fZnJlZV9wdHMoYWRldiwgcGFyYW1zLT52bSwgJmN1cnNvcik7CiAJ CQkJYW1kZ3B1X3ZtX3B0X25leHQoYWRldiwgJmN1cnNvcik7CiAJCQl9CiAKQEAgLTMyMjMsMTAg KzMyNTcsMTEgQEAgdm9pZCBhbWRncHVfdm1fZmluaShzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRl diwgc3RydWN0IGFtZGdwdV92bSAqdm0pCiAJaWYgKHIpIHsKIAkJZGV2X2VycihhZGV2LT5kZXYs ICJMZWFraW5nIHBhZ2UgdGFibGVzIGJlY2F1c2UgQk8gcmVzZXJ2YXRpb24gZmFpbGVkXG4iKTsK IAl9IGVsc2UgewotCQlhbWRncHVfdm1fZnJlZV9wdHMoYWRldiwgdm0pOworCQlhbWRncHVfdm1f ZnJlZV9wdHMoYWRldiwgdm0sIE5VTEwpOwogCQlhbWRncHVfYm9fdW5yZXNlcnZlKHJvb3QpOwog CX0KIAlhbWRncHVfYm9fdW5yZWYoJnJvb3QpOworCVdBUk5fT04odm0tPnJvb3QuYmFzZS5ibyk7 CiAJZG1hX2ZlbmNlX3B1dCh2bS0+bGFzdF91cGRhdGUpOwogCWZvciAoaSA9IDA7IGkgPCBBTURH UFVfTUFYX1ZNSFVCUzsgaSsrKQogCQlhbWRncHVfdm1pZF9mcmVlX3Jlc2VydmVkKGFkZXYsIHZt LCBpKTsKLS0gCjIuMTcuMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KYW1kLWdmeCBtYWlsaW5nIGxpc3QKYW1kLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5v cmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9hbWQtZ2Z4