From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dhinakaran Pandiyan Subject: [PATCH v2 4/9] drm: Add driver private objects to atomic state Date: Tue, 24 Jan 2017 15:49:32 -0800 Message-ID: <1485301777-3465-5-git-send-email-dhinakaran.pandiyan@intel.com> References: <1485301777-3465-1-git-send-email-dhinakaran.pandiyan@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1485301777-3465-1-git-send-email-dhinakaran.pandiyan@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 Cc: Alex Deucher , Daniel Vetter , Dhinakaran Pandiyan , dri-devel@lists.freedesktop.org, Ben Skeggs List-Id: dri-devel@lists.freedesktop.org SXQgaXMgbmVjZXNzYXJ5IHRvIHRyYWNrIHN0YXRlcyBmb3Igb2JqZWN0cyBvdGhlciB0aGFuIGNv bm5lY3RvciwgY3J0YwphbmQgcGxhbmUgZm9yIGF0b21pYyBtb2Rlc2V0cy4gQnV0IGFkZGluZyBv YmplY3RzIGxpa2UgRFAgTVNUIGxpbmsKYmFuZHdpZHRoIHRvIGRybV9hdG9taWNfc3RhdGUgd291 bGQgbWVhbiB0aGF0IGEgbm9uLWNvcmUgb2JqZWN0IHdpbGwgYmUKbW9kaWZpZWQgYnkgdGhlIGNv cmUgaGVscGVyIGZ1bmN0aW9ucyBmb3Igc3dhcHBpbmcgYW5kIGNsZWFyaW5nCml0J3Mgc3RhdGUu IFNvLCBsZXRzIGFkZCB2b2lkICogb2JqZWN0cyBhbmQgaGVscGVyIGZ1bmN0aW9ucyB0aGF0IG9w ZXJhdGUKb24gdm9pZCAqIHR5cGVzIHRvIGtlZXAgdGhlc2Ugb2JqZWN0cyBhbmQgc3RhdGVzIHBy aXZhdGUgdG8gdGhlIGNvcmUuCkRyaXZlcnMgY2FuIHRoZW4gaW1wbGVtZW50IHNwZWNpZmljIGZ1 bmN0aW9ucyB0byBzd2FwIGFuZCBjbGVhciBzdGF0ZXMuClRoZSBvdGhlciBhZHZhbnRhZ2UgaGF2 aW5nIGp1c3Qgdm9pZCAqIGZvciB0aGVzZSBvYmplY3RzIGluCmRybV9hdG9taWNfc3RhdGUgaXMg dGhhdCBvYmplY3RzIG9mIGRpZmZlcmVudCB0eXBlcyBjYW4gYmUgbWFuYWdlZCBpbiB0aGUKc2Ft ZSBzdGF0ZSBhcnJheS4KClN1Z2dlc3RlZC1ieTogRGFuaWVsIFZldHRlciA8ZGFuaWVsLnZldHRl ckBmZndsbC5jaD4KU2lnbmVkLW9mZi1ieTogRGhpbmFrYXJhbiBQYW5kaXlhbiA8ZGhpbmFrYXJh bi5wYW5kaXlhbkBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWMuYyAg ICAgICAgfCA1NSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBkcml2ZXJz L2dwdS9kcm0vZHJtX2F0b21pY19oZWxwZXIuYyB8ICA2ICsrKysKIGluY2x1ZGUvZHJtL2RybV9h dG9taWMuaCAgICAgICAgICAgIHwgMzAgKysrKysrKysrKysrKysrKysrKysKIDMgZmlsZXMgY2hh bmdlZCwgOTEgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1f YXRvbWljLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pYy5jCmluZGV4IDcyMzM5MmYuLmYz YTcxY2MgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljLmMKKysrIGIvZHJp dmVycy9ncHUvZHJtL2RybV9hdG9taWMuYwpAQCAtNTcsNiArNTcsNyBAQCB2b2lkIGRybV9hdG9t aWNfc3RhdGVfZGVmYXVsdF9yZWxlYXNlKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSkK IAlrZnJlZShzdGF0ZS0+Y29ubmVjdG9ycyk7CiAJa2ZyZWUoc3RhdGUtPmNydGNzKTsKIAlrZnJl ZShzdGF0ZS0+cGxhbmVzKTsKKwlrZnJlZShzdGF0ZS0+cHJpdmF0ZV9vYmpzKTsKIH0KIEVYUE9S VF9TWU1CT0woZHJtX2F0b21pY19zdGF0ZV9kZWZhdWx0X3JlbGVhc2UpOwogCkBAIC0xODQsNiAr MTg1LDIwIEBAIHZvaWQgZHJtX2F0b21pY19zdGF0ZV9kZWZhdWx0X2NsZWFyKHN0cnVjdCBkcm1f YXRvbWljX3N0YXRlICpzdGF0ZSkKIAkJc3RhdGUtPnBsYW5lc1tpXS5wdHIgPSBOVUxMOwogCQlz dGF0ZS0+cGxhbmVzW2ldLnN0YXRlID0gTlVMTDsKIAl9CisKKwlmb3IgKGkgPSAwOyBpIDwgc3Rh dGUtPm51bV9wcml2YXRlX29ianM7IGkrKykgeworCQl2b2lkICpwcml2X29iaiA9IHN0YXRlLT5w cml2YXRlX29ianNbaV0ub2JqOworCQl2b2lkICpvYmpfc3RhdGUgPSBzdGF0ZS0+cHJpdmF0ZV9v YmpzW2ldLm9ial9zdGF0ZTsKKworCQlpZiAoIXByaXZfb2JqKQorCQkJY29udGludWU7CisKKwkJ c3RhdGUtPnByaXZhdGVfb2Jqc1tpXS5mdW5jcy0+ZGVzdHJveV9zdGF0ZShvYmpfc3RhdGUpOwor CQlzdGF0ZS0+cHJpdmF0ZV9vYmpzW2ldLm9iaiA9IE5VTEw7CisJCXN0YXRlLT5wcml2YXRlX29i anNbaV0ub2JqX3N0YXRlID0gTlVMTDsKKwkJc3RhdGUtPnByaXZhdGVfb2Jqc1tpXS5mdW5jcyA9 IE5VTEw7CisJfQorCiB9CiBFWFBPUlRfU1lNQk9MKGRybV9hdG9taWNfc3RhdGVfZGVmYXVsdF9j bGVhcik7CiAKQEAgLTk3Niw2ICs5OTEsNDYgQEAgc3RhdGljIHZvaWQgZHJtX2F0b21pY19wbGFu ZV9wcmludF9zdGF0ZShzdHJ1Y3QgZHJtX3ByaW50ZXIgKnAsCiAJCXBsYW5lLT5mdW5jcy0+YXRv bWljX3ByaW50X3N0YXRlKHAsIHN0YXRlKTsKIH0KIAorCit2b2lkICoKK2RybV9hdG9taWNfZ2V0 X3ByaXZfb2JqX3N0YXRlKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSwgdm9pZCAqb2Jq LAorCQkJICAgICAgY29uc3Qgc3RydWN0IGRybV9wcml2YXRlX3N0YXRlX2Z1bmNzICpmdW5jcykK K3sKKwlpbnQgaW5kZXgsIG51bV9vYmpzLCBpOworCXNpemVfdCBzaXplOworCXN0cnVjdCBfX2Ry bV9wcml2YXRlX29ianNfc3RhdGUgKmFycjsKKworCWZvciAoaSA9IDA7IGkgPCBzdGF0ZS0+bnVt X3ByaXZhdGVfb2JqczsgaSsrKQorCQlpZiAob2JqID09IHN0YXRlLT5wcml2YXRlX29ianNbaV0u b2JqICYmCisJCSAgICBzdGF0ZS0+cHJpdmF0ZV9vYmpzW2ldLm9ial9zdGF0ZSkKKwkJCXJldHVy biBzdGF0ZS0+cHJpdmF0ZV9vYmpzW2ldLm9ial9zdGF0ZTsKKworCW51bV9vYmpzID0gc3RhdGUt Pm51bV9wcml2YXRlX29ianMgKyAxOworCXNpemUgPSBzaXplb2YoKnN0YXRlLT5wcml2YXRlX29i anMpICogbnVtX29ianM7CisJYXJyID0ga3JlYWxsb2Moc3RhdGUtPnByaXZhdGVfb2Jqcywgc2l6 ZSwgR0ZQX0tFUk5FTCk7CisJaWYgKCFhcnIpCisJCXJldHVybiBFUlJfUFRSKC1FTk9NRU0pOwor CisJc3RhdGUtPnByaXZhdGVfb2JqcyA9IGFycjsKKwlpbmRleCA9IHN0YXRlLT5udW1fcHJpdmF0 ZV9vYmpzOworCW1lbXNldCgmc3RhdGUtPnByaXZhdGVfb2Jqc1tpbmRleF0sIDAsIHNpemVvZigq c3RhdGUtPnByaXZhdGVfb2JqcykpOworCisJc3RhdGUtPnByaXZhdGVfb2Jqc1tpbmRleF0ub2Jq X3N0YXRlID0gZnVuY3MtPmR1cGxpY2F0ZV9zdGF0ZShzdGF0ZSwgb2JqKTsKKwlpZiAoIXN0YXRl LT5wcml2YXRlX29ianNbaW5kZXhdLm9ial9zdGF0ZSkKKwkJcmV0dXJuIEVSUl9QVFIoLUVOT01F TSk7CisKKwlzdGF0ZS0+cHJpdmF0ZV9vYmpzW2luZGV4XS5vYmogPSBvYmo7CisJc3RhdGUtPnBy aXZhdGVfb2Jqc1tpbmRleF0uZnVuY3MgPSBmdW5jczsKKwlzdGF0ZS0+bnVtX3ByaXZhdGVfb2Jq cyA9IG51bV9vYmpzOworCisJRFJNX0RFQlVHX0FUT01JQygiQWRkZWQgbmV3IHByaXZhdGUgb2Jq ZWN0IHN0YXRlICVwIHRvICVwXG4iLAorCQkJIHN0YXRlLT5wcml2YXRlX29ianNbaW5kZXhdLm9i al9zdGF0ZSwgc3RhdGUpOworCisJcmV0dXJuIHN0YXRlLT5wcml2YXRlX29ianNbaW5kZXhdLm9i al9zdGF0ZTsKK30KK0VYUE9SVF9TWU1CT0woZHJtX2F0b21pY19nZXRfcHJpdl9vYmpfc3RhdGUp OworCisKIC8qKgogICogZHJtX2F0b21pY19nZXRfY29ubmVjdG9yX3N0YXRlIC0gZ2V0IGNvbm5l Y3RvciBzdGF0ZQogICogQHN0YXRlOiBnbG9iYWwgYXRvbWljIHN0YXRlIG9iamVjdApkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmMgYi9kcml2ZXJzL2dwdS9k cm0vZHJtX2F0b21pY19oZWxwZXIuYwppbmRleCAxZjBjZDdlLi5kZDM0ZDIxIDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pY19oZWxwZXIuYworKysgYi9kcml2ZXJzL2dwdS9k cm0vZHJtX2F0b21pY19oZWxwZXIuYwpAQCAtMTk3Nyw2ICsxOTc3LDggQEAgdm9pZCBkcm1fYXRv bWljX2hlbHBlcl9zd2FwX3N0YXRlKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSwKIAlz dHJ1Y3QgZHJtX3BsYW5lICpwbGFuZTsKIAlzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpwbGFuZV9z dGF0ZTsKIAlzdHJ1Y3QgZHJtX2NydGNfY29tbWl0ICpjb21taXQ7CisJdm9pZCAqb2JqLCAqb2Jq X3N0YXRlOworCWNvbnN0IHN0cnVjdCBkcm1fcHJpdmF0ZV9zdGF0ZV9mdW5jcyAqZnVuY3M7CiAK IAlpZiAoc3RhbGwpIHsKIAkJZm9yX2VhY2hfY3J0Y19pbl9zdGF0ZShzdGF0ZSwgY3J0YywgY3J0 Y19zdGF0ZSwgaSkgewpAQCAtMjAyNSw2ICsyMDI3LDEwIEBAIHZvaWQgZHJtX2F0b21pY19oZWxw ZXJfc3dhcF9zdGF0ZShzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUsCiAJCXN3YXAoc3Rh dGUtPnBsYW5lc1tpXS5zdGF0ZSwgcGxhbmUtPnN0YXRlKTsKIAkJcGxhbmUtPnN0YXRlLT5zdGF0 ZSA9IE5VTEw7CiAJfQorCisJZm9yX2VhY2hfcHJpdmF0ZV9vYmooc3RhdGUsIG9iaiwgb2JqX3N0 YXRlLCBpLCBmdW5jcykgeworCQlmdW5jcy0+c3dhcF9zdGF0ZShvYmosICZzdGF0ZS0+cHJpdmF0 ZV9vYmpzW2ldLm9ial9zdGF0ZSk7CisJfQogfQogRVhQT1JUX1NZTUJPTChkcm1fYXRvbWljX2hl bHBlcl9zd2FwX3N0YXRlKTsKIApkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX2F0b21pYy5o IGIvaW5jbHVkZS9kcm0vZHJtX2F0b21pYy5oCmluZGV4IGYxY2IyYjAuLjgwZDZlMjEgMTAwNjQ0 Ci0tLSBhL2luY2x1ZGUvZHJtL2RybV9hdG9taWMuaAorKysgYi9pbmNsdWRlL2RybS9kcm1fYXRv bWljLmgKQEAgLTE1Myw2ICsxNTMsMTggQEAgc3RydWN0IF9fZHJtX2Nvbm5uZWN0b3JzX3N0YXRl IHsKIAlzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9zdGF0ZSAqc3RhdGU7CiB9OwogCitzdHJ1Y3QgZHJt X3ByaXZhdGVfc3RhdGVfZnVuY3MgeworCXZvaWQgKCpzd2FwX3N0YXRlKSh2b2lkICpvYmosIHZv aWQgKipvYmpfc3RhdGVfcHRyKTsKKwl2b2lkICgqZGVzdHJveV9zdGF0ZSkodm9pZCAqb2JqX3N0 YXRlKTsKKwl2b2lkICooKmR1cGxpY2F0ZV9zdGF0ZSkoc3RydWN0IGRybV9hdG9taWNfc3RhdGUg KnN0YXRlLCB2b2lkICpvYmopOworfTsKKworc3RydWN0IF9fZHJtX3ByaXZhdGVfb2Jqc19zdGF0 ZSB7CisJdm9pZCAqb2JqOworCXZvaWQgKm9ial9zdGF0ZTsKKwljb25zdCBzdHJ1Y3QgZHJtX3By aXZhdGVfc3RhdGVfZnVuY3MgKmZ1bmNzOworfTsKKwogLyoqCiAgKiBzdHJ1Y3QgZHJtX2F0b21p Y19zdGF0ZSAtIHRoZSBnbG9iYWwgc3RhdGUgb2JqZWN0IGZvciBhdG9taWMgdXBkYXRlcwogICog QHJlZjogY291bnQgb2YgYWxsIHJlZmVyZW5jZXMgdG8gdGhpcyBzdGF0ZSAod2lsbCBub3QgYmUg ZnJlZWQgdW50aWwgemVybykKQEAgLTE2NCw2ICsxNzYsOCBAQCBzdHJ1Y3QgX19kcm1fY29ubm5l Y3RvcnNfc3RhdGUgewogICogQGNydGNzOiBwb2ludGVyIHRvIGFycmF5IG9mIENSVEMgcG9pbnRl cnMKICAqIEBudW1fY29ubmVjdG9yOiBzaXplIG9mIHRoZSBAY29ubmVjdG9ycyBhbmQgQGNvbm5l Y3Rvcl9zdGF0ZXMgYXJyYXlzCiAgKiBAY29ubmVjdG9yczogcG9pbnRlciB0byBhcnJheSBvZiBz dHJ1Y3R1cmVzIHdpdGggcGVyLWNvbm5lY3RvciBkYXRhCisgKiBAbnVtX3ByaXZhdGVfb2Jqczog c2l6ZSBvZiB0aGUgQHByaXZhdGVfb2JqcyBhcnJheQorICogQHByaXZhdGVfb2JqczogcG9pbnRl ciB0byBhcnJheSBvZiBwcml2YXRlIG9iamVjdCBwb2ludGVycwogICogQGFjcXVpcmVfY3R4OiBh Y3F1aXJlIGNvbnRleHQgZm9yIHRoaXMgYXRvbWljIG1vZGVzZXQgc3RhdGUgdXBkYXRlCiAgKi8K IHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlIHsKQEAgLTE3Nyw2ICsxOTEsOCBAQCBzdHJ1Y3QgZHJt X2F0b21pY19zdGF0ZSB7CiAJc3RydWN0IF9fZHJtX2NydGNzX3N0YXRlICpjcnRjczsKIAlpbnQg bnVtX2Nvbm5lY3RvcjsKIAlzdHJ1Y3QgX19kcm1fY29ubm5lY3RvcnNfc3RhdGUgKmNvbm5lY3Rv cnM7CisJaW50IG51bV9wcml2YXRlX29ianM7CisJc3RydWN0IF9fZHJtX3ByaXZhdGVfb2Jqc19z dGF0ZSAqcHJpdmF0ZV9vYmpzOwogCiAJc3RydWN0IGRybV9tb2Rlc2V0X2FjcXVpcmVfY3R4ICph Y3F1aXJlX2N0eDsKIApAQCAtMjY5LDYgKzI4NSwxMSBAQCBpbnQgZHJtX2F0b21pY19jb25uZWN0 b3Jfc2V0X3Byb3BlcnR5KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCiAJCXN0cnVj dCBkcm1fY29ubmVjdG9yX3N0YXRlICpzdGF0ZSwgc3RydWN0IGRybV9wcm9wZXJ0eSAqcHJvcGVy dHksCiAJCXVpbnQ2NF90IHZhbCk7CiAKK3ZvaWQgKiBfX211c3RfY2hlY2sKK2RybV9hdG9taWNf Z2V0X3ByaXZfb2JqX3N0YXRlKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSwKKwkJCSAg ICAgIHZvaWQgKm9iaiwKKwkJCSAgICAgIGNvbnN0IHN0cnVjdCBkcm1fcHJpdmF0ZV9zdGF0ZV9m dW5jcyAqZnVuY3MpOworCiAvKioKICAqIGRybV9hdG9taWNfZ2V0X2V4aXN0aW5nX2NydGNfc3Rh dGUgLSBnZXQgY3J0YyBzdGF0ZSwgaWYgaXQgZXhpc3RzCiAgKiBAc3RhdGU6IGdsb2JhbCBhdG9t aWMgc3RhdGUgb2JqZWN0CkBAIC00MTMsNiArNDM0LDE1IEBAIHZvaWQgZHJtX3N0YXRlX2R1bXAo c3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGRybV9wcmludGVyICpwKTsKIAkgICAgIChf X2kpKyspCQkJCQkJCVwKIAkJZm9yX2VhY2hfaWYgKHBsYW5lX3N0YXRlKQogCisjZGVmaW5lIGZv cl9lYWNoX3ByaXZhdGVfb2JqKF9fc3RhdGUsIG9iaiwgb2JqX3N0YXRlLCBfX2ksIF9fZnVuY3Mp CVwKKwlmb3IgKChfX2kpID0gMDsJCQkJCQkJXAorCSAgICAgKF9faSkgPCAoX19zdGF0ZSktPm51 bV9wcml2YXRlX29ianMgJiYJCQlcCisJICAgICAoKG9iaikgPSAoX19zdGF0ZSktPnByaXZhdGVf b2Jqc1tfX2ldLm9iaiwJCQlcCisJICAgICAgKF9fZnVuY3MpID0gKF9fc3RhdGUpLT5wcml2YXRl X29ianNbX19pXS5mdW5jcywJCVwKKwkgICAgICAob2JqX3N0YXRlKSA9IChfX3N0YXRlKS0+cHJp dmF0ZV9vYmpzW19faV0ub2JqX3N0YXRlLCAxKTsJXAorCSAgICAgIChfX2kpKyspCQkJCQkJCVwK KwkJZm9yX2VhY2hfaWYgKF9fZnVuY3MpCisKIC8qKgogICogZHJtX2F0b21pY19jcnRjX25lZWRz X21vZGVzZXQgLSBjb21wdXRlIGNvbWJpbmVkIG1vZGVzZXQgbmVlZAogICogQHN0YXRlOiAmZHJt X2NydGNfc3RhdGUgZm9yIHRoZSBDUlRDCi0tIAoyLjcuNAoKX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1n ZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21h aWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==