From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?q?Christian=20K=C3=B6nig?= Subject: [PATCH 3/3] drm/amdgpu: fix PRT teardown on VM fini v2 Date: Wed, 15 Feb 2017 15:57:21 +0100 Message-ID: <1487170641-1927-3-git-send-email-deathsimple@vodafone.de> References: <1487170641-1927-1-git-send-email-deathsimple@vodafone.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1487170641-1927-1-git-send-email-deathsimple-ANTagKRnAhcb1SvskN2V4Q@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 RnJvbTogQ2hyaXN0aWFuIEvDtm5pZyA8Y2hyaXN0aWFuLmtvZW5pZ0BhbWQuY29tPgoKdjI6IG5l dyBhcHByb2FjaCBmaXhpbmcgdGhpcyBieSByZWdpc3RlcmluZyBhIGZlbmNlIGNhbGxiYWNrIGZv cgogICAgYWxsIHVzZXJzIG9mIHRoZSBWTSBvbiB0ZWFyZG93bgoKU2lnbmVkLW9mZi1ieTogQ2hy aXN0aWFuIEvDtm5pZyA8Y2hyaXN0aWFuLmtvZW5pZ0BhbWQuY29tPgotLS0KIGRyaXZlcnMvZ3B1 L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV92bS5jIHwgMTA2ICsrKysrKysrKysrKysrKysrKysrKysr KystLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3ZtLmggfCAgIDIg Ky0KIDIgZmlsZXMgY2hhbmdlZCwgODIgaW5zZXJ0aW9ucygrKSwgMjYgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3ZtLmMgYi9kcml2 ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfdm0uYwppbmRleCBjMTFiNmI2Li5kMzQzN2Fk IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfdm0uYworKysg Yi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfdm0uYwpAQCAtMTE4OCwyMiArMTE4 OCwzMSBAQCBzdGF0aWMgdm9pZCBhbWRncHVfdm1fdXBkYXRlX3BydF9zdGF0ZShzdHJ1Y3QgYW1k Z3B1X2RldmljZSAqYWRldikKIAlib29sIGVuYWJsZTsKIAogCXNwaW5fbG9ja19pcnFzYXZlKCZh ZGV2LT52bV9tYW5hZ2VyLnBydF9sb2NrLCBmbGFncyk7Ci0JZW5hYmxlID0gISFhdG9taWNfcmVh ZCgmYWRldi0+dm1fbWFuYWdlci5udW1fcHJ0X21hcHBpbmdzKTsKKwllbmFibGUgPSAhIWF0b21p Y19yZWFkKCZhZGV2LT52bV9tYW5hZ2VyLm51bV9wcnRfdXNlcnMpOwogCWFkZXYtPmdhcnQuZ2Fy dF9mdW5jcy0+c2V0X3BydChhZGV2LCBlbmFibGUpOwogCXNwaW5fdW5sb2NrX2lycXJlc3RvcmUo JmFkZXYtPnZtX21hbmFnZXIucHJ0X2xvY2ssIGZsYWdzKTsKIH0KIAogLyoqCisgKiBhbWRncHVf dm1fcHJ0X3B1dCAtIGFkZCBhIFBSVCB1c2VyCisgKi8KK3N0YXRpYyB2b2lkIGFtZGdwdV92bV9w cnRfZ2V0KHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KQoreworCWlmIChhdG9taWNfaW5jX3Jl dHVybigmYWRldi0+dm1fbWFuYWdlci5udW1fcHJ0X3VzZXJzKSA9PSAxKQorCQlhbWRncHVfdm1f dXBkYXRlX3BydF9zdGF0ZShhZGV2KTsKK30KKworLyoqCiAgKiBhbWRncHVfdm1fcHJ0X3B1dCAt IGRyb3AgYSBQUlQgdXNlcgogICovCiBzdGF0aWMgdm9pZCBhbWRncHVfdm1fcHJ0X3B1dChzdHJ1 Y3QgYW1kZ3B1X2RldmljZSAqYWRldikKIHsKLQlpZiAoYXRvbWljX2RlY19yZXR1cm4oJmFkZXYt PnZtX21hbmFnZXIubnVtX3BydF9tYXBwaW5ncykgPT0gMCkKKwlpZiAoYXRvbWljX2RlY19yZXR1 cm4oJmFkZXYtPnZtX21hbmFnZXIubnVtX3BydF91c2VycykgPT0gMCkKIAkJYW1kZ3B1X3ZtX3Vw ZGF0ZV9wcnRfc3RhdGUoYWRldik7CiB9CiAKIC8qKgotICogYW1kZ3B1X3ZtX3BydCAtIGNhbGxi YWNrIGZvciB1cGRhdGluZyB0aGUgUFJUIHN0YXR1cworICogYW1kZ3B1X3ZtX3BydF9jYiAtIGNh bGxiYWNrIGZvciB1cGRhdGluZyB0aGUgUFJUIHN0YXR1cwogICovCiBzdGF0aWMgdm9pZCBhbWRn cHVfdm1fcHJ0X2NiKHN0cnVjdCBmZW5jZSAqZmVuY2UsIHN0cnVjdCBmZW5jZV9jYiAqX2NiKQog ewpAQCAtMTIxNCw2ICsxMjIzLDI5IEBAIHN0YXRpYyB2b2lkIGFtZGdwdV92bV9wcnRfY2Ioc3Ry dWN0IGZlbmNlICpmZW5jZSwgc3RydWN0IGZlbmNlX2NiICpfY2IpCiB9CiAKIC8qKgorICogYW1k Z3B1X3ZtX2FkZF9wcnRfY2IgLSBhZGQgY2FsbGJhY2sgZm9yIHVwZGF0aW5nIHRoZSBQUlQgc3Rh dHVzCisgKi8KK3N0YXRpYyB2b2lkIGFtZGdwdV92bV9hZGRfcHJ0X2NiKHN0cnVjdCBhbWRncHVf ZGV2aWNlICphZGV2LAorCQkJCSBzdHJ1Y3QgZmVuY2UgKmZlbmNlKQoreworCXN0cnVjdCBhbWRn cHVfcHJ0X2NiICpjYiA9IGttYWxsb2Moc2l6ZW9mKHN0cnVjdCBhbWRncHVfcHJ0X2NiKSwKKwkJ CQkJICAgR0ZQX0tFUk5FTCk7CisKKwlpZiAoIWNiKSB7CisJCS8qIExhc3QgcmVzb3J0IHdoZW4g d2UgYXJlIE9PTSAqLworCQlpZiAoZmVuY2UpCisJCQlmZW5jZV93YWl0KGZlbmNlLCBmYWxzZSk7 CisKKwkJYW1kZ3B1X3ZtX3BydF9wdXQoY2ItPmFkZXYpOworCX0gZWxzZSB7CisJCWNiLT5hZGV2 ID0gYWRldjsKKwkJaWYgKCFmZW5jZSB8fCBmZW5jZV9hZGRfY2FsbGJhY2soZmVuY2UsICZjYi0+ Y2IsCisJCQkJCQkgYW1kZ3B1X3ZtX3BydF9jYikpCisJCQlhbWRncHVfdm1fcHJ0X2NiKGZlbmNl LCAmY2ItPmNiKTsKKwl9Cit9CisKKy8qKgogICogYW1kZ3B1X3ZtX2ZyZWVfbWFwcGluZyAtIGZy ZWUgYSBtYXBwaW5nCiAgKgogICogQGFkZXY6IGFtZGdwdV9kZXZpY2UgcG9pbnRlcgpAQCAtMTIy OCwyNCArMTI2MCw0NyBAQCBzdGF0aWMgdm9pZCBhbWRncHVfdm1fZnJlZV9tYXBwaW5nKHN0cnVj dCBhbWRncHVfZGV2aWNlICphZGV2LAogCQkJCSAgIHN0cnVjdCBhbWRncHVfYm9fdmFfbWFwcGlu ZyAqbWFwcGluZywKIAkJCQkgICBzdHJ1Y3QgZmVuY2UgKmZlbmNlKQogewotCWlmIChtYXBwaW5n LT5mbGFncyAmIEFNREdQVV9QVEVfUFJUKSB7Ci0JCXN0cnVjdCBhbWRncHVfcHJ0X2NiICpjYiA9 IGttYWxsb2Moc2l6ZW9mKHN0cnVjdCBhbWRncHVfcHJ0X2NiKSwKLQkJCQkJCSAgIEdGUF9LRVJO RUwpOworCWlmIChtYXBwaW5nLT5mbGFncyAmIEFNREdQVV9QVEVfUFJUKQorCQlhbWRncHVfdm1f YWRkX3BydF9jYihhZGV2LCBmZW5jZSk7CisJa2ZyZWUobWFwcGluZyk7Cit9CiAKLQkJaWYgKCFj YikgewotCQkJLyogTGFzdCByZXNvcnQgd2hlbiB3ZSBhcmUgT09NICovCi0JCQlpZiAoZmVuY2Up Ci0JCQkJZmVuY2Vfd2FpdChmZW5jZSwgZmFsc2UpOworLyoqCisgKiBhbWRncHVfdm1fcHJ0X2Zp bmkgLSBmaW5pc2ggYWxsIHBydCBtYXBwaW5ncworICoKKyAqIEBhZGV2OiBhbWRncHVfZGV2aWNl IHBvaW50ZXIKKyAqIEB2bTogcmVxdWVzdGVkIHZtCisgKgorICogUmVnaXN0ZXIgYSBjbGVhbnVw IGNhbGxiYWNrIHRvIGRpc2FibGUgUFJUIHN1cHBvcnQgYWZ0ZXIgVk0gZGllcy4KKyAqLworc3Rh dGljIHZvaWQgYW1kZ3B1X3ZtX3BydF9maW5pKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2LCBz dHJ1Y3QgYW1kZ3B1X3ZtICp2bSkKK3sKKwlzdHJ1Y3QgcmVzZXJ2YXRpb25fb2JqZWN0ICpyZXN2 ID0gdm0tPnBhZ2VfZGlyZWN0b3J5LT50Ym8ucmVzdjsKKwlzdHJ1Y3QgZmVuY2UgKmV4Y2wsICoq c2hhcmVkOworCXVuc2lnbmVkIGksIHNoYXJlZF9jb3VudDsKKwlpbnQgcjsKIAotCQkJYW1kZ3B1 X3ZtX3BydF9wdXQoY2ItPmFkZXYpOwotCQl9IGVsc2UgewotCQkJY2ItPmFkZXYgPSBhZGV2Owot CQkJaWYgKCFmZW5jZSB8fCBmZW5jZV9hZGRfY2FsbGJhY2soZmVuY2UsICZjYi0+Y2IsCi0JCQkJ CQkJIGFtZGdwdV92bV9wcnRfY2IpKQotCQkJCWFtZGdwdV92bV9wcnRfY2IoZmVuY2UsICZjYi0+ Y2IpOwotCQl9CisJciA9IHJlc2VydmF0aW9uX29iamVjdF9nZXRfZmVuY2VzX3JjdShyZXN2LCAm ZXhjbCwKKwkJCQkJICAgICAgJnNoYXJlZF9jb3VudCwgJnNoYXJlZCk7CisJaWYgKHIpIHsKKwkJ LyogTm90IGVub3VnaCBtZW1vcnkgdG8gZ3JhYiB0aGUgZmVuY2UgbGlzdCwgYXMgbGFzdCByZXNv cnQKKwkJICogYmxvY2sgZm9yIGFsbCB0aGUgZmVuY2VzIHRvIGNvbXBsZXRlLgorCQkgKi8KKwkJ cmVzZXJ2YXRpb25fb2JqZWN0X3dhaXRfdGltZW91dF9yY3UocmVzdiwgdHJ1ZSwgZmFsc2UsCisJ CQkJCQkgICAgTUFYX1NDSEVEVUxFX1RJTUVPVVQpOworCQlyZXR1cm47CiAJfQotCWtmcmVlKG1h cHBpbmcpOworCisJLyogQWRkIGEgY2FsbGJhY2sgZm9yIGVhY2ggZmVuY2UgaW4gdGhlIHJlc2Vy dmF0aW9uIG9iamVjdCAqLworCWFtZGdwdV92bV9wcnRfZ2V0KGFkZXYpOworCWFtZGdwdV92bV9h ZGRfcHJ0X2NiKGFkZXYsIGV4Y2wpOworCisJZm9yIChpID0gMDsgaSA8IHNoYXJlZF9jb3VudDsg KytpKSB7CisJCWFtZGdwdV92bV9wcnRfZ2V0KGFkZXYpOworCQlhbWRncHVfdm1fYWRkX3BydF9j YihhZGV2LCBzaGFyZWRbaV0pOworCX0KKworCWtmcmVlKHNoYXJlZCk7CiB9CiAKIC8qKgpAQCAt MTM5NSw4ICsxNDUwLDcgQEAgaW50IGFtZGdwdV92bV9ib19tYXAoc3RydWN0IGFtZGdwdV9kZXZp Y2UgKmFkZXYsCiAJCWlmICghYWRldi0+Z2FydC5nYXJ0X2Z1bmNzLT5zZXRfcHJ0KQogCQkJcmV0 dXJuIC1FSU5WQUw7CiAKLQkJaWYgKGF0b21pY19pbmNfcmV0dXJuKCZhZGV2LT52bV9tYW5hZ2Vy Lm51bV9wcnRfbWFwcGluZ3MpID09IDEpCi0JCQlhbWRncHVfdm1fdXBkYXRlX3BydF9zdGF0ZShh ZGV2KTsKKwkJYW1kZ3B1X3ZtX3BydF9nZXQoYWRldik7CiAJfQogCiAJLyogbWFrZSBzdXJlIG9i amVjdCBmaXQgYXQgdGhpcyBvZmZzZXQgKi8KQEAgLTE2OTksNiArMTc1Myw3IEBAIGludCBhbWRn cHVfdm1faW5pdChzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwgc3RydWN0IGFtZGdwdV92bSAq dm0pCiB2b2lkIGFtZGdwdV92bV9maW5pKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2LCBzdHJ1 Y3QgYW1kZ3B1X3ZtICp2bSkKIHsKIAlzdHJ1Y3QgYW1kZ3B1X2JvX3ZhX21hcHBpbmcgKm1hcHBp bmcsICp0bXA7CisJYm9vbCBwcnRfZmluaV9jYWxsZWQgPSBmYWxzZTsKIAlpbnQgaTsKIAogCWFt ZF9zY2hlZF9lbnRpdHlfZmluaSh2bS0+ZW50aXR5LnNjaGVkLCAmdm0tPmVudGl0eSk7CkBAIC0x NzEyLDEzICsxNzY3LDE0IEBAIHZvaWQgYW1kZ3B1X3ZtX2Zpbmkoc3RydWN0IGFtZGdwdV9kZXZp Y2UgKmFkZXYsIHN0cnVjdCBhbWRncHVfdm0gKnZtKQogCQlrZnJlZShtYXBwaW5nKTsKIAl9CiAJ bGlzdF9mb3JfZWFjaF9lbnRyeV9zYWZlKG1hcHBpbmcsIHRtcCwgJnZtLT5mcmVlZCwgbGlzdCkg ewotCQlpZiAobWFwcGluZy0+ZmxhZ3MgJiBBTURHUFVfUFRFX1BSVCkKLQkJCWNvbnRpbnVlOwor CQlpZiAobWFwcGluZy0+ZmxhZ3MgJiBBTURHUFVfUFRFX1BSVCAmJiAhcHJ0X2ZpbmlfY2FsbGVk KSB7CisJCQlhbWRncHVfdm1fcHJ0X2ZpbmkoYWRldiwgdm0pOworCQkJcHJ0X2ZpbmlfY2FsbGVk ID0gdHJ1ZTsKKwkJfQogCiAJCWxpc3RfZGVsKCZtYXBwaW5nLT5saXN0KTsKLQkJa2ZyZWUobWFw cGluZyk7CisJCWFtZGdwdV92bV9mcmVlX21hcHBpbmcoYWRldiwgdm0sIG1hcHBpbmcsIE5VTEwp OwogCX0KLQlhbWRncHVfdm1fY2xlYXJfZnJlZWQoYWRldiwgdm0pOwogCiAJZm9yIChpID0gMDsg aSA8IGFtZGdwdV92bV9udW1fcGRlcyhhZGV2KTsgaSsrKSB7CiAJCXN0cnVjdCBhbWRncHVfYm8g KnB0ID0gdm0tPnBhZ2VfdGFibGVzW2ldLmJvOwpAQCAtMTc2NCw3ICsxODIwLDcgQEAgdm9pZCBh bWRncHVfdm1fbWFuYWdlcl9pbml0KHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KQogCWF0b21p Y19zZXQoJmFkZXYtPnZtX21hbmFnZXIudm1fcHRlX25leHRfcmluZywgMCk7CiAJYXRvbWljNjRf c2V0KCZhZGV2LT52bV9tYW5hZ2VyLmNsaWVudF9jb3VudGVyLCAwKTsKIAlzcGluX2xvY2tfaW5p dCgmYWRldi0+dm1fbWFuYWdlci5wcnRfbG9jayk7Ci0JYXRvbWljX3NldCgmYWRldi0+dm1fbWFu YWdlci5udW1fcHJ0X21hcHBpbmdzLCAwKTsKKwlhdG9taWNfc2V0KCZhZGV2LT52bV9tYW5hZ2Vy Lm51bV9wcnRfdXNlcnMsIDApOwogfQogCiAvKioKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9hbWQvYW1kZ3B1L2FtZGdwdV92bS5oIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1k Z3B1X3ZtLmgKaW5kZXggNTFmYTEyZi4uN2ZjY2Q0ODYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV92bS5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1k Z3B1L2FtZGdwdV92bS5oCkBAIC0xNjQsNyArMTY0LDcgQEAgc3RydWN0IGFtZGdwdV92bV9tYW5h Z2VyIHsKIAogCS8qIHBhcnRpYWwgcmVzaWRlbnQgdGV4dHVyZSBoYW5kbGluZyAqLwogCXNwaW5s b2NrX3QJCQkJcHJ0X2xvY2s7Ci0JYXRvbWljX3QJCQkJbnVtX3BydF9tYXBwaW5nczsKKwlhdG9t aWNfdAkJCQludW1fcHJ0X3VzZXJzOwogfTsKIAogdm9pZCBhbWRncHVfdm1fbWFuYWdlcl9pbml0 KHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KTsKLS0gCjIuNS4wCgpfX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwphbWQtZ2Z4IG1haWxpbmcgbGlzdAphbWQt Z2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9t YWlsbWFuL2xpc3RpbmZvL2FtZC1nZngK