From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH] drm: Make integer overflow checking cover universal cursor updates (v2) Date: Tue, 14 Apr 2015 09:08:03 +0200 Message-ID: <20150414070803.GE6092@phenom.ffwll.local> References: <20150407061239.GL6354@phenom.ffwll.local> <1428948373-20077-1-git-send-email-matthew.d.roper@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wi0-f174.google.com (mail-wi0-f174.google.com [209.85.212.174]) by gabe.freedesktop.org (Postfix) with ESMTP id D5E396E672 for ; Tue, 14 Apr 2015 00:06:04 -0700 (PDT) Received: by wizk4 with SMTP id k4so101049772wiz.1 for ; Tue, 14 Apr 2015 00:06:04 -0700 (PDT) Content-Disposition: inline In-Reply-To: <1428948373-20077-1-git-send-email-matthew.d.roper@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Matt Roper Cc: intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gTW9uLCBBcHIgMTMsIDIwMTUgYXQgMTE6MDY6MTNBTSAtMDcwMCwgTWF0dCBSb3BlciB3cm90 ZToKPiBPdXIgbGVnYWN5IFNldFBsYW5lIHVwZGF0ZXMgcGVyZm9ybSBpbnRlZ2VyIG92ZXJmbG93 IGNoZWNraW5nIG9uIGEKPiBwbGFuZSdzIGRlc3RpbmF0aW9uIHJlY3RhbmdsZSBpbiBkcm1fbW9k ZV9zZXRwbGFuZSgpLCBhbmQgYXRvbWljIHVwZGF0ZXMKPiBoYW5kbGVkIGFzIHBhcnQgb2YgYSBk cm1fYXRvbWljX3N0YXRlIHRyYW5zYWN0aW9uIGRvIHRoZSBzYW1lIGNoZWNraW5nCj4gaW4gZHJt X2F0b21pY19wbGFuZV9jaGVjaygpLiAgSG93ZXZlciBsZWdhY3kgY3Vyc29yIHVwZGF0ZXMgdGhh dCBnZXQKPiByb3V0ZWQgdGhyb3VnaCB1bml2ZXJzYWwgcGxhbmUgaW50ZXJmYWNlcyBtYXkgYnlw YXNzIHRoaXMgb3ZlcmZsb3cKPiBjaGVja2luZyBpZiB0aGUgZHJpdmVyJ3MgLnVwZGF0ZV9wbGFu ZSBpcyBzZXJ2aWNlZCBieSB0aGUgdHJhbnNpdGlvbmFsCj4gcGxhbmUgaGVscGVycyByYXRoZXIg dGhhbiB0aGUgZnVsbCBhdG9taWMgcGxhbmUgaGVscGVycy4KPiAKPiBNb3ZlIHRoZSBjaGVjayBm b3IgZGVzdGluYXRpb24gcmVjdGFuZ2xlIGludGVnZXIgb3ZlcmZsb3cgZnJvbSB0aGUKPiBkcm1f bW9kZV9zZXRwbGFuZSgpIHRvIF9fc2V0cGxhbmVfaW50ZXJuYWwoKSBzbyB0aGF0IGl0IGFsc28g Y292ZXJzCj4gY3Vyc29yIG9wZXJhdGlvbnMuCj4gCj4gVGhpcyBmaXhlcyBhbiBpc3N1ZSBmaXJz dCBub3RpY2VkIHdpdGggaTkxNSBjb21taXQ6Cj4gCj4gICAgICAgICBjb21taXQgZmY0MmUwOTNl OWM5YzE3YTZlMWQ2YWFiMjQ4NzVhMzY3OTVmOTI2ZQo+ICAgICAgICAgQXV0aG9yOiBEYW5pZWwg VmV0dGVyIDxkYW5pZWwudmV0dGVyQGZmd2xsLmNoPgo+ICAgICAgICAgRGF0ZTogICBNb24gTWFy IDIgMTY6MzU6MjAgMjAxNSArMDEwMAo+IAo+ICAgICAgICAgICAgIFJldmVydCAiZHJtL2k5MTU6 IFN3aXRjaCBwbGFuZXMgZnJvbSB0cmFuc2l0aW9uYWwgaGVscGVycyB0byBmdWxsCj4gICAgICAg ICAgICAgYXRvbWljIGhlbHBlcnMiCj4gCj4gVGhlIGFib3ZlIHJldmVydCBzd2l0Y2hlZCB1cyBm cm9tIGZ1bGwgYXRvbWljIGhlbHBlcnMgYmFjayB0byB0aGUKPiB0cmFuc2l0aW9uYWwgaGVscGVy cywgYW5kIGluIGRvaW5nIHNvIHdlIGxvc3QgdGhlIG92ZXJmbG93IGNoZWNraW5nIGhlcmUKPiBm b3IgdW5pdmVyc2FsIGN1cnNvciB1cGRhdGVzLiAgRXZlbiB0aG91Z2ggc3VjaCBleHRyZW1lIGN1 cnNvciBwb3NpdGlvbnMKPiBhcmUgdW5saWtlbHkgdG8gYWN0dWFsbHkgaGFwcGVuIGluIHRoZSB3 aWxkLCB3ZSBzdGlsbCBkb24ndCB3YW50IHRoZXJlCj4gdG8gYmUgYSBjaGFuZ2Ugb2YgYmVoYXZp b3Igd2hlbiBkcml2ZXJzIHN3aXRjaCBmcm9tIHRyYW5zaXRpb25hbCBoZWxwZXJzCj4gdG8gZnVs bCBoZWxwZXJzLgo+IAo+IHYyOiBNb3ZlIGNoZWNrIGZyb20gc2V0cGxhbmUgaW9jdGwgdG8gc2V0 cGxhbmVfaW50ZXJuYWwgcmF0aGVyIHRoYW4KPiAgICAgYWRkaW5nIGFuIGFkZGl0aW9uYWwgY29w eSBvZiB0aGUgY2hlY2tzIHRvIHRoZSB0cmFuc2l0aW9uYWwgcGxhbmUKPiAgICAgaGVscGVycy4g IChEYW5pZWwpCj4gCj4gQ2M6IERhbmllbCBWZXR0ZXIgPGRhbmllbEBmZndsbC5jaD4KPiBUZXN0 Y2FzZTogaWd0L2ttc19jdXJzb3JfY3JjCj4gQnVnemlsbGE6IGh0dHBzOi8vYnVncy5mcmVlZGVz a3RvcC5vcmcvc2hvd19idWcuY2dpP2lkPTg0MjY5Cj4gU2lnbmVkLW9mZi1ieTogTWF0dCBSb3Bl ciA8bWF0dGhldy5kLnJvcGVyQGludGVsLmNvbT4KCkFwcGxpZWQgdG8gZHJtLW1pc2MsIHRoYW5r cy4KLURhbmllbAoKPiAtLS0KPiAgZHJpdmVycy9ncHUvZHJtL2RybV9jcnRjLmMgfCAyMiArKysr KysrKysrKy0tLS0tLS0tLS0tCj4gIDEgZmlsZSBjaGFuZ2VkLCAxMSBpbnNlcnRpb25zKCspLCAx MSBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9jcnRj LmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2NydGMuYwo+IGluZGV4IGI5MTQ4ODIuLjE2MDY0N2Eg MTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9jcnRjLmMKPiArKysgYi9kcml2ZXJz L2dwdS9kcm0vZHJtX2NydGMuYwo+IEBAIC0yNTA3LDYgKzI1MDcsMTcgQEAgc3RhdGljIGludCBf X3NldHBsYW5lX2ludGVybmFsKHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lLAo+ICAJCWdvdG8gb3V0 Owo+ICAJfQo+ICAKPiArCS8qIEdpdmUgZHJpdmVycyBzb21lIGhlbHAgYWdhaW5zdCBpbnRlZ2Vy IG92ZXJmbG93cyAqLwo+ICsJaWYgKGNydGNfdyA+IElOVF9NQVggfHwKPiArCSAgICBjcnRjX3gg PiBJTlRfTUFYIC0gKGludDMyX3QpIGNydGNfdyB8fAo+ICsJICAgIGNydGNfaCA+IElOVF9NQVgg fHwKPiArCSAgICBjcnRjX3kgPiBJTlRfTUFYIC0gKGludDMyX3QpIGNydGNfaCkgewo+ICsJCURS TV9ERUJVR19LTVMoIkludmFsaWQgQ1JUQyBjb29yZGluYXRlcyAldXgldSslZCslZFxuIiwKPiAr CQkJICAgICAgY3J0Y193LCBjcnRjX2gsIGNydGNfeCwgY3J0Y195KTsKPiArCQlyZXR1cm4gLUVS QU5HRTsKPiArCX0KPiArCj4gKwo+ICAJZmJfd2lkdGggPSBmYi0+d2lkdGggPDwgMTY7Cj4gIAlm Yl9oZWlnaHQgPSBmYi0+aGVpZ2h0IDw8IDE2Owo+ICAKPiBAQCAtMjU5MSwxNyArMjYwMiw2IEBA IGludCBkcm1fbW9kZV9zZXRwbGFuZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRh LAo+ICAJaWYgKCFkcm1fY29yZV9jaGVja19mZWF0dXJlKGRldiwgRFJJVkVSX01PREVTRVQpKQo+ ICAJCXJldHVybiAtRUlOVkFMOwo+ICAKPiAtCS8qIEdpdmUgZHJpdmVycyBzb21lIGhlbHAgYWdh aW5zdCBpbnRlZ2VyIG92ZXJmbG93cyAqLwo+IC0JaWYgKHBsYW5lX3JlcS0+Y3J0Y193ID4gSU5U X01BWCB8fAo+IC0JICAgIHBsYW5lX3JlcS0+Y3J0Y194ID4gSU5UX01BWCAtIChpbnQzMl90KSBw bGFuZV9yZXEtPmNydGNfdyB8fAo+IC0JICAgIHBsYW5lX3JlcS0+Y3J0Y19oID4gSU5UX01BWCB8 fAo+IC0JICAgIHBsYW5lX3JlcS0+Y3J0Y195ID4gSU5UX01BWCAtIChpbnQzMl90KSBwbGFuZV9y ZXEtPmNydGNfaCkgewo+IC0JCURSTV9ERUJVR19LTVMoIkludmFsaWQgQ1JUQyBjb29yZGluYXRl cyAldXgldSslZCslZFxuIiwKPiAtCQkJICAgICAgcGxhbmVfcmVxLT5jcnRjX3csIHBsYW5lX3Jl cS0+Y3J0Y19oLAo+IC0JCQkgICAgICBwbGFuZV9yZXEtPmNydGNfeCwgcGxhbmVfcmVxLT5jcnRj X3kpOwo+IC0JCXJldHVybiAtRVJBTkdFOwo+IC0JfQo+IC0KPiAgCS8qCj4gIAkgKiBGaXJzdCwg ZmluZCB0aGUgcGxhbmUsIGNydGMsIGFuZCBmYiBvYmplY3RzLiAgSWYgbm90IGF2YWlsYWJsZSwK PiAgCSAqIHdlIGRvbid0IGJvdGhlciB0byBjYWxsIHRoZSBkcml2ZXIuCj4gLS0gCj4gMS44LjUu MQo+IAoKLS0gCkRhbmllbCBWZXR0ZXIKU29mdHdhcmUgRW5naW5lZXIsIEludGVsIENvcnBvcmF0 aW9uCmh0dHA6Ly9ibG9nLmZmd2xsLmNoCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZy ZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGlu Zm8vaW50ZWwtZ2Z4Cg==