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: Mon, 24 Feb 2014 16:20:46 +0100 Message-ID: <1393255246-8296-7-git-send-email-maraeo@gmail.com> References: <1393255246-8296-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-ea0-f177.google.com (mail-ea0-f177.google.com [209.85.215.177]) by gabe.freedesktop.org (Postfix) with ESMTP id 8FA2DFAAE9 for ; Mon, 24 Feb 2014 07:21:11 -0800 (PST) Received: by mail-ea0-f177.google.com with SMTP id h10so1806392eak.36 for ; Mon, 24 Feb 2014 07:21:10 -0800 (PST) Received: from localhost.localdomain ([194.228.11.204]) by mx.google.com with ESMTPSA id o43sm64864402eef.12.2014.02.24.07.21.09 for (version=TLSv1.1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Mon, 24 Feb 2014 07:21:10 -0800 (PST) In-Reply-To: <1393255246-8296-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+Ci0tLQogZHJpdmVycy9ncHUvZHJt L3JhZGVvbi9yYWRlb25fY3MuYyAgICAgfCAgMiArLQogZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9y YWRlb25fb2JqZWN0LmMgfCA4NyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tCiBk cml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9vYmplY3QuaCB8ICAzICstCiAzIGZpbGVzIGNo YW5nZWQsIDg0IGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fY3MuYyBiL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24v cmFkZW9uX2NzLmMKaW5kZXggMWJhMWE0OC4uMjMzOGVlZiAxMDA2NDQKLS0tIGEvZHJpdmVycy9n cHUvZHJtL3JhZGVvbi9yYWRlb25fY3MuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3Jh ZGVvbl9jcy5jCkBAIC0xNTcsNyArMTU3LDcgQEAgc3RhdGljIGludCByYWRlb25fY3NfcGFyc2Vy X3JlbG9jcyhzdHJ1Y3QgcmFkZW9uX2NzX3BhcnNlciAqcCkKIAogCXNvcnRfcmVsb2NzX2Zvcl92 YWxpZGF0aW9uKCZwLT52YWxpZGF0ZWQpOwogCi0JcmV0dXJuIHJhZGVvbl9ib19saXN0X3ZhbGlk YXRlKCZwLT50aWNrZXQsICZwLT52YWxpZGF0ZWQsIHAtPnJpbmcpOworCXJldHVybiByYWRlb25f Ym9fbGlzdF92YWxpZGF0ZShwLT5yZGV2LCAmcC0+dGlja2V0LCAmcC0+dmFsaWRhdGVkLCBwLT5y aW5nKTsKIH0KIAogc3RhdGljIGludCByYWRlb25fY3NfZ2V0X3Jpbmcoc3RydWN0IHJhZGVvbl9j c19wYXJzZXIgKnAsIHUzMiByaW5nLCBzMzIgcHJpb3JpdHkpCmRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9vYmplY3QuYyBiL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24v cmFkZW9uX29iamVjdC5jCmluZGV4IDE5MDQyYWUuLmUxYTVhZjcgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX29iamVjdC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9y YWRlb24vcmFkZW9uX29iamVjdC5jCkBAIC0zNjgsMjkgKzM2OCwxMDQgQEAgdm9pZCByYWRlb25f Ym9fZmluaShzdHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRldikKIAlhcmNoX3BoeXNfd2NfZGVsKHJk ZXYtPm1jLnZyYW1fbXRycik7CiB9CiAKLWludCByYWRlb25fYm9fbGlzdF92YWxpZGF0ZShzdHJ1 Y3Qgd3dfYWNxdWlyZV9jdHggKnRpY2tldCwKKy8qIFJldHVybnMgaG93IG1hbnkgYnl0ZXMgVFRN IGNhbiBtb3ZlIHBlciBJQi4KKyAqLworc3RhdGljIHU2NCByYWRlb25fYm9fZ2V0X3RocmVzaG9s ZF9mb3JfbW92ZXMoc3RydWN0IHJhZGVvbl9kZXZpY2UgKnJkZXYpCit7CisJdTY0IHJlYWxfdnJh bV9zaXplID0gcmRldi0+bWMucmVhbF92cmFtX3NpemU7CisJdTY0IHZyYW1fdXNhZ2UgPSByZGV2 LT52cmFtX3VzYWdlOworCisJLyogVGhpcyBmdW5jdGlvbiBpcyBiYXNlZCBvbiB0aGUgY3VycmVu dCBWUkFNIHVzYWdlLgorCSAqCisJICogLSBJZiBhbGwgb2YgVlJBTSBpcyBmcmVlLCBhbGxvdyBy ZWxvY2F0aW5nIHRoZSBudW1iZXIgb2YgYnl0ZXMgdGhhdAorCSAqICAgaXMgZXF1YWwgdG8gMS80 IG9mIHRoZSBzaXplIG9mIFZSQU0gZm9yIHRoaXMgSUIuCisKKwkgKiAtIElmIG1vcmUgdGhhbiBv bmUgaGFsZiBvZiBWUkFNIGlzIG9jY3VwaWVkLCBvbmx5IGFsbG93IHJlbG9jYXRpbmcKKwkgKiAg IDEgTUIgb2YgZGF0YSBmb3IgdGhpcyBJQi4KKwkgKgorCSAqIC0gRnJvbSAwIHRvIG9uZSBoYWxm IG9mIHVzZWQgVlJBTSwgdGhlIHRocmVzaG9sZCBkZWNyZWFzZXMKKwkgKiAgIGxpbmVhcmx5Lgor CSAqICAgICAgICAgX19fX19fX19fX19fX19fX19fCisJICogMS80IG9mIC18XCAgICAgICAgICAg ICAgIHwKKwkgKiBWUkFNICAgIHwgXCAgICAgICAgICAgICAgfAorCSAqICAgICAgICAgfCAgXCAg ICAgICAgICAgICB8CisJICogICAgICAgICB8ICAgXCAgICAgICAgICAgIHwKKwkgKiAgICAgICAg IHwgICAgXCAgICAgICAgICAgfAorCSAqICAgICAgICAgfCAgICAgXCAgICAgICAgICB8CisJICog ICAgICAgICB8ICAgICAgXCAgICAgICAgIHwKKwkgKiAgICAgICAgIHwgICAgICAgXF9fX19fX19f fDEgTUIKKwkgKiAgICAgICAgIHwtLS0tLS0tLS0tLS0tLS0tfAorCSAqICAgIFZSQU0gMCAlICAg ICAgICAgICAgIDEwMCAlCisJICogICAgICAgICB1c2VkICAgICAgICAgICAgdXNlZAorCSAqCisJ ICogTm90ZTogSXQncyBhIHRocmVzaG9sZCwgbm90IGEgbGltaXQuIFRoZSB0aHJlc2hvbGQgbXVz dCBiZSBjcm9zc2VkCisJICogZm9yIGJ1ZmZlciByZWxvY2F0aW9ucyB0byBzdG9wLCBzbyBhbnkg YnVmZmVyIG9mIGFuIGFyYml0cmFyeSBzaXplCisJICogY2FuIGJlIG1vdmVkIGFzIGxvbmcgYXMg dGhlIHRocmVzaG9sZCBpc24ndCBjcm9zc2VkIGJlZm9yZQorCSAqIHRoZSByZWxvY2F0aW9uIHRh a2VzIHBsYWNlLiBXZSBkb24ndCB3YW50IHRvIGRpc2FibGUgYnVmZmVyCisJICogcmVsb2NhdGlv bnMgY29tcGxldGVseS4KKwkgKgorCSAqIFRoZSBpZGVhIGlzIHRoYXQgYnVmZmVycyBzaG91bGQg YmUgcGxhY2VkIGluIFZSQU0gYXQgY3JlYXRpb24gdGltZQorCSAqIGFuZCBUVE0gc2hvdWxkIG9u bHkgZG8gYSBtaW5pbXVtIG51bWJlciBvZiByZWxvY2F0aW9ucyBkdXJpbmcKKwkgKiBjb21tYW5k IHN1Ym1pc3Npb24uIEluIHByYWN0aWNlLCB5b3UgbmVlZCB0byBzdWJtaXQgYXQgbGVhc3QKKwkg KiBhIGRvemVuIElCcyB0byBtb3ZlIGFsbCBidWZmZXJzIHRvIFZSQU0gaWYgdGhleSBhcmUgaW4g R1RULgorCSAqCisJICogQWxzbywgdGhpbmdzIGNhbiBnZXQgcHJldHR5IGNyYXp5IHVuZGVyIG1l bW9yeSBwcmVzc3VyZSBhbmQgYWN0dWFsCisJICogVlJBTSB1c2FnZSBjYW4gY2hhbmdlIGEgbG90 LCBzbyBwbGF5aW5nIHNhZmUgZXZlbiBhdCA1MCUgZG9lcworCSAqIGNvbnNpc3RlbnRseSBpbmNy ZWFzZSBwZXJmb3JtYW5jZS4KKwkgKi8KKworCXU2NCBoYWxmX3ZyYW0gPSByZWFsX3ZyYW1fc2l6 ZSA+PiAxOworCXU2NCBoYWxmX2ZyZWVfdnJhbSA9IHZyYW1fdXNhZ2UgPj0gaGFsZl92cmFtID8g MCA6IGhhbGZfdnJhbSAtIHZyYW1fdXNhZ2U7CisJdTY0IGJ5dGVzX21vdmVkX3RocmVzaG9sZCA9 IGhhbGZfZnJlZV92cmFtID4+IDE7CisJcmV0dXJuIG1heChieXRlc19tb3ZlZF90aHJlc2hvbGQs IDEwMjQqMTAyNHVsbCk7Cit9CisKK2ludCByYWRlb25fYm9fbGlzdF92YWxpZGF0ZShzdHJ1Y3Qg cmFkZW9uX2RldmljZSAqcmRldiwKKwkJCSAgICBzdHJ1Y3Qgd3dfYWNxdWlyZV9jdHggKnRpY2tl dCwKIAkJCSAgICBzdHJ1Y3QgbGlzdF9oZWFkICpoZWFkLCBpbnQgcmluZykKIHsKIAlzdHJ1Y3Qg cmFkZW9uX2JvX2xpc3QgKmxvYmo7CiAJc3RydWN0IHJhZGVvbl9ibyAqYm87Ci0JdTMyIGRvbWFp bjsKIAlpbnQgcjsKKwl1NjQgYnl0ZXNfbW92ZWQgPSAwLCBpbml0aWFsX2J5dGVzX21vdmVkOwor CXU2NCBieXRlc19tb3ZlZF90aHJlc2hvbGQgPSByYWRlb25fYm9fZ2V0X3RocmVzaG9sZF9mb3Jf bW92ZXMocmRldik7CiAKIAlyID0gdHRtX2V1X3Jlc2VydmVfYnVmZmVycyh0aWNrZXQsIGhlYWQp OwogCWlmICh1bmxpa2VseShyICE9IDApKSB7CiAJCXJldHVybiByOwogCX0KKwogCWxpc3RfZm9y X2VhY2hfZW50cnkobG9iaiwgaGVhZCwgdHYuaGVhZCkgewogCQlibyA9IGxvYmotPmJvOwogCQlp ZiAoIWJvLT5waW5fY291bnQpIHsKLQkJCWRvbWFpbiA9IGxvYmotPmRvbWFpbjsKLQkJCQorCQkJ dTMyIGRvbWFpbiA9IGxvYmotPmRvbWFpbjsKKwkJCXUzMiBjdXJyZW50X2RvbWFpbiA9CisJCQkJ cmFkZW9uX21lbV90eXBlX3RvX2RvbWFpbihiby0+dGJvLm1lbS5tZW1fdHlwZSk7CisKKwkJCS8q IENoZWNrIGlmIHRoaXMgYnVmZmVyIHdpbGwgYmUgbW92ZWQgYW5kIGRvbid0IG1vdmUgaXQKKwkJ CSAqIGlmIHdlIGhhdmUgbW92ZWQgdG9vIG1hbnkgYnVmZmVycyBmb3IgdGhpcyBJQiBhbHJlYWR5 LgorCQkJICoKKwkJCSAqIE5vdGUgdGhhdCB0aGlzIGFsbG93cyBtb3ZpbmcgYXQgbGVhc3Qgb25l IGJ1ZmZlciBvZgorCQkJICogYW55IHNpemUsIGJlY2F1c2UgaXQgZG9lc24ndCB0YWtlIHRoZSBj dXJyZW50ICJibyIKKwkJCSAqIGludG8gYWNjb3VudC4gV2UgZG9uJ3Qgd2FudCB0byBkaXNhbGxv dyBidWZmZXIgbW92ZXMKKwkJCSAqIGNvbXBsZXRlbHkuCisJCQkgKi8KKwkJCWlmIChjdXJyZW50 X2RvbWFpbiAhPSBSQURFT05fR0VNX0RPTUFJTl9DUFUgJiYKKwkJCSAgICAoZG9tYWluICYgY3Vy cmVudF9kb21haW4pID09IDAgJiYgLyogd2lsbCBiZSBtb3ZlZCAqLworCQkJICAgIGJ5dGVzX21v dmVkID4gYnl0ZXNfbW92ZWRfdGhyZXNob2xkKSB7CisJCQkJLyogZG9uJ3QgbW92ZSBpdCAqLwor CQkJCWRvbWFpbiA9IGN1cnJlbnRfZG9tYWluOworCQkJfQorCiAJCXJldHJ5OgogCQkJcmFkZW9u X3R0bV9wbGFjZW1lbnRfZnJvbV9kb21haW4oYm8sIGRvbWFpbik7CiAJCQlpZiAocmluZyA9PSBS NjAwX1JJTkdfVFlQRV9VVkRfSU5ERVgpCiAJCQkJcmFkZW9uX3V2ZF9mb3JjZV9pbnRvX3V2ZF9z ZWdtZW50KGJvKTsKLQkJCXIgPSB0dG1fYm9fdmFsaWRhdGUoJmJvLT50Ym8sICZiby0+cGxhY2Vt ZW50LAotCQkJCQkJdHJ1ZSwgZmFsc2UpOworCisJCQlpbml0aWFsX2J5dGVzX21vdmVkID0gcmRl di0+bnVtX2J5dGVzX21vdmVkOworCQkJciA9IHR0bV9ib192YWxpZGF0ZSgmYm8tPnRibywgJmJv LT5wbGFjZW1lbnQsIHRydWUsIGZhbHNlKTsKKwkJCWJ5dGVzX21vdmVkICs9IHJkZXYtPm51bV9i eXRlc19tb3ZlZCAtIGluaXRpYWxfYnl0ZXNfbW92ZWQ7CisKIAkJCWlmICh1bmxpa2VseShyKSkg ewogCQkJCWlmIChyICE9IC1FUkVTVEFSVFNZUyAmJiBkb21haW4gIT0gbG9iai0+YWx0X2RvbWFp bikgewogCQkJCQlkb21haW4gPSBsb2JqLT5hbHRfZG9tYWluOwpkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fb2JqZWN0LmggYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9u L3JhZGVvbl9vYmplY3QuaAppbmRleCA2YzNjYTllLi43ZGZmNjRkIDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9vYmplY3QuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0v cmFkZW9uL3JhZGVvbl9vYmplY3QuaApAQCAtMTM4LDcgKzEzOCw4IEBAIGV4dGVybiBpbnQgcmFk ZW9uX2JvX2V2aWN0X3ZyYW0oc3RydWN0IHJhZGVvbl9kZXZpY2UgKnJkZXYpOwogZXh0ZXJuIHZv aWQgcmFkZW9uX2JvX2ZvcmNlX2RlbGV0ZShzdHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRldik7CiBl eHRlcm4gaW50IHJhZGVvbl9ib19pbml0KHN0cnVjdCByYWRlb25fZGV2aWNlICpyZGV2KTsKIGV4 dGVybiB2b2lkIHJhZGVvbl9ib19maW5pKHN0cnVjdCByYWRlb25fZGV2aWNlICpyZGV2KTsKLWV4 dGVybiBpbnQgcmFkZW9uX2JvX2xpc3RfdmFsaWRhdGUoc3RydWN0IHd3X2FjcXVpcmVfY3R4ICp0 aWNrZXQsCitleHRlcm4gaW50IHJhZGVvbl9ib19saXN0X3ZhbGlkYXRlKHN0cnVjdCByYWRlb25f ZGV2aWNlICpyZGV2LAorCQkJCSAgIHN0cnVjdCB3d19hY3F1aXJlX2N0eCAqdGlja2V0LAogCQkJ CSAgIHN0cnVjdCBsaXN0X2hlYWQgKmhlYWQsIGludCByaW5nKTsKIGV4dGVybiBpbnQgcmFkZW9u X2JvX2ZiZGV2X21tYXAoc3RydWN0IHJhZGVvbl9ibyAqYm8sCiAJCQkJc3RydWN0IHZtX2FyZWFf c3RydWN0ICp2bWEpOwotLSAKMS44LjMuMgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMu ZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0 aW5mby9kcmktZGV2ZWwK