From mboxrd@z Thu Jan 1 00:00:00 1970 From: John.C.Harrison@Intel.com Subject: [PATCH v3 02/28] drm/i915: Add reference count to request structure Date: Mon, 24 Nov 2014 18:49:24 +0000 Message-ID: <1416854990-1920-3-git-send-email-John.C.Harrison@Intel.com> References: <1416854990-1920-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 mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTP id EC4216EE16 for ; Mon, 24 Nov 2014 10:50:14 -0800 (PST) In-Reply-To: <1416854990-1920-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 RnJvbTogSm9obiBIYXJyaXNvbiA8Sm9obi5DLkhhcnJpc29uQEludGVsLmNvbT4KClRoZSBwbGFu IGlzIHRvIHVzZSByZXF1ZXN0IHN0cnVjdHVyZXMgZXZlcnl3aGVyZSB0aGF0IHNlcW5vIHZhbHVl cyB3ZXJlCnByZXZpb3VzbHkgdXNlZC4gVGhpcyBtZWFucyBzYXZpbmcgcG9pbnRlcnMgdG8gc3Ry dWN0dXJlcyBpbiBwbGFjZXMgdGhhdCB1c2VkIHRvCmJlIHNpbXBsZSBpbnRlZ2Vycy4gSW4gdHVy biwgdGhhdCBtZWFucyB0aGF0IHRoZSB0YXJnZXQgc3RydWN0dXJlIG5vdyBuZWVkcyBtdWNoCm1v cmUgc3RyaW5nZW50IGxpZmV0aW1lIHRyYWNraW5nLiBUaGF0IGlzLCBpdCBtdXN0IG5vdCBiZSBm cmVlZCB3aGlsZSBzb21lIG90aGVyCnJhbmRvbSBvYmplY3Qgc3RpbGwgaG9sZHMgYSBwb2ludGVy IHRvIGl0LgoKVG8gYWNoaWV2ZSB0aGlzIHRyYWNraW5nLCBhIHJlZmVyZW5jZSBjb3VudCBuZWVk cyB0byBiZSBhZGRlZC4gV2hlbmV2ZXIgYQpwb2ludGVyIHRvIHRoZSBzdHJ1Y3R1cmUgaXMgc2F2 ZWQgYXdheSwgdGhlIGNvdW50IG11c3QgYmUgaW5jcmVtZW50ZWQgYW5kIHRoZQpmcmVlIG11c3Qg b25seSBvY2N1ciB3aGVuIGFsbCByZWZlcmVuY2VzIGhhdmUgYmVlbiByZWxlYXNlZC4KCkZvcjog VklaLTQzNzcKU2lnbmVkLW9mZi1ieTogSm9obiBIYXJyaXNvbiA8Sm9obi5DLkhhcnJpc29uQElu dGVsLmNvbT4KUmV2aWV3ZWQtYnk6IFRob21hcyBEYW5pZWwgPFRob21hcy5EYW5pZWxAaW50ZWwu Y29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggICAgICAgICB8ICAgMjgg KysrKysrKysrKysrKysrKysrKysrKysrKysrKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9n ZW0uYyAgICAgICAgIHwgICAyMCArKysrKysrKysrKysrKy0tLS0tLQogZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfbHJjLmMgICAgICAgIHwgICAgNCArKystCiBkcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9yaW5nYnVmZmVyLmMgfCAgICA0ICsrKy0KIDQgZmlsZXMgY2hhbmdlZCwgNDggaW5z ZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAppbmRleCBm NmY5MmYxLi5hMzE3YWRmIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Ry di5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKQEAgLTE5OTUsNiArMTk5 NSw4IEBAIHZvaWQgaTkxNV9nZW1fdHJhY2tfZmIoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3Qg Km9sZCwKICAqIGFuIGVtaXNzaW9uIHRpbWUgd2l0aCBzZXFub3MgZm9yIHRyYWNraW5nIGhvdyBm YXIgYWhlYWQgb2YgdGhlIEdQVSB3ZSBhcmUuCiAgKi8KIHN0cnVjdCBkcm1faTkxNV9nZW1fcmVx dWVzdCB7CisJc3RydWN0IGtyZWYgcmVmOworCiAJLyoqIE9uIFdoaWNoIHJpbmcgdGhpcyByZXF1 ZXN0IHdhcyBnZW5lcmF0ZWQgKi8KIAlzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nOwogCkBA IC0yMDI0LDYgKzIwMjYsMzIgQEAgc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0IHsKIAlzdHJ1 Y3QgbGlzdF9oZWFkIGNsaWVudF9saXN0OwogfTsKIAordm9pZCBpOTE1X2dlbV9yZXF1ZXN0X2Zy ZWUoc3RydWN0IGtyZWYgKnJlcV9yZWYpOworCitzdGF0aWMgaW5saW5lIHZvaWQKK2k5MTVfZ2Vt X3JlcXVlc3RfcmVmZXJlbmNlKHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxKQorewor CWtyZWZfZ2V0KCZyZXEtPnJlZik7Cit9CisKK3N0YXRpYyBpbmxpbmUgdm9pZAoraTkxNV9nZW1f cmVxdWVzdF91bnJlZmVyZW5jZShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSkKK3sK KwlrcmVmX3B1dCgmcmVxLT5yZWYsIGk5MTVfZ2VtX3JlcXVlc3RfZnJlZSk7Cit9CisKK3N0YXRp YyBpbmxpbmUgdm9pZCBpOTE1X2dlbV9yZXF1ZXN0X2Fzc2lnbihzdHJ1Y3QgZHJtX2k5MTVfZ2Vt X3JlcXVlc3QgKipwZHN0LAorCQkJCQkgICBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnNy YykKK3sKKwlpZiAoc3JjKQorCQlpOTE1X2dlbV9yZXF1ZXN0X3JlZmVyZW5jZShzcmMpOworCisJ aWYgKCpwZHN0KQorCQlpOTE1X2dlbV9yZXF1ZXN0X3VucmVmZXJlbmNlKCpwZHN0KTsKKworCSpw ZHN0ID0gc3JjOworfQorCiBzdHJ1Y3QgZHJtX2k5MTVfZmlsZV9wcml2YXRlIHsKIAlzdHJ1Y3Qg ZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXY7CiAJc3RydWN0IGRybV9maWxlICpmaWxlOwpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtLmMKaW5kZXggMzc2NTAyNy4uNTY5YzJkYSAxMDA2NDQKLS0tIGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2dlbS5jCkBAIC0yNTY5LDIxICsyNTY5LDMwIEBAIHN0YXRpYyB2b2lkIGk5MTVfc2V0X3Jl c2V0X3N0YXR1cyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAKIHN0YXRpYyB2 b2lkIGk5MTVfZ2VtX2ZyZWVfcmVxdWVzdChzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJl cXVlc3QpCiB7Ci0Jc3RydWN0IGludGVsX2NvbnRleHQgKmN0eCA9IHJlcXVlc3QtPmN0eDsKLQog CWxpc3RfZGVsKCZyZXF1ZXN0LT5saXN0KTsKIAlpOTE1X2dlbV9yZXF1ZXN0X3JlbW92ZV9mcm9t X2NsaWVudChyZXF1ZXN0KTsKIAorCWk5MTVfZ2VtX3JlcXVlc3RfdW5yZWZlcmVuY2UocmVxdWVz dCk7Cit9CisKK3ZvaWQgaTkxNV9nZW1fcmVxdWVzdF9mcmVlKHN0cnVjdCBrcmVmICpyZXFfcmVm KQoreworCXN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxID0gY29udGFpbmVyX29mKHJl cV9yZWYsCisJCQkJCQkgdHlwZW9mKCpyZXEpLCByZWYpOworCXN0cnVjdCBpbnRlbF9jb250ZXh0 ICpjdHggPSByZXEtPmN0eDsKKwogCWlmIChjdHgpIHsKIAkJaWYgKGk5MTUuZW5hYmxlX2V4ZWNs aXN0cykgewotCQkJc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZyA9IHJlcXVlc3QtPnJpbmc7 CisJCQlzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nID0gcmVxLT5yaW5nOwogCiAJCQlpZiAo Y3R4ICE9IHJpbmctPmRlZmF1bHRfY29udGV4dCkKIAkJCQlpbnRlbF9scl9jb250ZXh0X3VucGlu KHJpbmcsIGN0eCk7CiAJCX0KKwogCQlpOTE1X2dlbV9jb250ZXh0X3VucmVmZXJlbmNlKGN0eCk7 CiAJfQotCWtmcmVlKHJlcXVlc3QpOworCisJa2ZyZWUocmVxKTsKIH0KIAogc3RydWN0IGRybV9p OTE1X2dlbV9yZXF1ZXN0ICoKQEAgLTI2NzEsOCArMjY4MCw3IEBAIHN0YXRpYyB2b2lkIGk5MTVf Z2VtX3Jlc2V0X3JpbmdfY2xlYW51cChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYs CiAJfQogCiAJLyogVGhlc2UgbWF5IG5vdCBoYXZlIGJlZW4gZmx1c2ggYmVmb3JlIHRoZSByZXNl dCwgZG8gc28gbm93ICovCi0Ja2ZyZWUocmluZy0+cHJlYWxsb2NhdGVkX2xhenlfcmVxdWVzdCk7 Ci0JcmluZy0+cHJlYWxsb2NhdGVkX2xhenlfcmVxdWVzdCA9IE5VTEw7CisJaTkxNV9nZW1fcmVx dWVzdF9hc3NpZ24oJnJpbmctPnByZWFsbG9jYXRlZF9sYXp5X3JlcXVlc3QsIE5VTEwpOwogCXJp bmctPm91dHN0YW5kaW5nX2xhenlfc2Vxbm8gPSAwOwogfQogCmRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xy Yy5jCmluZGV4IDk4YTRiMTE5Li5mZTY2NDgyIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9scmMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYwpA QCAtOTA1LDYgKzkwNSw4IEBAIHN0YXRpYyBpbnQgbG9naWNhbF9yaW5nX2FsbG9jX3NlcW5vKHN0 cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcsCiAJCX0KIAl9CiAKKwlrcmVmX2luaXQoJnJlcXVl c3QtPnJlZik7CisKIAlyZXQgPSBpOTE1X2dlbV9nZXRfc2Vxbm8ocmluZy0+ZGV2LCAmcmluZy0+ b3V0c3RhbmRpbmdfbGF6eV9zZXFubyk7CiAJaWYgKHJldCkgewogCQlpbnRlbF9scl9jb250ZXh0 X3VucGluKHJpbmcsIGN0eCk7CkBAIC0xMzY1LDcgKzEzNjcsNyBAQCB2b2lkIGludGVsX2xvZ2lj YWxfcmluZ19jbGVhbnVwKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcpCiAKIAlpbnRlbF9s b2dpY2FsX3Jpbmdfc3RvcChyaW5nKTsKIAlXQVJOX09OKChJOTE1X1JFQURfTU9ERShyaW5nKSAm IE1PREVfSURMRSkgPT0gMCk7Ci0JcmluZy0+cHJlYWxsb2NhdGVkX2xhenlfcmVxdWVzdCA9IE5V TEw7CisJaTkxNV9nZW1fcmVxdWVzdF9hc3NpZ24oJnJpbmctPnByZWFsbG9jYXRlZF9sYXp5X3Jl cXVlc3QsIE5VTEwpOwogCXJpbmctPm91dHN0YW5kaW5nX2xhenlfc2Vxbm8gPSAwOwogCiAJaWYg KHJpbmctPmNsZWFudXApCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9y aW5nYnVmZmVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmMKaW5k ZXggOWZlMTMwNy4uZmJlYWEzYSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfcmluZ2J1ZmZlci5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZm ZXIuYwpAQCAtMTg3MCw3ICsxODcwLDcgQEAgdm9pZCBpbnRlbF9jbGVhbnVwX3JpbmdfYnVmZmVy KHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcpCiAKIAlpbnRlbF91bnBpbl9yaW5nYnVmZmVy X29iaihyaW5nYnVmKTsKIAlpbnRlbF9kZXN0cm95X3JpbmdidWZmZXJfb2JqKHJpbmdidWYpOwot CXJpbmctPnByZWFsbG9jYXRlZF9sYXp5X3JlcXVlc3QgPSBOVUxMOworCWk5MTVfZ2VtX3JlcXVl c3RfYXNzaWduKCZyaW5nLT5wcmVhbGxvY2F0ZWRfbGF6eV9yZXF1ZXN0LCBOVUxMKTsKIAlyaW5n LT5vdXRzdGFuZGluZ19sYXp5X3NlcW5vID0gMDsKIAogCWlmIChyaW5nLT5jbGVhbnVwKQpAQCAt MjA0Myw2ICsyMDQzLDggQEAgaW50ZWxfcmluZ19hbGxvY19zZXFubyhzdHJ1Y3QgaW50ZWxfZW5n aW5lX2NzICpyaW5nKQogCWlmIChyZXF1ZXN0ID09IE5VTEwpCiAJCXJldHVybiAtRU5PTUVNOwog CisJa3JlZl9pbml0KCZyZXF1ZXN0LT5yZWYpOworCiAJcmV0ID0gaTkxNV9nZW1fZ2V0X3NlcW5v KHJpbmctPmRldiwgJnJpbmctPm91dHN0YW5kaW5nX2xhenlfc2Vxbm8pOwogCWlmIChyZXQpIHsK IAkJa2ZyZWUocmVxdWVzdCk7Ci0tIAoxLjcuOS41CgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBs aXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFu L2xpc3RpbmZvL2ludGVsLWdmeAo=