From mboxrd@z Thu Jan 1 00:00:00 1970 From: John.C.Harrison@Intel.com Subject: [PATCH v5 15/35] drm/i915: Added tracking/locking of batch buffer objects Date: Thu, 18 Feb 2016 14:27:03 +0000 Message-ID: <1455805644-6450-16-git-send-email-John.C.Harrison@Intel.com> References: <1455805644-6450-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 mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTP id D57976EBF7 for ; Thu, 18 Feb 2016 14:27:46 +0000 (UTC) In-Reply-To: <1455805644-6450-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 RnJvbTogSm9obiBIYXJyaXNvbiA8Sm9obi5DLkhhcnJpc29uQEludGVsLmNvbT4KClRoZSBzY2hl ZHVsZXIgbmVlZHMgdG8gdHJhY2sgaW50ZXJkZXBlbmRlbmNpZXMgYmV0d2VlbiBiYXRjaCBidWZm ZXJzLgpUaGVzZSBhcmUgY2FsY3VsYXRlZCBieSBhbmFseXNpbmcgdGhlIG9iamVjdCBsaXN0cyBv ZiB0aGUgYnVmZmVycyBhbmQKbG9va2luZyBmb3IgY29tbW9uYWxpdHkuIFRoZSBzY2hlZHVsZXIg YWxzbyBuZWVkcyB0byBrZWVwIHRob3NlCmJ1ZmZlcnMgbG9ja2VkIGxvbmcgYWZ0ZXIgdGhlIGlu aXRpYWwgSU9DVEwgY2FsbCBoYXMgcmV0dXJuZWQgdG8gdXNlcgpsYW5kLgoKdjM6IFVwZGF0ZWQg dG8gc3VwcG9ydCByZWFkLXJlYWQgb3B0aW1pc2F0aW9uLgoKdjU6IFVwZGF0ZWQgZHVlIHRvIGNo YW5nZXMgdG8gZWFybGllciBwYXRjaGVzIGluIHNlcmllcyBmb3Igc3BsaXR0aW5nCmJ5cGFzcyBt b2RlIGludG8gYSBzZXBhcmF0ZSBmdW5jdGlvbiBhbmQgY29uc29saWRpbmcgdGhlIGNsZWFuIHVw IGNvZGUuCgpGb3I6IFZJWi0xNTg3ClNpZ25lZC1vZmYtYnk6IEpvaG4gSGFycmlzb24gPEpvaG4u Qy5IYXJyaXNvbkBJbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1f ZXhlY2J1ZmZlci5jIHwgNDggKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tCiBkcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X3NjaGVkdWxlci5jICAgICAgfCAxNSArKysrKysrKysrCiAyIGZp bGVzIGNoYW5nZWQsIDYxIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZXhlY2J1ZmZlci5jIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9nZW1fZXhlY2J1ZmZlci5jCmluZGV4IDExYmVhOGQuLmY0NWY0ZGMg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V4ZWNidWZmZXIuYwor KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9leGVjYnVmZmVyLmMKQEAgLTE0Mjgs NyArMTQyOCw3IEBAIGk5MTVfZ2VtX2RvX2V4ZWNidWZmZXIoc3RydWN0IGRybV9kZXZpY2UgKmRl diwgdm9pZCAqZGF0YSwKIAlzdHJ1Y3QgaTkxNV9leGVjYnVmZmVyX3BhcmFtcyAqcGFyYW1zID0g JnFlLnBhcmFtczsKIAljb25zdCB1MzIgY3R4X2lkID0gaTkxNV9leGVjYnVmZmVyMl9nZXRfY29u dGV4dF9pZCgqYXJncyk7CiAJdTMyIGRpc3BhdGNoX2ZsYWdzOwotCWludCByZXQ7CisJaW50IHJl dCwgaTsKIAlib29sIG5lZWRfcmVsb2NzOwogCiAJaWYgKCFpOTE1X2dlbV9jaGVja19leGVjYnVm ZmVyKGFyZ3MpKQpAQCAtMTU0Myw2ICsxNTQzLDE0IEBAIGk5MTVfZ2VtX2RvX2V4ZWNidWZmZXIo c3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwKIAkJZ290byBwcmVfbXV0ZXhfZXJy OwogCX0KIAorCXFlLnNhdmVkX29iamVjdHMgPSBremFsbG9jKAorCQkJc2l6ZW9mKCpxZS5zYXZl ZF9vYmplY3RzKSAqIGFyZ3MtPmJ1ZmZlcl9jb3VudCwKKwkJCUdGUF9LRVJORUwpOworCWlmICgh cWUuc2F2ZWRfb2JqZWN0cykgeworCQlyZXQgPSAtRU5PTUVNOworCQlnb3RvIGVycjsKKwl9CisK IAkvKiBMb29rIHVwIG9iamVjdCBoYW5kbGVzICovCiAJcmV0ID0gZWJfbG9va3VwX3ZtYXMoZWIs IGV4ZWMsIGFyZ3MsIHZtLCBmaWxlKTsKIAlpZiAocmV0KQpAQCAtMTY2Myw3ICsxNjcxLDMwIEBA IGk5MTVfZ2VtX2RvX2V4ZWNidWZmZXIoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0 YSwKIAlwYXJhbXMtPmFyZ3NfRFIxICAgICAgICAgICAgICAgID0gYXJncy0+RFIxOwogCXBhcmFt cy0+YXJnc19EUjQgICAgICAgICAgICAgICAgPSBhcmdzLT5EUjQ7CiAJcGFyYW1zLT5iYXRjaF9v YmogICAgICAgICAgICAgICA9IGJhdGNoX29iajsKLQlwYXJhbXMtPmN0eCAgICAgICAgICAgICAg ICAgICAgID0gY3R4OworCisJLyoKKwkgKiBTYXZlIGF3YXkgdGhlIGxpc3Qgb2Ygb2JqZWN0cyB1 c2VkIGJ5IHRoaXMgYmF0Y2ggYnVmZmVyIGZvciB0aGUKKwkgKiBwdXJwb3NlIG9mIHRyYWNraW5n IGludGVyLWJ1ZmZlciBkZXBlbmRlbmNpZXMuCisJICovCisJZm9yIChpID0gMDsgaSA8IGFyZ3Mt PmJ1ZmZlcl9jb3VudDsgaSsrKSB7CisJCXN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmo7 CisKKwkJLyoKKwkJICogTkI6ICdkcm1fZ2VtX29iamVjdF9sb29rdXAoKScgaW5jcmVtZW50cyB0 aGUgb2JqZWN0J3MKKwkJICogcmVmZXJlbmNlIGNvdW50IGFuZCBzbyBtdXN0IGJlIG1hdGNoZWQg YnkgYQorCQkgKiAnZHJtX2dlbV9vYmplY3RfdW5yZWZlcmVuY2UnIGNhbGwuCisJCSAqLworCQlv YmogPSB0b19pbnRlbF9ibyhkcm1fZ2VtX29iamVjdF9sb29rdXAoZGV2LCBmaWxlLAorCQkJCQkJ CSAgZXhlY1tpXS5oYW5kbGUpKTsKKwkJcWUuc2F2ZWRfb2JqZWN0c1tpXS5vYmogICAgICAgPSBv Ymo7CisJCXFlLnNhdmVkX29iamVjdHNbaV0ucmVhZF9vbmx5ID0gb2JqLT5iYXNlLnBlbmRpbmdf d3JpdGVfZG9tYWluID09IDA7CisKKwl9CisJcWUubnVtX29ianMgPSBpOworCisJLyogTG9jayBh bmQgc2F2ZSB0aGUgY29udGV4dCBvYmplY3QgYXMgd2VsbC4gKi8KKwlpOTE1X2dlbV9jb250ZXh0 X3JlZmVyZW5jZShjdHgpOworCXBhcmFtcy0+Y3R4ID0gY3R4OwogCiAJcmV0ID0gZGV2X3ByaXYt Pmd0LmV4ZWNidWZfc3VibWl0KHBhcmFtcywgYXJncywgJmViLT52bWFzKTsKIAlpZiAocmV0KQpA QCAtMTY5Niw2ICsxNzI3LDE5IEBAIGVycjoKIAlpOTE1X2dlbV9jb250ZXh0X3VucmVmZXJlbmNl KGN0eCk7CiAJZWJfZGVzdHJveShlYik7CiAKKwkvKiBOZWVkIHRvIHJlbGVhc2UgdGhlIG9iamVj dHM6ICovCisJaWYgKHFlLnNhdmVkX29iamVjdHMpIHsKKwkJZm9yIChpID0gMDsgaSA8IHFlLm51 bV9vYmpzOyBpKyspCisJCQlkcm1fZ2VtX29iamVjdF91bnJlZmVyZW5jZSgKKwkJCQkJJnFlLnNh dmVkX29iamVjdHNbaV0ub2JqLT5iYXNlKTsKKworCQlrZnJlZShxZS5zYXZlZF9vYmplY3RzKTsK Kwl9CisKKwkvKiBDb250ZXh0IHRvbyAqLworCWlmIChwYXJhbXMtPmN0eCkKKwkJaTkxNV9nZW1f Y29udGV4dF91bnJlZmVyZW5jZShwYXJhbXMtPmN0eCk7CisKIAkvKgogCSAqIElmIHRoZSByZXF1 ZXN0IHdhcyBjcmVhdGVkIGJ1dCBub3Qgc3VjY2Vzc2Z1bGx5IHN1Ym1pdHRlZCB0aGVuIGl0CiAJ ICogbXVzdCBiZSBmcmVlZCBhZ2Fpbi4gSWYgaXQgd2FzIHN1Ym1pdHRlZCB0aGVuIGl0IGlzIGJl aW5nIHRyYWNrZWQKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfc2NoZWR1 bGVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3NjaGVkdWxlci5jCmluZGV4IGEzZmZk MDQuLjYwYTU5ZDMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfc2NoZWR1 bGVyLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9zY2hlZHVsZXIuYwpAQCAtNzE5 LDYgKzcxOSw4IEBAIHZvaWQgaTkxNV9zY2hlZHVsZXJfd2FrZXVwKHN0cnVjdCBkcm1fZGV2aWNl ICpkZXYpCiAgKi8KIHZvaWQgaTkxNV9zY2hlZHVsZXJfY2xlYW5fbm9kZShzdHJ1Y3QgaTkxNV9z Y2hlZHVsZXJfcXVldWVfZW50cnkgKm5vZGUpCiB7CisJaW50IGk7CisKIAlpZiAoIUk5MTVfU1FT X0lTX0NPTVBMRVRFKG5vZGUpKSB7CiAJCVdBUk4oIW5vZGUtPnBhcmFtcy5yZXF1ZXN0LT5jYW5j ZWxsZWQsCiAJCSAgICAgIkNsZWFuaW5nIGFjdGl2ZSBub2RlOiAlZCFcbiIsIG5vZGUtPnN0YXR1 cyk7CkBAIC03MzYsNiArNzM4LDE5IEBAIHZvaWQgaTkxNV9zY2hlZHVsZXJfY2xlYW5fbm9kZShz dHJ1Y3QgaTkxNV9zY2hlZHVsZXJfcXVldWVfZW50cnkgKm5vZGUpCiAJCW5vZGUtPnBhcmFtcy5i YXRjaF9vYmogPSBOVUxMOwogCX0KIAorCS8qIFJlbGVhc2UgdGhlIGxvY2tlZCBidWZmZXJzOiAq LworCWZvciAoaSA9IDA7IGkgPCBub2RlLT5udW1fb2JqczsgaSsrKQorCQlkcm1fZ2VtX29iamVj dF91bnJlZmVyZW5jZSgmbm9kZS0+c2F2ZWRfb2JqZWN0c1tpXS5vYmotPmJhc2UpOworCWtmcmVl KG5vZGUtPnNhdmVkX29iamVjdHMpOworCW5vZGUtPnNhdmVkX29iamVjdHMgPSBOVUxMOworCW5v ZGUtPm51bV9vYmpzID0gMDsKKworCS8qIENvbnRleHQgdG9vOiAqLworCWlmIChub2RlLT5wYXJh bXMuY3R4KSB7CisJCWk5MTVfZ2VtX2NvbnRleHRfdW5yZWZlcmVuY2Uobm9kZS0+cGFyYW1zLmN0 eCk7CisJCW5vZGUtPnBhcmFtcy5jdHggPSBOVUxMOworCX0KKwogCS8qIEFuZCBhbnl0aGluZyBl bHNlIG93bmVkIGJ5IHRoZSBub2RlOiAqLwogCWlmIChub2RlLT5wYXJhbXMuY2xpcHJlY3RzKSB7 CiAJCWtmcmVlKG5vZGUtPnBhcmFtcy5jbGlwcmVjdHMpOwotLSAKMS45LjEKCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxp c3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNr dG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=