From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rob Clark Subject: [PATCH 02/11] drm: add atomic_get_property Date: Thu, 18 Dec 2014 16:01:47 -0500 Message-ID: <1418936516-10754-3-git-send-email-robdclark@gmail.com> References: <1418936516-10754-1-git-send-email-robdclark@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-qg0-f52.google.com (mail-qg0-f52.google.com [209.85.192.52]) by gabe.freedesktop.org (Postfix) with ESMTP id 32FC96EA7F for ; Thu, 18 Dec 2014 13:02:09 -0800 (PST) Received: by mail-qg0-f52.google.com with SMTP id a108so1452610qge.25 for ; Thu, 18 Dec 2014 13:02:08 -0800 (PST) In-Reply-To: <1418936516-10754-1-git-send-email-robdclark@gmail.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 U2luY2Ugd2Ugd29uJ3QgYmUgdXNpbmcgdGhlIG9iai0+cHJvcGVydGllcy0+dmFsdWVzW10gYXJy YXkgdG8gc2hhZG93CnByb3BlcnR5IHZhbHVlcyBmb3IgYXRvbWljIGRyaXZlcnMsIHdlIGFyZSBn b2luZyB0byBuZWVkIGEgdmZ1bmMgZm9yCmdldHRpbmcgcHJvcCB2YWx1ZXMuICBBZGQgdGhhdCBh bG9uZyB3LyBtYW5kYXRvcnkgd3JhcHBlciBmeG5zLgoKdjI6IG1vcmUgY29tbWVudHMgYW5kIGNv cHlwYXN0YSBjb21tZW50IHR5cG8gZml4CgpTaWduZWQtb2ZmLWJ5OiBSb2IgQ2xhcmsgPHJvYmRj bGFya0BnbWFpbC5jb20+ClJldmlld2VkLWJ5OiBTZWFuIFBhdWwgPHNlYW5wYXVsQGNocm9taXVt Lm9yZz4KUmV2aWV3ZWQtYnk6IERhbmllbCBWZXR0ZXIgPGRhbmllbC52ZXR0ZXJAZmZ3bGwuY2g+ Ci0tLQogZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWMuYyB8IDg4ICsrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrCiBpbmNsdWRlL2RybS9kcm1fYXRvbWljLmggICAg IHwgIDkgKysrKysKIGluY2x1ZGUvZHJtL2RybV9jcnRjLmggICAgICAgfCAxOCArKysrKysrKysK IDMgZmlsZXMgY2hhbmdlZCwgMTE1IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vZHJtX2F0b21pYy5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWMuYwppbmRl eCA2ZjcyOWQxLi45YzRlMTQ5IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21p Yy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljLmMKQEAgLTI0Myw2ICsyNDMsMzIg QEAgaW50IGRybV9hdG9taWNfY3J0Y19zZXRfcHJvcGVydHkoc3RydWN0IGRybV9jcnRjICpjcnRj LAogRVhQT1JUX1NZTUJPTChkcm1fYXRvbWljX2NydGNfc2V0X3Byb3BlcnR5KTsKIAogLyoqCisg KiBkcm1fYXRvbWljX2NydGNfZ2V0X3Byb3BlcnR5IC0gZ2V0IHByb3BlcnR5IG9uIENSVEMKKyAq IEBjcnRjOiB0aGUgZHJtIENSVEMgdG8gZ2V0IGEgcHJvcGVydHkgb24KKyAqIEBzdGF0ZTogdGhl IHN0YXRlIG9iamVjdCB3aXRoIHRoZSBwcm9wZXJ0eSB2YWx1ZSB0byByZWFkCisgKiBAcHJvcGVy dHk6IHRoZSBwcm9wZXJ0eSB0byBnZXQKKyAqIEB2YWw6IHRoZSBwcm9wZXJ0eSB2YWx1ZSAocmV0 dXJuZWQgYnkgcmVmZXJlbmNlKQorICoKKyAqIFVzZSB0aGlzIGluc3RlYWQgb2YgY2FsbGluZyBj cnRjLT5hdG9taWNfZ2V0X3Byb3BlcnR5IGRpcmVjdGx5LgorICogVGhpcyBmdW5jdGlvbiBoYW5k bGVzIGdlbmVyaWMvY29yZSBwcm9wZXJ0aWVzIGFuZCBjYWxscyBvdXQgdG8KKyAqIGRyaXZlcidz IC0+YXRvbWljX2dldF9wcm9wZXJ0eSgpIGZvciBkcml2ZXIgcHJvcGVydGllcy4gIFRvIGVuc3Vy ZQorICogY29uc2lzdGVudCBiZWhhdmlvciB5b3UgbXVzdCBjYWxsIHRoaXMgZnVuY3Rpb24gcmF0 aGVyIHRoYW4gdGhlCisgKiBkcml2ZXIgaG9vayBkaXJlY3RseS4KKyAqCisgKiBSRVRVUk5TOgor ICogWmVybyBvbiBzdWNjZXNzLCBlcnJvciBjb2RlIG9uIGZhaWx1cmUKKyAqLworaW50IGRybV9h dG9taWNfY3J0Y19nZXRfcHJvcGVydHkoc3RydWN0IGRybV9jcnRjICpjcnRjLAorCQljb25zdCBz dHJ1Y3QgZHJtX2NydGNfc3RhdGUgKnN0YXRlLAorCQlzdHJ1Y3QgZHJtX3Byb3BlcnR5ICpwcm9w ZXJ0eSwgdWludDY0X3QgKnZhbCkKK3sKKwlpZiAoY3J0Yy0+ZnVuY3MtPmF0b21pY19nZXRfcHJv cGVydHkpCisJCXJldHVybiBjcnRjLT5mdW5jcy0+YXRvbWljX2dldF9wcm9wZXJ0eShjcnRjLCBz dGF0ZSwgcHJvcGVydHksIHZhbCk7CisJcmV0dXJuIC1FSU5WQUw7Cit9CitFWFBPUlRfU1lNQk9M KGRybV9hdG9taWNfY3J0Y19nZXRfcHJvcGVydHkpOworCisvKioKICAqIGRybV9hdG9taWNfZ2V0 X3BsYW5lX3N0YXRlIC0gZ2V0IHBsYW5lIHN0YXRlCiAgKiBAc3RhdGU6IGdsb2JhbCBhdG9taWMg c3RhdGUgb2JqZWN0CiAgKiBAcGxhbmU6IHBsYW5lIHRvIGdldCBzdGF0ZSBvYmplY3QgZm9yCkBA IC0zMjQsNiArMzUwLDMyIEBAIGludCBkcm1fYXRvbWljX3BsYW5lX3NldF9wcm9wZXJ0eShzdHJ1 Y3QgZHJtX3BsYW5lICpwbGFuZSwKIEVYUE9SVF9TWU1CT0woZHJtX2F0b21pY19wbGFuZV9zZXRf cHJvcGVydHkpOwogCiAvKioKKyAqIGRybV9hdG9taWNfcGxhbmVfZ2V0X3Byb3BlcnR5IC0gZ2V0 IHByb3BlcnR5IG9uIHBsYW5lCisgKiBAcGxhbmU6IHRoZSBkcm0gcGxhbmUgdG8gZ2V0IGEgcHJv cGVydHkgb24KKyAqIEBzdGF0ZTogdGhlIHN0YXRlIG9iamVjdCB3aXRoIHRoZSBwcm9wZXJ0eSB2 YWx1ZSB0byByZWFkCisgKiBAcHJvcGVydHk6IHRoZSBwcm9wZXJ0eSB0byBnZXQKKyAqIEB2YWw6 IHRoZSBwcm9wZXJ0eSB2YWx1ZSAocmV0dXJuZWQgYnkgcmVmZXJlbmNlKQorICoKKyAqIFVzZSB0 aGlzIGluc3RlYWQgb2YgY2FsbGluZyBwbGFuZS0+YXRvbWljX2dldF9wcm9wZXJ0eSBkaXJlY3Rs eS4KKyAqIFRoaXMgZnVuY3Rpb24gaGFuZGxlcyBnZW5lcmljL2NvcmUgcHJvcGVydGllcyBhbmQg Y2FsbHMgb3V0IHRvCisgKiBkcml2ZXIncyAtPmF0b21pY19nZXRfcHJvcGVydHkoKSBmb3IgZHJp dmVyIHByb3BlcnRpZXMuICBUbyBlbnN1cmUKKyAqIGNvbnNpc3RlbnQgYmVoYXZpb3IgeW91IG11 c3QgY2FsbCB0aGlzIGZ1bmN0aW9uIHJhdGhlciB0aGFuIHRoZQorICogZHJpdmVyIGhvb2sgZGly ZWN0bHkuCisgKgorICogUkVUVVJOUzoKKyAqIFplcm8gb24gc3VjY2VzcywgZXJyb3IgY29kZSBv biBmYWlsdXJlCisgKi8KK2ludCBkcm1fYXRvbWljX3BsYW5lX2dldF9wcm9wZXJ0eShzdHJ1Y3Qg ZHJtX3BsYW5lICpwbGFuZSwKKwkJY29uc3Qgc3RydWN0IGRybV9wbGFuZV9zdGF0ZSAqc3RhdGUs CisJCXN0cnVjdCBkcm1fcHJvcGVydHkgKnByb3BlcnR5LCB1aW50NjRfdCAqdmFsKQoreworCWlm IChwbGFuZS0+ZnVuY3MtPmF0b21pY19nZXRfcHJvcGVydHkpCisJCXJldHVybiBwbGFuZS0+ZnVu Y3MtPmF0b21pY19nZXRfcHJvcGVydHkocGxhbmUsIHN0YXRlLCBwcm9wZXJ0eSwgdmFsKTsKKwly ZXR1cm4gLUVJTlZBTDsKK30KK0VYUE9SVF9TWU1CT0woZHJtX2F0b21pY19wbGFuZV9nZXRfcHJv cGVydHkpOworCisvKioKICAqIGRybV9hdG9taWNfZ2V0X2Nvbm5lY3Rvcl9zdGF0ZSAtIGdldCBj b25uZWN0b3Igc3RhdGUKICAqIEBzdGF0ZTogZ2xvYmFsIGF0b21pYyBzdGF0ZSBvYmplY3QKICAq IEBjb25uZWN0b3I6IGNvbm5lY3RvciB0byBnZXQgc3RhdGUgb2JqZWN0IGZvcgpAQCAtNDMzLDYg KzQ4NSw0MiBAQCBpbnQgZHJtX2F0b21pY19jb25uZWN0b3Jfc2V0X3Byb3BlcnR5KHN0cnVjdCBk cm1fY29ubmVjdG9yICpjb25uZWN0b3IsCiBFWFBPUlRfU1lNQk9MKGRybV9hdG9taWNfY29ubmVj dG9yX3NldF9wcm9wZXJ0eSk7CiAKIC8qKgorICogZHJtX2F0b21pY19jb25uZWN0b3JfZ2V0X3By b3BlcnR5IC0gZ2V0IHByb3BlcnR5IG9uIGNvbm5lY3RvcgorICogQGNvbm5lY3RvcjogdGhlIGRy bSBjb25uZWN0b3IgdG8gZ2V0IGEgcHJvcGVydHkgb24KKyAqIEBzdGF0ZTogdGhlIHN0YXRlIG9i amVjdCB3aXRoIHRoZSBwcm9wZXJ0eSB2YWx1ZSB0byByZWFkCisgKiBAcHJvcGVydHk6IHRoZSBw cm9wZXJ0eSB0byBnZXQKKyAqIEB2YWw6IHRoZSBwcm9wZXJ0eSB2YWx1ZSAocmV0dXJuZWQgYnkg cmVmZXJlbmNlKQorICoKKyAqIFVzZSB0aGlzIGluc3RlYWQgb2YgY2FsbGluZyBjb25uZWN0b3It PmF0b21pY19nZXRfcHJvcGVydHkgZGlyZWN0bHkuCisgKiBUaGlzIGZ1bmN0aW9uIGhhbmRsZXMg Z2VuZXJpYy9jb3JlIHByb3BlcnRpZXMgYW5kIGNhbGxzIG91dCB0bworICogZHJpdmVyJ3MgLT5h dG9taWNfZ2V0X3Byb3BlcnR5KCkgZm9yIGRyaXZlciBwcm9wZXJ0aWVzLiAgVG8gZW5zdXJlCisg KiBjb25zaXN0ZW50IGJlaGF2aW9yIHlvdSBtdXN0IGNhbGwgdGhpcyBmdW5jdGlvbiByYXRoZXIg dGhhbiB0aGUKKyAqIGRyaXZlciBob29rIGRpcmVjdGx5LgorICoKKyAqIFJFVFVSTlM6CisgKiBa ZXJvIG9uIHN1Y2Nlc3MsIGVycm9yIGNvZGUgb24gZmFpbHVyZQorICovCitpbnQgZHJtX2F0b21p Y19jb25uZWN0b3JfZ2V0X3Byb3BlcnR5KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3Is CisJCWNvbnN0IHN0cnVjdCBkcm1fY29ubmVjdG9yX3N0YXRlICpzdGF0ZSwKKwkJc3RydWN0IGRy bV9wcm9wZXJ0eSAqcHJvcGVydHksIHVpbnQ2NF90ICp2YWwpCit7CisJc3RydWN0IGRybV9kZXZp Y2UgKmRldiA9IGNvbm5lY3Rvci0+ZGV2OworCXN0cnVjdCBkcm1fbW9kZV9jb25maWcgKmNvbmZp ZyA9ICZkZXYtPm1vZGVfY29uZmlnOworCisJaWYgKHByb3BlcnR5ID09IGNvbmZpZy0+ZHBtc19w cm9wZXJ0eSkgeworCQkqdmFsID0gY29ubmVjdG9yLT5kcG1zOworCX0gZWxzZSBpZiAoY29ubmVj dG9yLT5mdW5jcy0+YXRvbWljX2dldF9wcm9wZXJ0eSkgeworCQlyZXR1cm4gY29ubmVjdG9yLT5m dW5jcy0+YXRvbWljX2dldF9wcm9wZXJ0eShjb25uZWN0b3IsCisJCQkJc3RhdGUsIHByb3BlcnR5 LCB2YWwpOworCX0gZWxzZSB7CisJCXJldHVybiAtRUlOVkFMOworCX0KKworCXJldHVybiAwOwor fQorRVhQT1JUX1NZTUJPTChkcm1fYXRvbWljX2Nvbm5lY3Rvcl9nZXRfcHJvcGVydHkpOworCisv KioKICAqIGRybV9hdG9taWNfc2V0X2NydGNfZm9yX3BsYW5lIC0gc2V0IGNydGMgZm9yIHBsYW5l CiAgKiBAcGxhbmVfc3RhdGU6IHRoZSBwbGFuZSB3aG9zZSBpbmNvbWluZyBzdGF0ZSB0byB1cGRh dGUKICAqIEBjcnRjOiBjcnRjIHRvIHVzZSBmb3IgdGhlIHBsYW5lCmRpZmYgLS1naXQgYS9pbmNs dWRlL2RybS9kcm1fYXRvbWljLmggYi9pbmNsdWRlL2RybS9kcm1fYXRvbWljLmgKaW5kZXggNTEx NjhhOC4uZDQxMjMzYyAxMDA2NDQKLS0tIGEvaW5jbHVkZS9kcm0vZHJtX2F0b21pYy5oCisrKyBi L2luY2x1ZGUvZHJtL2RybV9hdG9taWMuaApAQCAtNDEsMTggKzQxLDI3IEBAIGRybV9hdG9taWNf Z2V0X2NydGNfc3RhdGUoc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlLAogaW50IGRybV9h dG9taWNfY3J0Y19zZXRfcHJvcGVydHkoc3RydWN0IGRybV9jcnRjICpjcnRjLAogCQlzdHJ1Y3Qg ZHJtX2NydGNfc3RhdGUgKnN0YXRlLCBzdHJ1Y3QgZHJtX3Byb3BlcnR5ICpwcm9wZXJ0eSwKIAkJ dWludDY0X3QgdmFsKTsKK2ludCBkcm1fYXRvbWljX2NydGNfZ2V0X3Byb3BlcnR5KHN0cnVjdCBk cm1fY3J0YyAqY3J0YywKKwkJY29uc3Qgc3RydWN0IGRybV9jcnRjX3N0YXRlICpzdGF0ZSwKKwkJ c3RydWN0IGRybV9wcm9wZXJ0eSAqcHJvcGVydHksIHVpbnQ2NF90ICp2YWwpOwogc3RydWN0IGRy bV9wbGFuZV9zdGF0ZSAqIF9fbXVzdF9jaGVjawogZHJtX2F0b21pY19nZXRfcGxhbmVfc3RhdGUo c3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlLAogCQkJICAgc3RydWN0IGRybV9wbGFuZSAq cGxhbmUpOwogaW50IGRybV9hdG9taWNfcGxhbmVfc2V0X3Byb3BlcnR5KHN0cnVjdCBkcm1fcGxh bmUgKnBsYW5lLAogCQlzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpzdGF0ZSwgc3RydWN0IGRybV9w cm9wZXJ0eSAqcHJvcGVydHksCiAJCXVpbnQ2NF90IHZhbCk7CitpbnQgZHJtX2F0b21pY19wbGFu ZV9nZXRfcHJvcGVydHkoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCisJCWNvbnN0IHN0cnVjdCBk cm1fcGxhbmVfc3RhdGUgKnN0YXRlLAorCQlzdHJ1Y3QgZHJtX3Byb3BlcnR5ICpwcm9wZXJ0eSwg dWludDY0X3QgKnZhbCk7CiBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9zdGF0ZSAqIF9fbXVzdF9jaGVj awogZHJtX2F0b21pY19nZXRfY29ubmVjdG9yX3N0YXRlKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRl ICpzdGF0ZSwKIAkJCSAgICAgICBzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKTsKIGlu dCBkcm1fYXRvbWljX2Nvbm5lY3Rvcl9zZXRfcHJvcGVydHkoc3RydWN0IGRybV9jb25uZWN0b3Ig KmNvbm5lY3RvciwKIAkJc3RydWN0IGRybV9jb25uZWN0b3Jfc3RhdGUgKnN0YXRlLCBzdHJ1Y3Qg ZHJtX3Byb3BlcnR5ICpwcm9wZXJ0eSwKIAkJdWludDY0X3QgdmFsKTsKK2ludCBkcm1fYXRvbWlj X2Nvbm5lY3Rvcl9nZXRfcHJvcGVydHkoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwK KwkJY29uc3Qgc3RydWN0IGRybV9jb25uZWN0b3Jfc3RhdGUgKnN0YXRlLAorCQlzdHJ1Y3QgZHJt X3Byb3BlcnR5ICpwcm9wZXJ0eSwgdWludDY0X3QgKnZhbCk7CiAKIGludCBfX211c3RfY2hlY2sK IGRybV9hdG9taWNfc2V0X2NydGNfZm9yX3BsYW5lKHN0cnVjdCBkcm1fcGxhbmVfc3RhdGUgKnBs YW5lX3N0YXRlLApkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX2NydGMuaCBiL2luY2x1ZGUv ZHJtL2RybV9jcnRjLmgKaW5kZXggN2YxNTg5Ni4uZTFmMzQ2OSAxMDA2NDQKLS0tIGEvaW5jbHVk ZS9kcm0vZHJtX2NydGMuaAorKysgYi9pbmNsdWRlL2RybS9kcm1fY3J0Yy5oCkBAIC0zMTIsNiAr MzEyLDggQEAgc3RydWN0IGRybV9jcnRjX3N0YXRlIHsKICAqIEBhdG9taWNfZGVzdHJveV9zdGF0 ZTogZGVzdHJveSBhbiBhdG9taWMgc3RhdGUgZm9yIHRoaXMgQ1JUQwogICogQGF0b21pY19zZXRf cHJvcGVydHk6IHNldCBhIHByb3BlcnR5IG9uIGFuIGF0b21pYyBzdGF0ZSBmb3IgdGhpcyBDUlRD CiAgKiAgICAoZG8gbm90IGNhbGwgZGlyZWN0bHksIHVzZSBkcm1fYXRvbWljX2NydGNfc2V0X3By b3BlcnR5KCkpCisgKiBAYXRvbWljX2dldF9wcm9wZXJ0eTogZ2V0IGEgcHJvcGVydHkgb24gYW4g YXRvbWljIHN0YXRlIGZvciB0aGlzIENSVEMKKyAqICAgIChkbyBub3QgY2FsbCBkaXJlY3RseSwg dXNlIGRybV9hdG9taWNfY3J0Y19nZXRfcHJvcGVydHkoKSkKICAqCiAgKiBUaGUgZHJtX2NydGNf ZnVuY3Mgc3RydWN0dXJlIGlzIHRoZSBjZW50cmFsIENSVEMgbWFuYWdlbWVudCBzdHJ1Y3R1cmUK ICAqIGluIHRoZSBEUk0uICBFYWNoIENSVEMgY29udHJvbHMgb25lIG9yIG1vcmUgY29ubmVjdG9y cyAobm90ZSB0aGF0IHRoZSBuYW1lCkBAIC0zNzEsNiArMzczLDEwIEBAIHN0cnVjdCBkcm1fY3J0 Y19mdW5jcyB7CiAJCQkJICAgc3RydWN0IGRybV9jcnRjX3N0YXRlICpzdGF0ZSwKIAkJCQkgICBz dHJ1Y3QgZHJtX3Byb3BlcnR5ICpwcm9wZXJ0eSwKIAkJCQkgICB1aW50NjRfdCB2YWwpOworCWlu dCAoKmF0b21pY19nZXRfcHJvcGVydHkpKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKKwkJCQkgICBj b25zdCBzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKnN0YXRlLAorCQkJCSAgIHN0cnVjdCBkcm1fcHJv cGVydHkgKnByb3BlcnR5LAorCQkJCSAgIHVpbnQ2NF90ICp2YWwpOwogfTsKIAogLyoqCkBAIC00 OTksNiArNTA1LDggQEAgc3RydWN0IGRybV9jb25uZWN0b3Jfc3RhdGUgewogICogQGF0b21pY19k ZXN0cm95X3N0YXRlOiBkZXN0cm95IGFuIGF0b21pYyBzdGF0ZSBmb3IgdGhpcyBjb25uZWN0b3IK ICAqIEBhdG9taWNfc2V0X3Byb3BlcnR5OiBzZXQgYSBwcm9wZXJ0eSBvbiBhbiBhdG9taWMgc3Rh dGUgZm9yIHRoaXMgY29ubmVjdG9yCiAgKiAgICAoZG8gbm90IGNhbGwgZGlyZWN0bHksIHVzZSBk cm1fYXRvbWljX2Nvbm5lY3Rvcl9zZXRfcHJvcGVydHkoKSkKKyAqIEBhdG9taWNfZ2V0X3Byb3Bl cnR5OiBnZXQgYSBwcm9wZXJ0eSBvbiBhbiBhdG9taWMgc3RhdGUgZm9yIHRoaXMgY29ubmVjdG9y CisgKiAgICAoZG8gbm90IGNhbGwgZGlyZWN0bHksIHVzZSBkcm1fYXRvbWljX2Nvbm5lY3Rvcl9n ZXRfcHJvcGVydHkoKSkKICAqCiAgKiBFYWNoIENSVEMgbWF5IGhhdmUgb25lIG9yIG1vcmUgY29u bmVjdG9ycyBhdHRhY2hlZCB0byBpdC4gIFRoZSBmdW5jdGlvbnMKICAqIGJlbG93IGFsbG93IHRo ZSBjb3JlIERSTSBjb2RlIHRvIGNvbnRyb2wgY29ubmVjdG9ycywgZW51bWVyYXRlIGF2YWlsYWJs ZSBtb2RlcywKQEAgLTUzMiw2ICs1NDAsMTAgQEAgc3RydWN0IGRybV9jb25uZWN0b3JfZnVuY3Mg ewogCQkJCSAgIHN0cnVjdCBkcm1fY29ubmVjdG9yX3N0YXRlICpzdGF0ZSwKIAkJCQkgICBzdHJ1 Y3QgZHJtX3Byb3BlcnR5ICpwcm9wZXJ0eSwKIAkJCQkgICB1aW50NjRfdCB2YWwpOworCWludCAo KmF0b21pY19nZXRfcHJvcGVydHkpKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCisJ CQkJICAgY29uc3Qgc3RydWN0IGRybV9jb25uZWN0b3Jfc3RhdGUgKnN0YXRlLAorCQkJCSAgIHN0 cnVjdCBkcm1fcHJvcGVydHkgKnByb3BlcnR5LAorCQkJCSAgIHVpbnQ2NF90ICp2YWwpOwogfTsK IAogLyoqCkBAIC03NjMsNiArNzc1LDggQEAgc3RydWN0IGRybV9wbGFuZV9zdGF0ZSB7CiAgKiBA YXRvbWljX2Rlc3Ryb3lfc3RhdGU6IGRlc3Ryb3kgYW4gYXRvbWljIHN0YXRlIGZvciB0aGlzIHBs YW5lCiAgKiBAYXRvbWljX3NldF9wcm9wZXJ0eTogc2V0IGEgcHJvcGVydHkgb24gYW4gYXRvbWlj IHN0YXRlIGZvciB0aGlzIHBsYW5lCiAgKiAgICAoZG8gbm90IGNhbGwgZGlyZWN0bHksIHVzZSBk cm1fYXRvbWljX3BsYW5lX3NldF9wcm9wZXJ0eSgpKQorICogQGF0b21pY19nZXRfcHJvcGVydHk6 IGdldCBhIHByb3BlcnR5IG9uIGFuIGF0b21pYyBzdGF0ZSBmb3IgdGhpcyBwbGFuZQorICogICAg KGRvIG5vdCBjYWxsIGRpcmVjdGx5LCB1c2UgZHJtX2F0b21pY19wbGFuZV9nZXRfcHJvcGVydHko KSkKICAqLwogc3RydWN0IGRybV9wbGFuZV9mdW5jcyB7CiAJaW50ICgqdXBkYXRlX3BsYW5lKShz dHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKQEAgLTc4Niw2ICs4MDAsMTAgQEAgc3RydWN0IGRybV9w bGFuZV9mdW5jcyB7CiAJCQkJICAgc3RydWN0IGRybV9wbGFuZV9zdGF0ZSAqc3RhdGUsCiAJCQkJ ICAgc3RydWN0IGRybV9wcm9wZXJ0eSAqcHJvcGVydHksCiAJCQkJICAgdWludDY0X3QgdmFsKTsK KwlpbnQgKCphdG9taWNfZ2V0X3Byb3BlcnR5KShzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKKwkJ CQkgICBjb25zdCBzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpzdGF0ZSwKKwkJCQkgICBzdHJ1Y3Qg ZHJtX3Byb3BlcnR5ICpwcm9wZXJ0eSwKKwkJCQkgICB1aW50NjRfdCAqdmFsKTsKIH07CiAKIGVu dW0gZHJtX3BsYW5lX3R5cGUgewotLSAKMi4xLjAKCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxp c3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4v bGlzdGluZm8vZHJpLWRldmVsCg==