From mboxrd@z Thu Jan 1 00:00:00 1970 From: John.C.Harrison@Intel.com Subject: [PATCH v4 15/38] drm/i915: Keep the reserved space mechanism happy Date: Mon, 11 Jan 2016 18:42:44 +0000 Message-ID: <1452537788-32136-16-git-send-email-John.C.Harrison@Intel.com> References: <1448278774-31376-1-git-send-email-John.C.Harrison@Intel.com> <1452537788-32136-1-git-send-email-John.C.Harrison@Intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTP id 90B986E2DC for ; Mon, 11 Jan 2016 10:43:25 -0800 (PST) In-Reply-To: <1452537788-32136-1-git-send-email-John.C.Harrison@Intel.com> 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 List-Id: intel-gfx@lists.freedesktop.org RnJvbTogSm9obiBIYXJyaXNvbiA8Sm9obi5DLkhhcnJpc29uQEludGVsLmNvbT4KClJpbmcgc3Bh Y2UgaXMgcmVzZXJ2ZWQgd2hlbiBjb25zdHJ1Y3RpbmcgYSByZXF1ZXN0IHRvIGVuc3VyZSB0aGF0 IHRoZQpzdWJzZXF1ZW50ICdhZGRfcmVxdWVzdCgpJyBjYWxsIGNhbm5vdCBmYWlsIGR1ZSB0byB3 YWl0aW5nIGZvciBzcGFjZQpvbiBhIGJ1c3kgb3IgYnJva2VuIEdQVS4gSG93ZXZlciwgdGhlIHNj aGVkdWxlciBqdW1wcyBpbiB0byB0aGUgbWlkZGxlCm9mIHRoZSBleGVjYnVmZmVyIHByb2Nlc3Mg YmV0d2VlbiByZXF1ZXN0IGNyZWF0aW9uIGFuZCByZXF1ZXN0CnN1Ym1pc3Npb24uIFRodXMgaXQg bmVlZHMgdG8gY2FuY2VsIHRoZSByZXNlcnZlZCBzcGFjZSB3aGVuIHRoZQpyZXF1ZXN0IGlzIHNp bXBseSBhZGRlZCB0byB0aGUgc2NoZWR1bGVyJ3MgcXVldWUgYW5kIG5vdCB5ZXQKc3VibWl0dGVk LiBTaW1pbGFybHksIGl0IG5lZWRzIHRvIHJlLXJlc2VydmUgdGhlIHNwYWNlIHdoZW4gaXQgZmlu YWxseQpkb2VzIHdhbnQgdG8gc2VuZCB0aGUgYmF0Y2ggYnVmZmVyIHRvIHRoZSBoYXJkd2FyZS4K CnYzOiBVcGRhdGVkIHRvIHVzZSBsb2NhbGx5IGNhY2hlZCByZXF1ZXN0IHBvaW50ZXIuCgpGb3I6 IFZJWi0xNTg3ClNpZ25lZC1vZmYtYnk6IEpvaG4gSGFycmlzb24gPEpvaG4uQy5IYXJyaXNvbkBJ bnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZXhlY2J1ZmZlci5j IHwgIDcgKysrKysrKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9zY2hlZHVsZXIuYyAgICAg IHwgIDQgKysrKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMgICAgICAgICAgIHwg MTMgKysrKysrKysrKystLQogMyBmaWxlcyBjaGFuZ2VkLCAyMiBpbnNlcnRpb25zKCspLCAyIGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V4 ZWNidWZmZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V4ZWNidWZmZXIuYwpp bmRleCAwZTA5NjgwLi4xM2M2MjE3IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2dlbV9leGVjYnVmZmVyLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1f ZXhlY2J1ZmZlci5jCkBAIC0xMjQ3LDYgKzEyNDcsMTAgQEAgaW50IGk5MTVfZ2VtX3JpbmdidWZm ZXJfc3VibWlzc2lvbl9maW5hbChzdHJ1Y3QgaTkxNV9leGVjYnVmZmVyX3BhcmFtcyAqcGFyYW1z KQogCS8qIFRoZSBtdXRleCBtdXN0IGJlIGFjcXVpcmVkIGJlZm9yZSBjYWxsaW5nIHRoaXMgZnVu Y3Rpb24gKi8KIAlXQVJOX09OKCFtdXRleF9pc19sb2NrZWQoJnBhcmFtcy0+ZGV2LT5zdHJ1Y3Rf bXV0ZXgpKTsKIAorCXJldCA9IGludGVsX3JpbmdfcmVzZXJ2ZV9zcGFjZShyZXEpOworCWlmIChy ZXQpCisJCXJldHVybiByZXQ7CisKIAlpbnRlbF9ydW50aW1lX3BtX2dldChkZXZfcHJpdik7CiAK IAkvKgpAQCAtMTMwNyw2ICsxMzExLDkgQEAgZXJyb3I6CiAJICovCiAJaW50ZWxfcnVudGltZV9w bV9wdXQoZGV2X3ByaXYpOwogCisJaWYgKHJldCkKKwkJaW50ZWxfcmluZ19yZXNlcnZlZF9zcGFj ZV9jYW5jZWwocmVxLT5yaW5nYnVmKTsKKwogCXJldHVybiByZXQ7CiB9CiAKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfc2NoZWR1bGVyLmMgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X3NjaGVkdWxlci5jCmluZGV4IGM5NGM5NDEuLjNjMjgyYzYgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfc2NoZWR1bGVyLmMKKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9zY2hlZHVsZXIuYwpAQCAtMTQ1LDYgKzE0NSw4IEBAIGludCBpOTE1X3Nj aGVkdWxlcl9xdWV1ZV9leGVjYnVmZmVyKHN0cnVjdCBpOTE1X3NjaGVkdWxlcl9xdWV1ZV9lbnRy eSAqcWUpCiAJaWYgKDEvKmk5MTUuc2NoZWR1bGVyX292ZXJyaWRlICYgaTkxNV9zb19kaXJlY3Rf c3VibWl0Ki8pIHsKIAkJaW50IHJldDsKIAorCQlpbnRlbF9yaW5nX3Jlc2VydmVkX3NwYWNlX2Nh bmNlbChxZS0+cGFyYW1zLnJlcXVlc3QtPnJpbmdidWYpOworCiAJCXNjaGVkdWxlci0+ZmxhZ3Nb cWUtPnBhcmFtcy5yaW5nLT5pZF0gfD0gaTkxNV9zZl9zdWJtaXR0aW5nOwogCQlyZXQgPSBkZXZf cHJpdi0+Z3QuZXhlY2J1Zl9maW5hbCgmcWUtPnBhcmFtcyk7CiAJCXNjaGVkdWxlci0+ZmxhZ3Nb cWUtPnBhcmFtcy5yaW5nLT5pZF0gJj0gfmk5MTVfc2Zfc3VibWl0dGluZzsKQEAgLTE3NCw2ICsx NzYsOCBAQCBpbnQgaTkxNV9zY2hlZHVsZXJfcXVldWVfZXhlY2J1ZmZlcihzdHJ1Y3QgaTkxNV9z Y2hlZHVsZXJfcXVldWVfZW50cnkgKnFlKQogCW5vZGUtPnN0YW1wICA9IGppZmZpZXM7CiAJaTkx NV9nZW1fcmVxdWVzdF9yZWZlcmVuY2Uobm9kZS0+cGFyYW1zLnJlcXVlc3QpOwogCisJaW50ZWxf cmluZ19yZXNlcnZlZF9zcGFjZV9jYW5jZWwobm9kZS0+cGFyYW1zLnJlcXVlc3QtPnJpbmdidWYp OworCiAJV0FSTl9PTihub2RlLT5wYXJhbXMucmVxdWVzdC0+c2NoZWR1bGVyX3FlKTsKIAlub2Rl LT5wYXJhbXMucmVxdWVzdC0+c2NoZWR1bGVyX3FlID0gbm9kZTsKIApkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9scmMuYwppbmRleCAxZmY1NTJhLi43ZWE0ZDk2IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9scmMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMu YwpAQCAtOTM0LDEzICs5MzQsMTcgQEAgaW50IGludGVsX2V4ZWNsaXN0c19zdWJtaXNzaW9uX2Zp bmFsKHN0cnVjdCBpOTE1X2V4ZWNidWZmZXJfcGFyYW1zICpwYXJhbXMpCiAJLyogVGhlIG11dGV4 IG11c3QgYmUgYWNxdWlyZWQgYmVmb3JlIGNhbGxpbmcgdGhpcyBmdW5jdGlvbiAqLwogCVdBUk5f T04oIW11dGV4X2lzX2xvY2tlZCgmcGFyYW1zLT5kZXYtPnN0cnVjdF9tdXRleCkpOwogCisJcmV0 ID0gaW50ZWxfbG9naWNhbF9yaW5nX3Jlc2VydmVfc3BhY2UocmVxKTsKKwlpZiAocmV0KQorCQly ZXR1cm4gcmV0OworCiAJLyoKIAkgKiBVbmNvbmRpdGlvbmFsbHkgaW52YWxpZGF0ZSBncHUgY2Fj aGVzIGFuZCBlbnN1cmUgdGhhdCB3ZSBkbyBmbHVzaAogCSAqIGFueSByZXNpZHVhbCB3cml0ZXMg ZnJvbSB0aGUgcHJldmlvdXMgYmF0Y2guCiAJICovCiAJcmV0ID0gbG9naWNhbF9yaW5nX2ludmFs aWRhdGVfYWxsX2NhY2hlcyhyZXEpOwogCWlmIChyZXQpCi0JCXJldHVybiByZXQ7CisJCWdvdG8g ZXJyOwogCiAJaWYgKHJpbmcgPT0gJmRldl9wcml2LT5yaW5nW1JDU10gJiYKIAkgICAgcGFyYW1z LT5pbnN0cF9tb2RlICE9IGRldl9wcml2LT5yZWxhdGl2ZV9jb25zdGFudHNfbW9kZSkgewpAQCAt OTYyLDEzICs5NjYsMTggQEAgaW50IGludGVsX2V4ZWNsaXN0c19zdWJtaXNzaW9uX2ZpbmFsKHN0 cnVjdCBpOTE1X2V4ZWNidWZmZXJfcGFyYW1zICpwYXJhbXMpCiAKIAlyZXQgPSByaW5nLT5lbWl0 X2JiX3N0YXJ0KHJlcSwgZXhlY19zdGFydCwgcGFyYW1zLT5kaXNwYXRjaF9mbGFncyk7CiAJaWYg KHJldCkKLQkJcmV0dXJuIHJldDsKKwkJZ290byBlcnI7CiAKIAl0cmFjZV9pOTE1X2dlbV9yaW5n X2Rpc3BhdGNoKHJlcSwgcGFyYW1zLT5kaXNwYXRjaF9mbGFncyk7CiAKIAlpOTE1X2dlbV9leGVj YnVmZmVyX3JldGlyZV9jb21tYW5kcyhwYXJhbXMpOwogCiAJcmV0dXJuIDA7CisKK2VycjoKKwlp bnRlbF9yaW5nX3Jlc2VydmVkX3NwYWNlX2NhbmNlbChwYXJhbXMtPnJlcXVlc3QtPnJpbmdidWYp OworCisJcmV0dXJuIHJldDsKIH0KIAogdm9pZCBpbnRlbF9leGVjbGlzdHNfcmV0aXJlX3JlcXVl c3RzKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcpCi0tIAoxLjkuMQoKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlz dApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3Rv cC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK