From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Hellstrom Subject: [PATCH 26/28] drm/vmwgfx: Fixed topology boundary checking for Screen Targets Date: Wed, 12 Aug 2015 22:43:15 -0700 Message-ID: <1439444597-4664-27-git-send-email-thellstrom@vmware.com> References: <1439444597-4664-1-git-send-email-thellstrom@vmware.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mx2.bahnhof.se (mx2.bahnhof.se [213.80.101.12]) by gabe.freedesktop.org (Postfix) with ESMTPS id 1054C6EBEE for ; Wed, 12 Aug 2015 23:06:13 -0700 (PDT) Received: from localhost (mf.bahnhof.se [213.80.101.20]) by mx2-reinject (Postfix) with ESMTP id 48D7C411EE for ; Thu, 13 Aug 2015 07:43:37 +0200 (CEST) Received: from mf3.bahnhof.se ([127.0.0.1]) by localhost (mf3.bahnhof.se [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id LP0ioSv7XyVE for ; Thu, 13 Aug 2015 07:43:29 +0200 (CEST) Received: from mail.shipmail.org (h-5-150-198-217.na.cust.bahnhof.se [5.150.198.217]) by mf3.bahnhof.se (Postfix) with ESMTP id AC33B3E8CD1 for ; Thu, 13 Aug 2015 07:43:27 +0200 (CEST) Received: from mail.shipmail.org (lin0.kontor.shipmail.org [127.0.0.1]) by mail.shipmail.org (Postfix) with ESMTP id 260DF3F400B for ; Thu, 13 Aug 2015 07:43:27 +0200 (CEST) Received: from localhost.localdomain (lin0.kontor.shipmail.org [127.0.0.1]) by mail.shipmail.org (Postfix) with ESMTP id 030193F4009 for ; Thu, 13 Aug 2015 07:43:26 +0200 (CEST) In-Reply-To: <1439444597-4664-1-git-send-email-thellstrom@vmware.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org RnJvbTogU2luY2xhaXIgWWVoIDxzeWVoQHZtd2FyZS5jb20+CgpGb3IgYSBTY3JlZW4gVGFyZ2V0 IGNhcGFibGUgZGlzcGxheSBkZXZpY2UsIHRoZSBkaXNwbGF5IHRvcG9sb2d5IGlzCmxpbWl0ZWQg YnkgU1ZHQV9SRUdfTUFYX1BSSU1BUllfQk9VTkRJTkdfQk9YX01FTS4gIFR3byB2YWx1ZXMgYXJl CmNoZWNrZWQgYWdhaW5zdCB0aGlzIGxpbWl0OgogIDEuICBTaXplIG9mIHRoZSBib3VuZGluZyBi b3ggZW5jbG9zaW5nIGFsbCB0aGUgZGlzcGxheXMsIGFuZAogIDIuICBTaXplIG9mIHRoZSB0b3Rh bCBudW1iZXIgb2YgZGlzcGxheXMsIGUuZy4gZnJhbWVidWZmZXJzCgpUaGUgbGltaXRhdGlvbnMg YWJvdmUgbWVhbiB3ZSBkbyBub3QgaGF2ZSBleGFjdCBtYXggd2lkdGggYW5kCmhlaWdodCBmb3Ig dGhlIHRvcG9sb2d5LiAgVGhlIGJlc3QgY3VycmVudCBvcHRpb24gaXMgdG8gc2V0IHRob3NlIHRv CnRoZSBtYXhpbXVtIHRleHR1cmUgd2lkdGgvaGVpZ2h0LgoKU2lnbmVkLW9mZi1ieTogU2luY2xh aXIgWWVoIDxzeWVoQHZtd2FyZS5jb20+ClJldmlld2VkLWJ5OiBUaG9tYXMgSGVsbHN0cm9tIDx0 aGVsbHN0cm9tQHZtd2FyZS5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhf a21zLmMgfCAzMyArKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFu Z2VkLCAyMiBpbnNlcnRpb25zKCspLCAxMSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9rbXMuYyBiL2RyaXZlcnMvZ3B1L2RybS92bXdnZngv dm13Z2Z4X2ttcy5jCmluZGV4IGNhNjllZDQuLjhiOGFlMjAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv Z3B1L2RybS92bXdnZngvdm13Z2Z4X2ttcy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS92bXdnZngv dm13Z2Z4X2ttcy5jCkBAIC0xMDc3LDkgKzEwNzcsOCBAQCBpbnQgdm13X2ttc19pbml0KHN0cnVj dCB2bXdfcHJpdmF0ZSAqZGV2X3ByaXYpCiAJZGV2LT5tb2RlX2NvbmZpZy5mdW5jcyA9ICZ2bXdf a21zX2Z1bmNzOwogCWRldi0+bW9kZV9jb25maWcubWluX3dpZHRoID0gMTsKIAlkZXYtPm1vZGVf Y29uZmlnLm1pbl9oZWlnaHQgPSAxOwotCS8qIGFzc3VtZWQgbGFyZ2VzdCBmYiBzaXplICovCi0J ZGV2LT5tb2RlX2NvbmZpZy5tYXhfd2lkdGggPSA4MTkyOwotCWRldi0+bW9kZV9jb25maWcubWF4 X2hlaWdodCA9IDgxOTI7CisJZGV2LT5tb2RlX2NvbmZpZy5tYXhfd2lkdGggPSBkZXZfcHJpdi0+ dGV4dHVyZV9tYXhfd2lkdGg7CisJZGV2LT5tb2RlX2NvbmZpZy5tYXhfaGVpZ2h0ID0gZGV2X3By aXYtPnRleHR1cmVfbWF4X2hlaWdodDsKIAogCXJldCA9IHZtd19rbXNfc3RkdV9pbml0X2Rpc3Bs YXkoZGV2X3ByaXYpOwogCWlmIChyZXQpIHsKQEAgLTE1ODAsNiArMTU3OSw3IEBAIGludCB2bXdf a21zX3VwZGF0ZV9sYXlvdXRfaW9jdGwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0 YSwKIAl1bnNpZ25lZCByZWN0c19zaXplOwogCWludCByZXQ7CiAJaW50IGk7CisJdTY0IHRvdGFs X3BpeGVscyA9IDA7CiAJc3RydWN0IGRybV9tb2RlX2NvbmZpZyAqbW9kZV9jb25maWcgPSAmZGV2 LT5tb2RlX2NvbmZpZzsKIAlzdHJ1Y3QgZHJtX3Ztd19yZWN0IGJvdW5kaW5nX2JveCA9IHswfTsK IApAQCAtMTYyMiwyMCArMTYyMiwzMSBAQCBpbnQgdm13X2ttc191cGRhdGVfbGF5b3V0X2lvY3Rs KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCiAKIAkJaWYgKHJlY3RzW2ldLnkg KyByZWN0c1tpXS5oID4gYm91bmRpbmdfYm94LmgpCiAJCQlib3VuZGluZ19ib3guaCA9IHJlY3Rz W2ldLnkgKyByZWN0c1tpXS5oOworCisJCXRvdGFsX3BpeGVscyArPSAodTY0KSByZWN0c1tpXS53 ICogKHU2NCkgcmVjdHNbaV0uaDsKIAl9CiAKLQkvKgotCSAqIEZvciBTY3JlZW4gVGFyZ2V0IERp c3BsYXkgVW5pdCwgYWxsIHRoZSBkaXNwbGF5cyBtdXN0IGZpdAotCSAqIGluc2lkZSBvZiBtYXhp bXVtIHRleHR1cmUgc2l6ZS4KLQkgKi8KLQlpZiAoZGV2X3ByaXYtPmFjdGl2ZV9kaXNwbGF5X3Vu aXQgPT0gdm13X2R1X3NjcmVlbl90YXJnZXQpCi0JCWlmIChib3VuZGluZ19ib3gudyA+IGRldl9w cml2LT50ZXh0dXJlX21heF93aWR0aCB8fAotCQkgICAgYm91bmRpbmdfYm94LmggPiBkZXZfcHJp di0+dGV4dHVyZV9tYXhfaGVpZ2h0KSB7Ci0JCQlEUk1fRVJST1IoIkxheW91dCBleGNlZWRzIG1h eGltdW0gdGV4dHVyZSBzaXplXG4iKTsKKwlpZiAoZGV2X3ByaXYtPmFjdGl2ZV9kaXNwbGF5X3Vu aXQgPT0gdm13X2R1X3NjcmVlbl90YXJnZXQpIHsKKwkJLyoKKwkJICogRm9yIFNjcmVlbiBUYXJn ZXRzLCB0aGUgbGltaXRzIGZvciBhIHRvcGxvZ3kgYXJlOgorCQkgKgkxLiBCb3VuZGluZyBib3gg KGFzc3VtaW5nIDMyYnBwKSBtdXN0IGJlIDwgcHJpbV9iYl9tZW0KKwkJICogICAgICAyLiBUb3Rh bCBwaXhlbHMgKGFzc3VtaW5nIDMyYnBwKSBtdXN0IGJlIDwgcHJpbV9iYl9tZW0KKwkJICovCisJ CXU2NCBiYl9tZW0gICAgPSBib3VuZGluZ19ib3gudyAqIGJvdW5kaW5nX2JveC5oICogNDsKKwkJ dTY0IHBpeGVsX21lbSA9IHRvdGFsX3BpeGVscyAqIDQ7CisKKwkJaWYgKGJiX21lbSA+IGRldl9w cml2LT5wcmltX2JiX21lbSkgeworCQkJRFJNX0VSUk9SKCJUb3BvbG9neSBpcyBiZXlvbmQgc3Vw cG9ydGVkIGxpbWl0cy5cbiIpOwogCQkJcmV0ID0gLUVJTlZBTDsKIAkJCWdvdG8gb3V0X2ZyZWU7 CiAJCX0KIAorCQlpZiAocGl4ZWxfbWVtID4gZGV2X3ByaXYtPnByaW1fYmJfbWVtKSB7CisJCQlE Uk1fRVJST1IoIkNvbWJpbmVkIG91dHB1dCBzaXplIHRvbyBsYXJnZVxuIik7CisJCQlyZXQgPSAt RUlOVkFMOworCQkJZ290byBvdXRfZnJlZTsKKwkJfQorCX0KIAogCXZtd19kdV91cGRhdGVfbGF5 b3V0KGRldl9wcml2LCBhcmctPm51bV9vdXRwdXRzLCByZWN0cyk7CiAKLS0gCjIuMS4wCgoKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1h aWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5m cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK