From mboxrd@z Thu Jan 1 00:00:00 1970 From: John Brooks Subject: [PATCH 8/9] drm/amdgpu: Asynchronously move BOs to visible VRAM Date: Fri, 23 Jun 2017 13:39:39 -0400 Message-ID: <1498239580-17360-9-git-send-email-john@fastquake.com> References: <1498239580-17360-1-git-send-email-john@fastquake.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1498239580-17360-1-git-send-email-john-xq/Ko7C6e2Bl57MIdRCFDg@public.gmane.org> 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, =?UTF-8?q?Michel=20D=C3=A4nzer?= , =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Cc: David Airlie , =?UTF-8?q?Christian=20K=C3=B6nig?= , dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org List-Id: dri-devel@lists.freedesktop.org TW92aW5nIENQVS1hY2Nlc3NpYmxlIEJPcyBmcm9tIEdUVCB0byB2aXNpYmxlIFZSQU0gcmVkdWNl cyBsYXRlbmN5IG9uIHRoZQpHUFUgYW5kIGltcHJvdmVzIGF2ZXJhZ2UgZnJhbWVyYXRlLiBIb3dl dmVyLCBpdCdzIGFuIGV4cGVuc2l2ZSBvcGVyYXRpb24uCldoZW4gdmlzaWJsZSBWUkFNIGlzIGZ1 bGwgYW5kIGV2aWN0aW9ucyBhcmUgbmVjZXNzYXJ5LCBpdCBjYW4gZWFzaWx5IHRha2UKdGVucyBv ZiBtaWxsaXNlY29uZHMuIE9uIHRoZSBDUyBwYXRoLCB0aGF0IGRpcmVjdGx5IGluY3JlYXNlcyB0 aGUgZnJhbWUKdGltZSBhbmQgY2F1c2VzIG5vdGljZWFibGUgbW9tZW50YXJ5IHN0dXR0ZXJzLgoK VW5saWtlIG90aGVyIEJPIG1vdmUgb3BlcmF0aW9ucywgbW92aW5nIEJPcyB0byB2aXNpYmxlIFZS QU0gaXMgYQpob3VzZWtlZXBpbmcgdGFzayBhbmQgZG9lcyBub3QgaGF2ZSB0byBoYXBwZW4gaW1t ZWRpYXRlbHkuIEFzIGEgY29tcHJvbWlzZQp0byBhbGxvdyBldmljdGlvbnMgdG8gb2NjdXIgYW5k IGtlZXAgdGhlIGNvbnRlbnRzIG9mIHZpc2libGUgVlJBTSBmcmVzaCwKYnV0IHdpdGhvdXQgc3Rh bGxpbmcgdGhlIHJlbmRlcmluZyBwaXBlbGluZSwgd2UgY2FuIGRlZmVyIHRoZXNlIG1vdmVzIHRv IGEKd29ya2VyIHRocmVhZC4KCkFkZCBhIHdvcmsgZnVuY3Rpb24gdGhhdCBtb3ZlcyBhIEJPIGlu dG8gdmlzaWJsZSBWUkFNIGFuZCBldmljdGluZyBvdGhlcgpCT3MgaWYgbmVjZXNzYXJ5LiBBbmQg ZHVyaW5nIENTLCBxdWV1ZSB0aGlzIHdvcmsgZnVuY3Rpb24gZm9yIGFsbCByZXF1ZXN0ZWQKQ1BV X0FDQ0VTU19SRVFVSVJFRCBCT3MgKHN1YmplY3QgdG8gdGhlIHVzdWFsIG1vdmUgdGhyb3R0bGlu ZykuCgpUaGlzIGRlY3JlYXNlcyB0aGUgZnJlcXVlbmN5IGFuZCBzZXZlcml0eSBvZiB2aXNpYmxl LVZSQU0tcmVsYXRlZApzdHV0dGVyaW5nLgoKU2lnbmVkLW9mZi1ieTogSm9obiBCcm9va3MgPGpv aG5AZmFzdHF1YWtlLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHUu aCAgICAgICAgfCAgNSArKysrCiBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfY3Mu YyAgICAgfCAxNCArKysrKystLS0tCiBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVf b2JqZWN0LmMgfCA0NSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIGRyaXZlcnMvZ3B1 L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV90dG0uYyAgICB8ICA3ICsrKysrCiA0IGZpbGVzIGNoYW5n ZWQsIDY1IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1LmggYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdw dS9hbWRncHUuaAppbmRleCA4MWRiYjkzLi5hODA5NzQyIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vYW1kL2FtZGdwdS9hbWRncHUuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdw dS9hbWRncHUuaApAQCAtNDM2LDYgKzQzNiwxMCBAQCBzdHJ1Y3QgYW1kZ3B1X2JvIHsKIAkgKiBp cyBhc3NvY2lhdGVkIHRvCiAJICovCiAJc3RydWN0IGxpc3RfaGVhZAkJdmE7CisKKwkvKiBXb3Jr IGl0ZW0gZm9yIG1vdmluZyB0aGlzIEJPIHRvIHZpc2libGUgVlJBTSBhc3luY2hyb25vdXNseSAq LworCXN0cnVjdCB3b3JrX3N0cnVjdAkJbW92ZV92aXNfdnJhbV93b3JrOworCiAJLyogQ29uc3Rh bnQgYWZ0ZXIgaW5pdGlhbGl6YXRpb24gKi8KIAlzdHJ1Y3QgZHJtX2dlbV9vYmplY3QJCWdlbV9i YXNlOwogCXN0cnVjdCBhbWRncHVfYm8JCSpwYXJlbnQ7CkBAIC0xNTgzLDYgKzE1ODcsNyBAQCBz dHJ1Y3QgYW1kZ3B1X2RldmljZSB7CiAJc3RydWN0IGFtZGdwdV9tbWFuCQltbWFuOwogCXN0cnVj dCBhbWRncHVfdnJhbV9zY3JhdGNoCXZyYW1fc2NyYXRjaDsKIAlzdHJ1Y3QgYW1kZ3B1X3diCQl3 YjsKKwlzdHJ1Y3Qgd29ya3F1ZXVlX3N0cnVjdAkJKnZpc192cmFtX3dxOwogCWF0b21pYzY0X3QJ CQl2cmFtX3VzYWdlOwogCWF0b21pYzY0X3QJCQl2cmFtX3Zpc191c2FnZTsKIAlhdG9taWM2NF90 CQkJZ3R0X3VzYWdlOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1k Z3B1X2NzLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfY3MuYwppbmRleCAy NWQ2ZGY2Li45MjE1NjExIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9h bWRncHVfY3MuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfY3MuYwpA QCAtMzQxLDE0ICszNDEsMTYgQEAgc3RhdGljIGludCBhbWRncHVfY3NfYm9fdmFsaWRhdGUoc3Ry dWN0IGFtZGdwdV9jc19wYXJzZXIgKnAsCiAJaWYgKHAtPmJ5dGVzX21vdmVkIDwgcC0+Ynl0ZXNf bW92ZWRfdGhyZXNob2xkKSB7CiAJCWlmIChhZGV2LT5tYy52aXNpYmxlX3ZyYW1fc2l6ZSA8IGFk ZXYtPm1jLnJlYWxfdnJhbV9zaXplICYmCiAJCSAgICAoYm8tPmZsYWdzICYgQU1ER1BVX0dFTV9D UkVBVEVfQ1BVX0FDQ0VTU19SRVFVSVJFRCkpIHsKLQkJCS8qIEFuZCBkb24ndCBtb3ZlIGEgQ1BV X0FDQ0VTU19SRVFVSVJFRCBCTyB0byBsaW1pdGVkCi0JCQkgKiB2aXNpYmxlIFZSQU0gaWYgd2Un dmUgZGVwbGV0ZWQgb3VyIGFsbG93YW5jZSB0byBkbwotCQkJICogdGhhdC4KKwkJCS8qIE1vdmUg Q1BVX0FDQ0VTU19SRVFVSVJFRCBCT3MgdG8gbGltaXRlZCB2aXNpYmxlIFZSQU0KKwkJCSAqIGFz eW5jaHJvbm91c2x5LCBpZiB3ZSdyZSBhbGxvd2VkLgogCQkJICovCi0JCQlpZiAocC0+Ynl0ZXNf bW92ZWRfdmlzIDwgcC0+Ynl0ZXNfbW92ZWRfdmlzX3RocmVzaG9sZCkKLQkJCQlkb21haW4gPSBi by0+cHJlZmVyZWRfZG9tYWluczsKLQkJCWVsc2UKKwkJCWlmIChwLT5ieXRlc19tb3ZlZF92aXMg PCBwLT5ieXRlc19tb3ZlZF92aXNfdGhyZXNob2xkKSB7CisJCQkJcXVldWVfd29yayhhZGV2LT52 aXNfdnJhbV93cSwKKwkJCQkJICAgJmJvLT5tb3ZlX3Zpc192cmFtX3dvcmspOworCQkJCXJldHVy biAwOworCQkJfSBlbHNlIHsKIAkJCQlkb21haW4gPSBiby0+YWxsb3dlZF9kb21haW5zOworCQkJ fQogCQl9IGVsc2UgewogCQkJZG9tYWluID0gYm8tPnByZWZlcmVkX2RvbWFpbnM7CiAJCX0KZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9vYmplY3QuYyBiL2Ry aXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9vYmplY3QuYwppbmRleCAyN2Q4Yzc3Li5h Njk0NDFkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfb2Jq ZWN0LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X29iamVjdC5jCkBA IC05Myw2ICs5Myw4IEBAIHN0YXRpYyB2b2lkIGFtZGdwdV90dG1fYm9fZGVzdHJveShzdHJ1Y3Qg dHRtX2J1ZmZlcl9vYmplY3QgKnRibykKIAogCWJvID0gY29udGFpbmVyX29mKHRibywgc3RydWN0 IGFtZGdwdV9ibywgdGJvKTsKIAorCWNhbmNlbF93b3JrX3N5bmMoJmJvLT5tb3ZlX3Zpc192cmFt X3dvcmspOworCiAJYW1kZ3B1X3VwZGF0ZV9tZW1vcnlfdXNhZ2UoYWRldiwgJmJvLT50Ym8ubWVt LCBOVUxMKTsKIAogCWRybV9nZW1fb2JqZWN0X3JlbGVhc2UoJmJvLT5nZW1fYmFzZSk7CkBAIC0z MzAsNiArMzMyLDQ3IEBAIHZvaWQgYW1kZ3B1X2JvX2ZyZWVfa2VybmVsKHN0cnVjdCBhbWRncHVf Ym8gKipibywgdTY0ICpncHVfYWRkciwKIAkJKmNwdV9hZGRyID0gTlVMTDsKIH0KIAorc3RhdGlj IHZvaWQgYW1kZ3B1X2JvX21vdmVfdmlzX3ZyYW1fd29ya19mdW5jKHN0cnVjdCB3b3JrX3N0cnVj dCAqd29yaykKK3sKKwlzdHJ1Y3QgYW1kZ3B1X2JvICpibyA9IGNvbnRhaW5lcl9vZih3b3JrLCBz dHJ1Y3QgYW1kZ3B1X2JvLAorCQkJCQkgICAgbW92ZV92aXNfdnJhbV93b3JrKTsKKwlzdHJ1Y3Qg YW1kZ3B1X2RldmljZSAqYWRldiA9IGFtZGdwdV90dG1fYWRldihiby0+dGJvLmJkZXYpOworCXU2 NCBpbml0aWFsX2J5dGVzX21vdmVkLCBieXRlc19tb3ZlZDsKKwl1aW50MzJfdCBvbGRfbWVtOwor CWludCByOworCisJc3Bpbl9sb2NrKCZhZGV2LT5tbV9zdGF0cy5sb2NrKTsKKwlpZiAoYWRldi0+ bW1fc3RhdHMuYWNjdW1fdXNfdmlzIDw9IDAgfHwKKwkgICAgYWRldi0+bW1fc3RhdHMuYWNjdW1f dXMgPD0gMCkgeworCQlzcGluX3VubG9jaygmYWRldi0+bW1fc3RhdHMubG9jayk7CisJCXJldHVy bjsKKwl9CisJc3Bpbl91bmxvY2soJmFkZXYtPm1tX3N0YXRzLmxvY2spOworCisJciA9IGFtZGdw dV9ib19yZXNlcnZlKGJvLCB0cnVlKTsKKwlpZiAociAhPSAwKQorCQlyZXR1cm47CisKKwlhbWRn cHVfYm9fY2xlYXJfY3B1X2FjY2Vzc19yZXF1aXJlZChibyk7CisKKwlpZiAoIShiby0+ZmxhZ3Mg JiBBTURHUFVfR0VNX0NSRUFURV9DUFVfQUNDRVNTX1JFUVVJUkVEKSkKKwkJZ290byBvdXQ7CisK KwlhbWRncHVfdHRtX3BsYWNlbWVudF9mcm9tX2RvbWFpbihibywgQU1ER1BVX0dFTV9ET01BSU5f VlJBTSk7CisJb2xkX21lbSA9IGJvLT50Ym8ubWVtLm1lbV90eXBlOworCWluaXRpYWxfYnl0ZXNf bW92ZWQgPSBhdG9taWM2NF9yZWFkKCZhZGV2LT5udW1fYnl0ZXNfbW92ZWQpOworCXR0bV9ib192 YWxpZGF0ZSgmYm8tPnRibywgJmJvLT5wbGFjZW1lbnQsIGZhbHNlLCBmYWxzZSk7CisJYnl0ZXNf bW92ZWQgPSBhdG9taWM2NF9yZWFkKCZhZGV2LT5udW1fYnl0ZXNfbW92ZWQpIC0KKwkJCQkgICAg aW5pdGlhbF9ieXRlc19tb3ZlZDsKKwlhbWRncHVfY3NfcmVwb3J0X21vdmVkX2J5dGVzKGFkZXYs IGJ5dGVzX21vdmVkLCBieXRlc19tb3ZlZCk7CisKKwlpZiAoYm8tPnRiby5tZW0ubWVtX3R5cGUg IT0gb2xkX21lbSkKKwkJYm8tPmxhc3RfY3NfbW92ZV9qaWZmaWVzID0gamlmZmllczsKKworb3V0 OgorCWFtZGdwdV9ib191bnJlc2VydmUoYm8pOworfQorCiBpbnQgYW1kZ3B1X2JvX2NyZWF0ZV9y ZXN0cmljdGVkKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2LAogCQkJCXVuc2lnbmVkIGxvbmcg c2l6ZSwgaW50IGJ5dGVfYWxpZ24sCiAJCQkJYm9vbCBrZXJuZWwsIHUzMiBkb21haW4sIHU2NCBm bGFncywKQEAgLTM4Miw2ICs0MjUsOCBAQCBpbnQgYW1kZ3B1X2JvX2NyZWF0ZV9yZXN0cmljdGVk KHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2LAogCiAJYm8tPmZsYWdzID0gZmxhZ3M7CiAKKwlJ TklUX1dPUksoJmJvLT5tb3ZlX3Zpc192cmFtX3dvcmssIGFtZGdwdV9ib19tb3ZlX3Zpc192cmFt X3dvcmtfZnVuYyk7CisKICNpZmRlZiBDT05GSUdfWDg2XzMyCiAJLyogWFhYOiBXcml0ZS1jb21i aW5lZCBDUFUgbWFwcGluZ3Mgb2YgR1RUIHNlZW0gYnJva2VuIG9uIDMyLWJpdAogCSAqIFNlZSBo dHRwczovL2J1Z3MuZnJlZWRlc2t0b3Aub3JnL3Nob3dfYnVnLmNnaT9pZD04NDYyNwpkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3R0bS5jIGIvZHJpdmVycy9n cHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3R0bS5jCmluZGV4IDA2NzZhNzguLjU4NTJjYTEgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV90dG0uYworKysgYi9k cml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfdHRtLmMKQEAgLTExMjAsNiArMTEyMCwx MyBAQCBpbnQgYW1kZ3B1X3R0bV9pbml0KHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KQogCQly ZXR1cm4gcjsKIAl9CiAKKwkvKiBJbml0aWFsaXplIHdvcmtxdWV1ZSBmb3IgYXN5bmNocm9ub3Vz bHkgbW92aW5nIEJPcyB0byB2aXNpYmxlIFZSQU0uCisJICogV2Ugd2FudCB0byBhdm9pZCBsb2Nr IGNvbnRlbnRpb24gKGFuZCB0aGVyZWZvcmUgY29uY3VycmVuY3kpLCBzbyBzZXQKKwkgKiBtYXhf YWN0aXZlID0gMSwgYW5kIHNldCB1bmJvdW5kIHRvIGRpc2FibGUgY29uY3VycmVuY3kgbWFuYWdl bWVudAorCSAqICh3aGljaCBjYW4gaW50ZXJsZWF2ZSBzbGVlcGluZyB3b3JrZXJzKS4KKwkgKi8K KwlhZGV2LT52aXNfdnJhbV93cSA9IGFsbG9jX3dvcmtxdWV1ZSgiYW1kZ3B1X3Zpc192cmFtIiwg V1FfVU5CT1VORCwgMSk7CisKIAkvKiBSZWR1Y2Ugc2l6ZSBvZiBDUFUtdmlzaWJsZSBWUkFNIGlm IHJlcXVlc3RlZCAqLwogCXZpc192cmFtX2xpbWl0ID0gYW1kZ3B1X3Zpc192cmFtX2xpbWl0ICog MTAyNCAqIDEwMjQ7CiAJaWYgKGFtZGdwdV92aXNfdnJhbV9saW1pdCA+IDAgJiYKLS0gCjIuNy40 CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwphbWQtZ2Z4 IG1haWxpbmcgbGlzdAphbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3Rz LmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2FtZC1nZngK