From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Subject: [PATCH 6/6] drm/radeon: limit how much memory TTM can move per IB according to VRAM usage Date: Sun, 2 Mar 2014 00:56:22 +0100 Message-ID: <1393718182-12575-7-git-send-email-maraeo@gmail.com> References: <1393718182-12575-1-git-send-email-maraeo@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-ee0-f53.google.com (mail-ee0-f53.google.com [74.125.83.53]) by gabe.freedesktop.org (Postfix) with ESMTP id 5E294FABA1 for ; Sat, 1 Mar 2014 15:56:35 -0800 (PST) Received: by mail-ee0-f53.google.com with SMTP id e51so2023320eek.26 for ; Sat, 01 Mar 2014 15:56:34 -0800 (PST) Received: from localhost.localdomain ([194.228.11.34]) by mx.google.com with ESMTPSA id x45sm3558181eef.15.2014.03.01.15.56.33 for (version=TLSv1.1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Sat, 01 Mar 2014 15:56:34 -0800 (PST) In-Reply-To: <1393718182-12575-1-git-send-email-maraeo@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: dri-devel-bounces@lists.freedesktop.org Errors-To: dri-devel-bounces@lists.freedesktop.org To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org RnJvbTogTWFyZWsgT2zFocOhayA8bWFyZWsub2xzYWtAYW1kLmNvbT4KClNpZ25lZC1vZmYtYnk6 IE1hcmVrIE9sxaHDoWsgPG1hcmVrLm9sc2FrQGFtZC5jb20+ClJldmlld2VkLWJ5OiBDaHJpc3Rp YW4gS8O2bmlnIDxjaHJpc3RpYW4ua29lbmlnQGFtZC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJt L3JhZGVvbi9yYWRlb25fY3MuYyAgICAgfCAgMiArLQogZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9y YWRlb25fb2JqZWN0LmMgfCA4OCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tCiBk cml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9vYmplY3QuaCB8ICAzICstCiAzIGZpbGVzIGNo YW5nZWQsIDg1IGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fY3MuYyBiL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24v cmFkZW9uX2NzLmMKaW5kZXggMDdlMTY1MS4uNWFiYWU0MCAxMDA2NDQKLS0tIGEvZHJpdmVycy9n cHUvZHJtL3JhZGVvbi9yYWRlb25fY3MuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3Jh ZGVvbl9jcy5jCkBAIC0xNjgsNyArMTY4LDcgQEAgc3RhdGljIGludCByYWRlb25fY3NfcGFyc2Vy X3JlbG9jcyhzdHJ1Y3QgcmFkZW9uX2NzX3BhcnNlciAqcCkKIAogCXJhZGVvbl9jc19idWNrZXRz X2dldF9saXN0KCZidWNrZXRzLCAmcC0+dmFsaWRhdGVkKTsKIAotCXJldHVybiByYWRlb25fYm9f bGlzdF92YWxpZGF0ZSgmcC0+dGlja2V0LCAmcC0+dmFsaWRhdGVkLCBwLT5yaW5nKTsKKwlyZXR1 cm4gcmFkZW9uX2JvX2xpc3RfdmFsaWRhdGUocC0+cmRldiwgJnAtPnRpY2tldCwgJnAtPnZhbGlk YXRlZCwgcC0+cmluZyk7CiB9CiAKIHN0YXRpYyBpbnQgcmFkZW9uX2NzX2dldF9yaW5nKHN0cnVj dCByYWRlb25fY3NfcGFyc2VyICpwLCB1MzIgcmluZywgczMyIHByaW9yaXR5KQpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fb2JqZWN0LmMgYi9kcml2ZXJzL2dwdS9k cm0vcmFkZW9uL3JhZGVvbl9vYmplY3QuYwppbmRleCA4Mzk5ZmUwLi5lZDAzZjJkIDEwMDY0NAot LS0gYS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9vYmplY3QuYworKysgYi9kcml2ZXJz L2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9vYmplY3QuYwpAQCAtMzY2LDI5ICszNjYsMTA1IEBAIHZv aWQgcmFkZW9uX2JvX2Zpbmkoc3RydWN0IHJhZGVvbl9kZXZpY2UgKnJkZXYpCiAJYXJjaF9waHlz X3djX2RlbChyZGV2LT5tYy52cmFtX210cnIpOwogfQogCi1pbnQgcmFkZW9uX2JvX2xpc3RfdmFs aWRhdGUoc3RydWN0IHd3X2FjcXVpcmVfY3R4ICp0aWNrZXQsCisvKiBSZXR1cm5zIGhvdyBtYW55 IGJ5dGVzIFRUTSBjYW4gbW92ZSBwZXIgSUIuCisgKi8KK3N0YXRpYyB1NjQgcmFkZW9uX2JvX2dl dF90aHJlc2hvbGRfZm9yX21vdmVzKHN0cnVjdCByYWRlb25fZGV2aWNlICpyZGV2KQoreworCXU2 NCByZWFsX3ZyYW1fc2l6ZSA9IHJkZXYtPm1jLnJlYWxfdnJhbV9zaXplOworCXU2NCB2cmFtX3Vz YWdlID0gYXRvbWljNjRfcmVhZCgmcmRldi0+dnJhbV91c2FnZSk7CisKKwkvKiBUaGlzIGZ1bmN0 aW9uIGlzIGJhc2VkIG9uIHRoZSBjdXJyZW50IFZSQU0gdXNhZ2UuCisJICoKKwkgKiAtIElmIGFs bCBvZiBWUkFNIGlzIGZyZWUsIGFsbG93IHJlbG9jYXRpbmcgdGhlIG51bWJlciBvZiBieXRlcyB0 aGF0CisJICogICBpcyBlcXVhbCB0byAxLzQgb2YgdGhlIHNpemUgb2YgVlJBTSBmb3IgdGhpcyBJ Qi4KKworCSAqIC0gSWYgbW9yZSB0aGFuIG9uZSBoYWxmIG9mIFZSQU0gaXMgb2NjdXBpZWQsIG9u bHkgYWxsb3cgcmVsb2NhdGluZworCSAqICAgMSBNQiBvZiBkYXRhIGZvciB0aGlzIElCLgorCSAq CisJICogLSBGcm9tIDAgdG8gb25lIGhhbGYgb2YgdXNlZCBWUkFNLCB0aGUgdGhyZXNob2xkIGRl Y3JlYXNlcworCSAqICAgbGluZWFybHkuCisJICogICAgICAgICBfX19fX19fX19fX19fX19fX18K KwkgKiAxLzQgb2YgLXxcICAgICAgICAgICAgICAgfAorCSAqIFZSQU0gICAgfCBcICAgICAgICAg ICAgICB8CisJICogICAgICAgICB8ICBcICAgICAgICAgICAgIHwKKwkgKiAgICAgICAgIHwgICBc ICAgICAgICAgICAgfAorCSAqICAgICAgICAgfCAgICBcICAgICAgICAgICB8CisJICogICAgICAg ICB8ICAgICBcICAgICAgICAgIHwKKwkgKiAgICAgICAgIHwgICAgICBcICAgICAgICAgfAorCSAq ICAgICAgICAgfCAgICAgICBcX19fX19fX198MSBNQgorCSAqICAgICAgICAgfC0tLS0tLS0tLS0t LS0tLS18CisJICogICAgVlJBTSAwICUgICAgICAgICAgICAgMTAwICUKKwkgKiAgICAgICAgIHVz ZWQgICAgICAgICAgICB1c2VkCisJICoKKwkgKiBOb3RlOiBJdCdzIGEgdGhyZXNob2xkLCBub3Qg YSBsaW1pdC4gVGhlIHRocmVzaG9sZCBtdXN0IGJlIGNyb3NzZWQKKwkgKiBmb3IgYnVmZmVyIHJl bG9jYXRpb25zIHRvIHN0b3AsIHNvIGFueSBidWZmZXIgb2YgYW4gYXJiaXRyYXJ5IHNpemUKKwkg KiBjYW4gYmUgbW92ZWQgYXMgbG9uZyBhcyB0aGUgdGhyZXNob2xkIGlzbid0IGNyb3NzZWQgYmVm b3JlCisJICogdGhlIHJlbG9jYXRpb24gdGFrZXMgcGxhY2UuIFdlIGRvbid0IHdhbnQgdG8gZGlz YWJsZSBidWZmZXIKKwkgKiByZWxvY2F0aW9ucyBjb21wbGV0ZWx5LgorCSAqCisJICogVGhlIGlk ZWEgaXMgdGhhdCBidWZmZXJzIHNob3VsZCBiZSBwbGFjZWQgaW4gVlJBTSBhdCBjcmVhdGlvbiB0 aW1lCisJICogYW5kIFRUTSBzaG91bGQgb25seSBkbyBhIG1pbmltdW0gbnVtYmVyIG9mIHJlbG9j YXRpb25zIGR1cmluZworCSAqIGNvbW1hbmQgc3VibWlzc2lvbi4gSW4gcHJhY3RpY2UsIHlvdSBu ZWVkIHRvIHN1Ym1pdCBhdCBsZWFzdAorCSAqIGEgZG96ZW4gSUJzIHRvIG1vdmUgYWxsIGJ1ZmZl cnMgdG8gVlJBTSBpZiB0aGV5IGFyZSBpbiBHVFQuCisJICoKKwkgKiBBbHNvLCB0aGluZ3MgY2Fu IGdldCBwcmV0dHkgY3JhenkgdW5kZXIgbWVtb3J5IHByZXNzdXJlIGFuZCBhY3R1YWwKKwkgKiBW UkFNIHVzYWdlIGNhbiBjaGFuZ2UgYSBsb3QsIHNvIHBsYXlpbmcgc2FmZSBldmVuIGF0IDUwJSBk b2VzCisJICogY29uc2lzdGVudGx5IGluY3JlYXNlIHBlcmZvcm1hbmNlLgorCSAqLworCisJdTY0 IGhhbGZfdnJhbSA9IHJlYWxfdnJhbV9zaXplID4+IDE7CisJdTY0IGhhbGZfZnJlZV92cmFtID0g dnJhbV91c2FnZSA+PSBoYWxmX3ZyYW0gPyAwIDogaGFsZl92cmFtIC0gdnJhbV91c2FnZTsKKwl1 NjQgYnl0ZXNfbW92ZWRfdGhyZXNob2xkID0gaGFsZl9mcmVlX3ZyYW0gPj4gMTsKKwlyZXR1cm4g bWF4KGJ5dGVzX21vdmVkX3RocmVzaG9sZCwgMTAyNCoxMDI0dWxsKTsKK30KKworaW50IHJhZGVv bl9ib19saXN0X3ZhbGlkYXRlKHN0cnVjdCByYWRlb25fZGV2aWNlICpyZGV2LAorCQkJICAgIHN0 cnVjdCB3d19hY3F1aXJlX2N0eCAqdGlja2V0LAogCQkJICAgIHN0cnVjdCBsaXN0X2hlYWQgKmhl YWQsIGludCByaW5nKQogewogCXN0cnVjdCByYWRlb25fYm9fbGlzdCAqbG9iajsKIAlzdHJ1Y3Qg cmFkZW9uX2JvICpibzsKLQl1MzIgZG9tYWluOwogCWludCByOworCXU2NCBieXRlc19tb3ZlZCA9 IDAsIGluaXRpYWxfYnl0ZXNfbW92ZWQ7CisJdTY0IGJ5dGVzX21vdmVkX3RocmVzaG9sZCA9IHJh ZGVvbl9ib19nZXRfdGhyZXNob2xkX2Zvcl9tb3ZlcyhyZGV2KTsKIAogCXIgPSB0dG1fZXVfcmVz ZXJ2ZV9idWZmZXJzKHRpY2tldCwgaGVhZCk7CiAJaWYgKHVubGlrZWx5KHIgIT0gMCkpIHsKIAkJ cmV0dXJuIHI7CiAJfQorCiAJbGlzdF9mb3JfZWFjaF9lbnRyeShsb2JqLCBoZWFkLCB0di5oZWFk KSB7CiAJCWJvID0gbG9iai0+Ym87CiAJCWlmICghYm8tPnBpbl9jb3VudCkgewotCQkJZG9tYWlu ID0gbG9iai0+ZG9tYWluOwotCQkJCisJCQl1MzIgZG9tYWluID0gbG9iai0+ZG9tYWluOworCQkJ dTMyIGN1cnJlbnRfZG9tYWluID0KKwkJCQlyYWRlb25fbWVtX3R5cGVfdG9fZG9tYWluKGJvLT50 Ym8ubWVtLm1lbV90eXBlKTsKKworCQkJLyogQ2hlY2sgaWYgdGhpcyBidWZmZXIgd2lsbCBiZSBt b3ZlZCBhbmQgZG9uJ3QgbW92ZSBpdAorCQkJICogaWYgd2UgaGF2ZSBtb3ZlZCB0b28gbWFueSBi dWZmZXJzIGZvciB0aGlzIElCIGFscmVhZHkuCisJCQkgKgorCQkJICogTm90ZSB0aGF0IHRoaXMg YWxsb3dzIG1vdmluZyBhdCBsZWFzdCBvbmUgYnVmZmVyIG9mCisJCQkgKiBhbnkgc2l6ZSwgYmVj YXVzZSBpdCBkb2Vzbid0IHRha2UgdGhlIGN1cnJlbnQgImJvIgorCQkJICogaW50byBhY2NvdW50 LiBXZSBkb24ndCB3YW50IHRvIGRpc2FsbG93IGJ1ZmZlciBtb3ZlcworCQkJICogY29tcGxldGVs eS4KKwkJCSAqLworCQkJaWYgKGN1cnJlbnRfZG9tYWluICE9IFJBREVPTl9HRU1fRE9NQUlOX0NQ VSAmJgorCQkJICAgIChkb21haW4gJiBjdXJyZW50X2RvbWFpbikgPT0gMCAmJiAvKiB3aWxsIGJl IG1vdmVkICovCisJCQkgICAgYnl0ZXNfbW92ZWQgPiBieXRlc19tb3ZlZF90aHJlc2hvbGQpIHsK KwkJCQkvKiBkb24ndCBtb3ZlIGl0ICovCisJCQkJZG9tYWluID0gY3VycmVudF9kb21haW47CisJ CQl9CisKIAkJcmV0cnk6CiAJCQlyYWRlb25fdHRtX3BsYWNlbWVudF9mcm9tX2RvbWFpbihibywg ZG9tYWluKTsKIAkJCWlmIChyaW5nID09IFI2MDBfUklOR19UWVBFX1VWRF9JTkRFWCkKIAkJCQly YWRlb25fdXZkX2ZvcmNlX2ludG9fdXZkX3NlZ21lbnQoYm8pOwotCQkJciA9IHR0bV9ib192YWxp ZGF0ZSgmYm8tPnRibywgJmJvLT5wbGFjZW1lbnQsCi0JCQkJCQl0cnVlLCBmYWxzZSk7CisKKwkJ CWluaXRpYWxfYnl0ZXNfbW92ZWQgPSBhdG9taWM2NF9yZWFkKCZyZGV2LT5udW1fYnl0ZXNfbW92 ZWQpOworCQkJciA9IHR0bV9ib192YWxpZGF0ZSgmYm8tPnRibywgJmJvLT5wbGFjZW1lbnQsIHRy dWUsIGZhbHNlKTsKKwkJCWJ5dGVzX21vdmVkICs9IGF0b21pYzY0X3JlYWQoJnJkZXYtPm51bV9i eXRlc19tb3ZlZCkgLQorCQkJCSAgICAgICBpbml0aWFsX2J5dGVzX21vdmVkOworCiAJCQlpZiAo dW5saWtlbHkocikpIHsKIAkJCQlpZiAociAhPSAtRVJFU1RBUlRTWVMgJiYgZG9tYWluICE9IGxv YmotPmFsdF9kb21haW4pIHsKIAkJCQkJZG9tYWluID0gbG9iai0+YWx0X2RvbWFpbjsKZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX29iamVjdC5oIGIvZHJpdmVycy9n cHUvZHJtL3JhZGVvbi9yYWRlb25fb2JqZWN0LmgKaW5kZXggNmMzY2E5ZS4uN2RmZjY0ZCAxMDA2 NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fb2JqZWN0LmgKKysrIGIvZHJp dmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fb2JqZWN0LmgKQEAgLTEzOCw3ICsxMzgsOCBAQCBl eHRlcm4gaW50IHJhZGVvbl9ib19ldmljdF92cmFtKHN0cnVjdCByYWRlb25fZGV2aWNlICpyZGV2 KTsKIGV4dGVybiB2b2lkIHJhZGVvbl9ib19mb3JjZV9kZWxldGUoc3RydWN0IHJhZGVvbl9kZXZp Y2UgKnJkZXYpOwogZXh0ZXJuIGludCByYWRlb25fYm9faW5pdChzdHJ1Y3QgcmFkZW9uX2Rldmlj ZSAqcmRldik7CiBleHRlcm4gdm9pZCByYWRlb25fYm9fZmluaShzdHJ1Y3QgcmFkZW9uX2Rldmlj ZSAqcmRldik7Ci1leHRlcm4gaW50IHJhZGVvbl9ib19saXN0X3ZhbGlkYXRlKHN0cnVjdCB3d19h Y3F1aXJlX2N0eCAqdGlja2V0LAorZXh0ZXJuIGludCByYWRlb25fYm9fbGlzdF92YWxpZGF0ZShz dHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRldiwKKwkJCQkgICBzdHJ1Y3Qgd3dfYWNxdWlyZV9jdHgg KnRpY2tldCwKIAkJCQkgICBzdHJ1Y3QgbGlzdF9oZWFkICpoZWFkLCBpbnQgcmluZyk7CiBleHRl cm4gaW50IHJhZGVvbl9ib19mYmRldl9tbWFwKHN0cnVjdCByYWRlb25fYm8gKmJvLAogCQkJCXN0 cnVjdCB2bV9hcmVhX3N0cnVjdCAqdm1hKTsKLS0gCjEuOC4zLjIKCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJp LWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3Jn L21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==