From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [PATCH v3 28/38] drm: Unconditionally do the range check in drm_mm_scan_add_block() Date: Fri, 16 Dec 2016 19:25:40 +0000 Message-ID: <20161216192550.8352-29-chris@chris-wilson.co.uk> References: <20161216192550.8352-1-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20161216192550.8352-1-chris@chris-wilson.co.uk> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: dri-devel@lists.freedesktop.org Cc: intel-gfx@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org RG9pbmcgdGhlIGNoZWNrIGlzIHRyaXZpYWwgKGxvdyBjb3N0IGluIGNvbXBhcmlzb24gdG8gb3Zl cmFsbCBldmljdGlvbikKYW5kIGhlbHBzIHNpbXBsaWZ5IHRoZSBjb2RlLgoKU2lnbmVkLW9mZi1i eTogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+ClJldmlld2VkLWJ5OiBK b29uYXMgTGFodGluZW4gPGpvb25hcy5sYWh0aW5lbkBsaW51eC5pbnRlbC5jb20+Ci0tLQogZHJp dmVycy9ncHUvZHJtL2RybV9tbS5jICAgICAgICAgICAgICB8IDUzICsrKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ldmljdC5j IHwgMTAgKystLS0tLQogaW5jbHVkZS9kcm0vZHJtX21tLmggICAgICAgICAgICAgICAgICB8IDMz ICsrKysrKysrKysrKysrKysrKy0tLS0KIDMgZmlsZXMgY2hhbmdlZCwgMzQgaW5zZXJ0aW9ucygr KSwgNjIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9tbS5j IGIvZHJpdmVycy9ncHUvZHJtL2RybV9tbS5jCmluZGV4IDQ1OWYxMGNhNTcxNC4uYzY4Zjc5MTQ5 YjlhIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX21tLmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL2RybV9tbS5jCkBAIC03MTAsNDYgKzcxMCw2IEBAIEVYUE9SVF9TWU1CT0woZHJtX21t X3JlcGxhY2Vfbm9kZSk7CiAgKi8KIAogLyoqCi0gKiBkcm1fbW1fc2Nhbl9pbml0IC0gaW5pdGlh bGl6ZSBscnUgc2Nhbm5pbmcKLSAqIEBzY2FuOiBzY2FuIHN0YXRlCi0gKiBAbW06IGRybV9tbSB0 byBzY2FuCi0gKiBAc2l6ZTogc2l6ZSBvZiB0aGUgYWxsb2NhdGlvbgotICogQGFsaWdubWVudDog YWxpZ25tZW50IG9mIHRoZSBhbGxvY2F0aW9uCi0gKiBAY29sb3I6IG9wYXF1ZSB0YWcgdmFsdWUg dG8gdXNlIGZvciB0aGUgYWxsb2NhdGlvbgotICoKLSAqIFRoaXMgc2ltcGx5IHNldHMgdXAgdGhl IHNjYW5uaW5nIHJvdXRpbmVzIHdpdGggdGhlIHBhcmFtZXRlcnMgZm9yIHRoZSBkZXNpcmVkCi0g KiBob2xlLiBOb3RlIHRoYXQgdGhlcmUncyBubyBuZWVkIHRvIHNwZWNpZnkgYWxsb2NhdGlvbiBm bGFncywgc2luY2UgdGhleSBvbmx5Ci0gKiBjaGFuZ2UgdGhlIHBsYWNlIGEgbm9kZSBpcyBhbGxv Y2F0ZWQgZnJvbSB3aXRoaW4gYSBzdWl0YWJsZSBob2xlLgotICoKLSAqIFdhcm5pbmc6Ci0gKiBB cyBsb25nIGFzIHRoZSBzY2FuIGxpc3QgaXMgbm9uLWVtcHR5LCBubyBvdGhlciBvcGVyYXRpb25z IHRoYW4KLSAqIGFkZGluZy9yZW1vdmluZyBub2RlcyB0by9mcm9tIHRoZSBzY2FuIGxpc3QgYXJl IGFsbG93ZWQuCi0gKi8KLXZvaWQgZHJtX21tX3NjYW5faW5pdChzdHJ1Y3QgZHJtX21tX3NjYW4g KnNjYW4sCi0JCSAgICAgIHN0cnVjdCBkcm1fbW0gKm1tLAotCQkgICAgICB1NjQgc2l6ZSwKLQkJ ICAgICAgdTY0IGFsaWdubWVudCwKLQkJICAgICAgdW5zaWduZWQgbG9uZyBjb2xvcikKLXsKLQlE Uk1fTU1fQlVHX09OKCFzaXplKTsKLQlEUk1fTU1fQlVHX09OKG1tLT5zY2FuX2FjdGl2ZSk7Ci0K LQlzY2FuLT5tbSA9IG1tOwotCi0Jc2Nhbi0+Y29sb3IgPSBjb2xvcjsKLQlzY2FuLT5hbGlnbm1l bnQgPSBhbGlnbm1lbnQ7Ci0Jc2Nhbi0+c2l6ZSA9IHNpemU7Ci0KLQlzY2FuLT5jaGVja19yYW5n ZSA9IDA7Ci0KLQlzY2FuLT5oaXRfc3RhcnQgPSBVNjRfTUFYOwotCXNjYW4tPmhpdF9lbmQgPSAw OwotCi0Jc2Nhbi0+cHJldl9zY2FubmVkX25vZGUgPSBOVUxMOwotfQotRVhQT1JUX1NZTUJPTChk cm1fbW1fc2Nhbl9pbml0KTsKLQotLyoqCiAgKiBkcm1fbW1fc2Nhbl9pbml0X3dpdGhfcmFuZ2Ug LSBpbml0aWFsaXplIHJhbmdlLXJlc3RyaWN0ZWQgbHJ1IHNjYW5uaW5nCiAgKiBAc2Nhbjogc2Nh biBzdGF0ZQogICogQG1tOiBkcm1fbW0gdG8gc2NhbgpAQCAtNzg4LDcgKzc0OCw2IEBAIHZvaWQg ZHJtX21tX3NjYW5faW5pdF93aXRoX3JhbmdlKHN0cnVjdCBkcm1fbW1fc2NhbiAqc2NhbiwKIAlE Uk1fTU1fQlVHX09OKGVuZCA8PSBzdGFydCk7CiAJc2Nhbi0+cmFuZ2Vfc3RhcnQgPSBzdGFydDsK IAlzY2FuLT5yYW5nZV9lbmQgPSBlbmQ7Ci0Jc2Nhbi0+Y2hlY2tfcmFuZ2UgPSAxOwogCiAJc2Nh bi0+aGl0X3N0YXJ0ID0gVTY0X01BWDsKIAlzY2FuLT5oaXRfZW5kID0gMDsKQEAgLTgzMCwxNSAr Nzg5LDExIEBAIGJvb2wgZHJtX21tX3NjYW5fYWRkX2Jsb2NrKHN0cnVjdCBkcm1fbW1fc2NhbiAq c2NhbiwKIAlub2RlLT5ub2RlX2xpc3QubmV4dCA9ICZzY2FuLT5wcmV2X3NjYW5uZWRfbm9kZS0+ bm9kZV9saXN0OwogCXNjYW4tPnByZXZfc2Nhbm5lZF9ub2RlID0gbm9kZTsKIAotCWFkal9zdGFy dCA9IGhvbGVfc3RhcnQgPSBkcm1fbW1faG9sZV9ub2RlX3N0YXJ0KGhvbGUpOwotCWFkal9lbmQg PSBob2xlX2VuZCA9IGRybV9tbV9ob2xlX25vZGVfZW5kKGhvbGUpOworCWhvbGVfc3RhcnQgPSBk cm1fbW1faG9sZV9ub2RlX3N0YXJ0KGhvbGUpOworCWhvbGVfZW5kID0gZHJtX21tX2hvbGVfbm9k ZV9lbmQoaG9sZSk7CiAKLQlpZiAoc2Nhbi0+Y2hlY2tfcmFuZ2UpIHsKLQkJaWYgKGFkal9zdGFy dCA8IHNjYW4tPnJhbmdlX3N0YXJ0KQotCQkJYWRqX3N0YXJ0ID0gc2Nhbi0+cmFuZ2Vfc3RhcnQ7 Ci0JCWlmIChhZGpfZW5kID4gc2Nhbi0+cmFuZ2VfZW5kKQotCQkJYWRqX2VuZCA9IHNjYW4tPnJh bmdlX2VuZDsKLQl9CisJYWRqX3N0YXJ0ID0gbWF4KGhvbGVfc3RhcnQsIHNjYW4tPnJhbmdlX3N0 YXJ0KTsKKwlhZGpfZW5kID0gbWluKGhvbGVfZW5kLCBzY2FuLT5yYW5nZV9lbmQpOwogCiAJaWYg KG1tLT5jb2xvcl9hZGp1c3QpCiAJCW1tLT5jb2xvcl9hZGp1c3QoaG9sZSwgc2Nhbi0+Y29sb3Is ICZhZGpfc3RhcnQsICZhZGpfZW5kKTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZ2VtX2V2aWN0LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ldmljdC5j CmluZGV4IDZkYjBkNzNjMGFhNy4uNzdkZWQyODg1MzRiIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2dlbV9ldmljdC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZ2VtX2V2aWN0LmMKQEAgLTEyNiwxMyArMTI2LDkgQEAgaTkxNV9nZW1fZXZpY3Rfc29tZXRo aW5nKHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZtLAogCSAqIE9uIGVhY2ggbGlzdCwgdGhl IG9sZGVzdCBvYmplY3RzIGxpZSBhdCB0aGUgSEVBRCB3aXRoIHRoZSBmcmVzaGVzdAogCSAqIG9i amVjdCBvbiB0aGUgVEFJTC4KIAkgKi8KLQlpZiAoc3RhcnQgIT0gMCB8fCBlbmQgIT0gdm0tPnRv dGFsKSB7Ci0JCWRybV9tbV9zY2FuX2luaXRfd2l0aF9yYW5nZSgmc2NhbiwgJnZtLT5tbSwgbWlu X3NpemUsCi0JCQkJCSAgICBhbGlnbm1lbnQsIGNhY2hlX2xldmVsLAotCQkJCQkgICAgc3RhcnQs IGVuZCk7Ci0JfSBlbHNlCi0JCWRybV9tbV9zY2FuX2luaXQoJnNjYW4sICZ2bS0+bW0sIG1pbl9z aXplLAotCQkJCSBhbGlnbm1lbnQsIGNhY2hlX2xldmVsKTsKKwlkcm1fbW1fc2Nhbl9pbml0X3dp dGhfcmFuZ2UoJnNjYW4sICZ2bS0+bW0sCisJCQkJICAgIG1pbl9zaXplLCBhbGlnbm1lbnQsIGNh Y2hlX2xldmVsLAorCQkJCSAgICBzdGFydCwgZW5kKTsKIAogCS8qIFJldGlyZSBiZWZvcmUgd2Ug c2VhcmNoIHRoZSBhY3RpdmUgbGlzdC4gQWx0aG91Z2ggd2UgaGF2ZQogCSAqIHJlYXNvbmFibGUg YWNjdXJhY3kgaW4gb3VyIHJldGlyZW1lbnQgbGlzdHMsIHdlIG1heSBoYXZlCmRpZmYgLS1naXQg YS9pbmNsdWRlL2RybS9kcm1fbW0uaCBiL2luY2x1ZGUvZHJtL2RybV9tbS5oCmluZGV4IGZjYWQ3 MThjNWZiNC4uYmFlMGYxMGRhOGUzIDEwMDY0NAotLS0gYS9pbmNsdWRlL2RybS9kcm1fbW0uaAor KysgYi9pbmNsdWRlL2RybS9kcm1fbW0uaApAQCAtMTIwLDcgKzEyMCw2IEBAIHN0cnVjdCBkcm1f bW1fc2NhbiB7CiAJc3RydWN0IGRybV9tbV9ub2RlICpwcmV2X3NjYW5uZWRfbm9kZTsKIAogCXVu c2lnbmVkIGxvbmcgY29sb3I7Ci0JYm9vbCBjaGVja19yYW5nZSA6IDE7CiB9OwogCiAvKioKQEAg LTM4NywxMSArMzg2LDYgQEAgX19kcm1fbW1faW50ZXJ2YWxfZmlyc3QoY29uc3Qgc3RydWN0IGRy bV9tbSAqbW0sIHU2NCBzdGFydCwgdTY0IGxhc3QpOwogCSAgICAgbm9kZV9fICYmIG5vZGVfXy0+ c3RhcnQgPCAoZW5kX18pOwkJCQlcCiAJICAgICBub2RlX18gPSBsaXN0X25leHRfZW50cnkobm9k ZV9fLCBub2RlX2xpc3QpKQogCi12b2lkIGRybV9tbV9zY2FuX2luaXQoc3RydWN0IGRybV9tbV9z Y2FuICpzY2FuLAotCQkgICAgICBzdHJ1Y3QgZHJtX21tICptbSwKLQkJICAgICAgdTY0IHNpemUs Ci0JCSAgICAgIHU2NCBhbGlnbm1lbnQsCi0JCSAgICAgIHVuc2lnbmVkIGxvbmcgY29sb3IpOwog dm9pZCBkcm1fbW1fc2Nhbl9pbml0X3dpdGhfcmFuZ2Uoc3RydWN0IGRybV9tbV9zY2FuICpzY2Fu LAogCQkJCSBzdHJ1Y3QgZHJtX21tICptbSwKIAkJCQkgdTY0IHNpemUsCkBAIC0zOTksNiArMzkz LDMzIEBAIHZvaWQgZHJtX21tX3NjYW5faW5pdF93aXRoX3JhbmdlKHN0cnVjdCBkcm1fbW1fc2Nh biAqc2NhbiwKIAkJCQkgdW5zaWduZWQgbG9uZyBjb2xvciwKIAkJCQkgdTY0IHN0YXJ0LAogCQkJ CSB1NjQgZW5kKTsKKworLyoqCisgKiBkcm1fbW1fc2Nhbl9pbml0IC0gaW5pdGlhbGl6ZSBscnUg c2Nhbm5pbmcKKyAqIEBzY2FuOiBzY2FuIHN0YXRlCisgKiBAbW06IGRybV9tbSB0byBzY2FuCisg KiBAc2l6ZTogc2l6ZSBvZiB0aGUgYWxsb2NhdGlvbgorICogQGFsaWdubWVudDogYWxpZ25tZW50 IG9mIHRoZSBhbGxvY2F0aW9uCisgKiBAY29sb3I6IG9wYXF1ZSB0YWcgdmFsdWUgdG8gdXNlIGZv ciB0aGUgYWxsb2NhdGlvbgorICoKKyAqIFRoaXMgc2ltcGx5IHNldHMgdXAgdGhlIHNjYW5uaW5n IHJvdXRpbmVzIHdpdGggdGhlIHBhcmFtZXRlcnMgZm9yIHRoZSBkZXNpcmVkCisgKiBob2xlLiBO b3RlIHRoYXQgdGhlcmUncyBubyBuZWVkIHRvIHNwZWNpZnkgYWxsb2NhdGlvbiBmbGFncywgc2lu Y2UgdGhleSBvbmx5CisgKiBjaGFuZ2UgdGhlIHBsYWNlIGEgbm9kZSBpcyBhbGxvY2F0ZWQgZnJv bSB3aXRoaW4gYSBzdWl0YWJsZSBob2xlLgorICoKKyAqIFdhcm5pbmc6CisgKiBBcyBsb25nIGFz IHRoZSBzY2FuIGxpc3QgaXMgbm9uLWVtcHR5LCBubyBvdGhlciBvcGVyYXRpb25zIHRoYW4KKyAq IGFkZGluZy9yZW1vdmluZyBub2RlcyB0by9mcm9tIHRoZSBzY2FuIGxpc3QgYXJlIGFsbG93ZWQu CisgKi8KK3N0YXRpYyBpbmxpbmUgdm9pZCBkcm1fbW1fc2Nhbl9pbml0KHN0cnVjdCBkcm1fbW1f c2NhbiAqc2NhbiwKKwkJCQkgICAgc3RydWN0IGRybV9tbSAqbW0sCisJCQkJICAgIHU2NCBzaXpl LAorCQkJCSAgICB1NjQgYWxpZ25tZW50LAorCQkJCSAgICB1bnNpZ25lZCBsb25nIGNvbG9yKQor eworCWRybV9tbV9zY2FuX2luaXRfd2l0aF9yYW5nZShzY2FuLCBtbSwgc2l6ZSwgYWxpZ25tZW50 LCBjb2xvciwKKwkJCQkgICAgMCwgVTY0X01BWCk7Cit9CisKIGJvb2wgZHJtX21tX3NjYW5fYWRk X2Jsb2NrKHN0cnVjdCBkcm1fbW1fc2NhbiAqc2NhbiwKIAkJCSAgIHN0cnVjdCBkcm1fbW1fbm9k ZSAqbm9kZSk7CiBib29sIGRybV9tbV9zY2FuX3JlbW92ZV9ibG9jayhzdHJ1Y3QgZHJtX21tX3Nj YW4gKnNjYW4sCi0tIAoyLjExLjAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVk ZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2ludGVsLWdmeAo=