From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paulo Zanoni Subject: [RFC] drm/i915: prevent out of range pt in the PDE macros (take 2) Date: Fri, 12 Jun 2015 18:30:56 -0300 Message-ID: <1434144656-1557-1-git-send-email-przanoni@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-qg0-f46.google.com (mail-qg0-f46.google.com [209.85.192.46]) by gabe.freedesktop.org (Postfix) with ESMTP id 27E576E017 for ; Fri, 12 Jun 2015 14:31:53 -0700 (PDT) Received: by qgfa66 with SMTP id a66so15314816qgf.0 for ; Fri, 12 Jun 2015 14:31:52 -0700 (PDT) List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org Cc: Paulo Zanoni List-Id: intel-gfx@lists.freedesktop.org RnJvbTogUGF1bG8gWmFub25pIDxwYXVsby5yLnphbm9uaUBpbnRlbC5jb20+CgpXZSB0cmllZCB0 byBmaXggdGhpcyBpbiB0aGUgZm9sbG93aW5nIGNvbW1pdDoKCmNvbW1pdCBmZGM0NTRjMTQ4NGEy MGUxMzQ1Y2Y0ZTRkN2E5ZmVhZWU4MTQxNDdmCkF1dGhvcjogTWljaGVsIFRoaWVycnkgPG1pY2hl bC50aGllcnJ5QGludGVsLmNvbT4KRGF0ZTogICBUdWUgTWFyIDI0IDE1OjQ2OjE5IDIwMTUgKzAw MDAKICAgIGRybS9pOTE1OiBQcmV2ZW50IG91dCBvZiByYW5nZSBwdCBpbiBnZW42X2Zvcl9lYWNo X3BkZQoKYnV0IHRoZSBzdGF0aWMgYW5hbHl6ZXIgc3RpbGwgY29tcGxhaW5zIHRoYXQsIGp1c3Qg YmVmb3JlIHdlIGJyZWFrIGR1ZQp0byAiaXRlciA8IEk5MTVfUERFUyIsIHdlIGRvICJwdCA9IChw ZCktPnBhZ2VfdGFibGVbaXRlcl0iIHdpdGggYW4KaXRlciB2YWx1ZSB0aGF0IGlzIGJpZ2dlciB0 aGFuIEk5MTVfUERFUy4gT2YgY291cnNlLCB0aGlzIGlzbid0IHJlYWxseQphIHByb2JsZW0gc2lu Y2Ugbm8gb25lIHVzZXMgcHQgb3V0c2lkZSB0aGUgbWFjcm8uIFN0aWxsLCBldmVyeSBzaW5nbGUK bmV3IHVzYWdlIG9mIHRoZSBtYWNybyB3aWxsIGNyZWF0ZSBhIG5ldyBpc3N1ZSBmb3IgdXMgdG8g bWFyayBhcyBhCmZhbHNlIHBvc3NpdGl2ZS4KCkFmdGVyIHRoZSBjb21taXQgbWVudGlvbmVkIGFi b3ZlIHdlIGFsc28gY3JlYXRlZCBzb21lIG5ldyB2ZXJzaW9ucyBvZgp0aGUgbWFjcm9zLCBzbyB0 aGV5IGNhcnJ5IHRoZSBzYW1lICJwcm9ibGVtIi4KCkluIG9yZGVyIHRvICJzb2x2ZSIgdGhpcyAi cHJvYmxlbSIsIGxldCdzIGxlYXZlIHRoZSBtYWNybyB3aXRoIGEgTlVMTAp2YWx1ZSBmb3IgcHQu IFNvIGlmIHNvbWVib2R5IHVzZXMgaXQsIHdlJ3JlIG1vcmUgbGlrZWx5IHRvIGdldCBhIGJpZwpl cnJvciBtZXNzYWdlIGluc3RlYWQgb2Ygc29tZSBzaWxlbnQgZmFpbHVyZS4gSSBob3BlIHRoZSBz dGF0aWMKYW5hbHl6ZXIgd29uJ3QgY29tcGxhaW4gYWJvdXQgdGhlIG5ldyBzb2x1dGlvbiAoSSBk b24ndCBoYXZlIGEgd2F5IHRvCmNoZWNrIHRoaXMhKS4KCkkga25vdywgdGhlIHNvbHV0aW9uIGxv b2tzIHJlYWxseSB1Z2x5LiBJIGFtIGhvcGluZyB0aGUgcmV2aWV3ZXJzIHdpbGwKaGVscCB1cyBk ZWNpZGUgaWYgd2UgcHJlZmVyIHRoaXMgcGF0Y2ggb3IgaWYgd2UgcHJlZmVyIHRvIGtlZXAgbWFy a2luZwp0aGluZ3MgYXMgZmFsc2UgcG9zaXRpdmVzLgoKQ2M6IE1pY2hlbCBUaGllcnJ5IDxtaWNo ZWwudGhpZXJyeUBpbnRlbC5jb20+ClNpZ25lZC1vZmYtYnk6IFBhdWxvIFphbm9uaSA8cGF1bG8u ci56YW5vbmlAaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0 dC5oIHwgMTMgKysrKysrKysrLS0tLQogMSBmaWxlIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwg NCBkZWxldGlvbnMoLSkKCkkgc2VudCB0aGlzIGFzIGFuIFJGQyBiZWNhdXNlIEkgcmVhbGx5IGRv bid0IGtub3cgaWYgY29tcGxpY2F0aW5nIHRoZQptYWNybyBldmVuIG1vcmUgd2lsbCBoZWxwIHVz IGluIGFueSB3YXkuIEkgd29uJ3QgcmVhbGx5IGJlIHN1cnByaXNlZAppZiBJIHNlZSBOQUNLcyBv biB0aGlzIHBhdGNoLCBzbyBkb24ndCBoZXNpdGF0ZSBpZiB5b3Ugd2FudCB0by4KCkFsc28sIGFs bCBJIGRpZCB3YXMgYm9vdCBhIEtlcm5lbCB3aXRoIHRoaXMgcGF0Y2ggYW5kIG1ha2Ugc3VyZSBp dApzaG93cyB0aGUgZGVza3RvcC4gU28gY29uc2lkZXIgdGhpcyBhcyB1bnRlc3RlZCwgcG9zc2li bHkgYnJva2VuLgoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0 dC5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmgKaW5kZXggMGQ0NmRkMi4u YjIwMmNhMCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmgK KysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmgKQEAgLTM1Miw3ICszNTIs OCBAQCBzdHJ1Y3QgaTkxNV9od19wcGd0dCB7CiAgKi8KICNkZWZpbmUgZ2VuNl9mb3JfZWFjaF9w ZGUocHQsIHBkLCBzdGFydCwgbGVuZ3RoLCB0ZW1wLCBpdGVyKSBcCiAJZm9yIChpdGVyID0gZ2Vu Nl9wZGVfaW5kZXgoc3RhcnQpOyBcCi0JICAgICBwdCA9IChwZCktPnBhZ2VfdGFibGVbaXRlcl0s IGxlbmd0aCA+IDAgJiYgaXRlciA8IEk5MTVfUERFUzsgXAorCSAgICAgcHQgPSBpdGVyIDwgSTkx NV9QREVTID8gKHBkKS0+cGFnZV90YWJsZVtpdGVyXSA6IE5VTEwsIFwKKwkgICAgIGxlbmd0aCA+ IDAgJiYgaXRlciA8IEk5MTVfUERFUzsgXAogCSAgICAgaXRlcisrLCBcCiAJICAgICB0ZW1wID0g QUxJR04oc3RhcnQrMSwgMSA8PCBHRU42X1BERV9TSElGVCkgLSBzdGFydCwgXAogCSAgICAgdGVt cCA9IG1pbl90KHVuc2lnbmVkLCB0ZW1wLCBsZW5ndGgpLCBcCkBAIC0zNjAsNyArMzYxLDggQEAg c3RydWN0IGk5MTVfaHdfcHBndHQgewogCiAjZGVmaW5lIGdlbjZfZm9yX2FsbF9wZGVzKHB0LCBw cGd0dCwgaXRlcikgIFwKIAlmb3IgKGl0ZXIgPSAwOwkJXAotCSAgICAgcHQgPSBwcGd0dC0+cGQu cGFnZV90YWJsZVtpdGVyXSwgaXRlciA8IEk5MTVfUERFUzsJXAorCSAgICAgcHQgPSBpdGVyIDwg STkxNV9QREVTID8gcHBndHQtPnBkLnBhZ2VfdGFibGVbaXRlcl0gOiBOVUxMLCBcCisJICAgICBp dGVyIDwgSTkxNV9QREVTOwlcCiAJICAgICBpdGVyKyspCiAKIHN0YXRpYyBpbmxpbmUgdWludDMy X3QgaTkxNV9wdGVfaW5kZXgodWludDY0X3QgYWRkcmVzcywgdWludDMyX3QgcGRlX3NoaWZ0KQpA QCAtNDE3LDcgKzQxOSw4IEBAIHN0YXRpYyBpbmxpbmUgdWludDMyX3QgZ2VuNl9wZGVfaW5kZXgo dWludDMyX3QgYWRkcikKICAqLwogI2RlZmluZSBnZW44X2Zvcl9lYWNoX3BkZShwdCwgcGQsIHN0 YXJ0LCBsZW5ndGgsIHRlbXAsIGl0ZXIpCQlcCiAJZm9yIChpdGVyID0gZ2VuOF9wZGVfaW5kZXgo c3RhcnQpOyBcCi0JICAgICBwdCA9IChwZCktPnBhZ2VfdGFibGVbaXRlcl0sIGxlbmd0aCA+IDAg JiYgaXRlciA8IEk5MTVfUERFUzsJXAorCSAgICAgcHQgPSBpdGVyIDwgSTkxNV9QREVTID8gKHBk KS0+cGFnZV90YWJsZVtpdGVyXSA6IE5VTEwsCVwKKwkgICAgIGxlbmd0aCA+IDAgJiYgaXRlciA8 IEk5MTVfUERFUzsJXAogCSAgICAgaXRlcisrLAkJCQlcCiAJICAgICB0ZW1wID0gQUxJR04oc3Rh cnQrMSwgMSA8PCBHRU44X1BERV9TSElGVCkgLSBzdGFydCwJXAogCSAgICAgdGVtcCA9IG1pbih0 ZW1wLCBsZW5ndGgpLAkJCQkJXApAQCAtNDI1LDcgKzQyOCw5IEBAIHN0YXRpYyBpbmxpbmUgdWlu dDMyX3QgZ2VuNl9wZGVfaW5kZXgodWludDMyX3QgYWRkcikKIAogI2RlZmluZSBnZW44X2Zvcl9l YWNoX3BkcGUocGQsIHBkcCwgc3RhcnQsIGxlbmd0aCwgdGVtcCwgaXRlcikJCVwKIAlmb3IgKGl0 ZXIgPSBnZW44X3BkcGVfaW5kZXgoc3RhcnQpOwlcCi0JICAgICBwZCA9IChwZHApLT5wYWdlX2Rp cmVjdG9yeVtpdGVyXSwgbGVuZ3RoID4gMCAmJiBpdGVyIDwgR0VOOF9MRUdBQ1lfUERQRVM7CVwK KwkgICAgIHBkID0gaXRlciA8IEdFTjhfTEVHQUNZX1BEUEVTID8JCQkJXAorCQkgIChwZHApLT5w YWdlX2RpcmVjdG9yeVtpdGVyXSA6IE5VTEwsCQkJXAorCSAgICAgbGVuZ3RoID4gMCAmJiBpdGVy IDwgR0VOOF9MRUdBQ1lfUERQRVM7CQkJXAogCSAgICAgaXRlcisrLAkJCQlcCiAJICAgICB0ZW1w ID0gQUxJR04oc3RhcnQrMSwgMSA8PCBHRU44X1BEUEVfU0hJRlQpIC0gc3RhcnQsCVwKIAkgICAg IHRlbXAgPSBtaW4odGVtcCwgbGVuZ3RoKSwJCQkJCVwKLS0gCjIuMS40CgpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0 CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9w Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=