From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: [PATCH 03/15] drm/kms-core: Use recommened kerneldoc for struct member refs Date: Wed, 25 Jan 2017 07:26:45 +0100 Message-ID: <20170125062657.19270-4-daniel.vetter@ffwll.ch> References: <20170125062657.19270-1-daniel.vetter@ffwll.ch> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170125062657.19270-1-daniel.vetter@ffwll.ch> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: DRI Development Cc: Daniel Vetter , Daniel Vetter , Intel Graphics Development List-Id: dri-devel@lists.freedesktop.org SSBqdXN0IGxlYXJuZWQgdGhhdCAmc3RydWN0X25hbWUubWVtYmVyX25hbWUgd29ya3MgYW5kIGxv b2tzIHByZXR0eQpldmVuLiBJdCBkb2Vzbid0ICh5ZXQpIGxpbmsgdG8gdGhlIG1lbWJlciBkaXJl Y3RseSB0aG91Z2gsIHdoaWNoIHdvdWxkCmJlIHJlYWxseSBnb29kIGZvciBiaWcgc3RydWN0dXJl cyBvciB2ZnVuYyB0YWJsZXMgKHdoZXJlIHRoZQpwZXItbWVtYmVyIGtlcm5lbGRvYyB0ZW5kcyB0 byBiZSBsb25nKS4KCkFsc28gc29tZSBtaW5vciBkcml2ZS1ieSBwb2xpc2ggd2hlcmUgaXQgbWFr ZXMgc2Vuc2UsIEkgcmVhZCBhIGxvdApvZiBkb2NzIC4uLgoKQ2M6IEphbmkgTmlrdWxhIDxqYW5p Lm5pa3VsYUBsaW51eC5pbnRlbC5jb20+CkNjOiBDaHJpcyBXaWxzb24gPGNocmlzQGNocmlzLXdp bHNvbi5jby51az4KU2lnbmVkLW9mZi1ieTogRGFuaWVsIFZldHRlciA8ZGFuaWVsLnZldHRlckBp bnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWMuYyAgICAgICAgfCA3MSAr KysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vZHJt X2JsZW5kLmMgICAgICAgICB8IDExICsrKy0tLQogZHJpdmVycy9ncHUvZHJtL2RybV9jb25uZWN0 b3IuYyAgICAgfCAxMiArKystLS0tCiBkcml2ZXJzL2dwdS9kcm0vZHJtX2NydGMuYyAgICAgICAg ICB8ICA3ICsrLS0KIGRyaXZlcnMvZ3B1L2RybS9kcm1fZHVtYl9idWZmZXJzLmMgIHwgIDQgKy0t CiBkcml2ZXJzL2dwdS9kcm0vZHJtX2VuY29kZXIuYyAgICAgICB8ICAyICstCiBkcml2ZXJzL2dw dS9kcm0vZHJtX2VuY29kZXJfc2xhdmUuYyB8ICAyICstCiBkcml2ZXJzL2dwdS9kcm0vZHJtX2Zy YW1lYnVmZmVyLmMgICB8IDEwICsrKy0tLQogZHJpdmVycy9ncHUvZHJtL2RybV9tb2Rlc2V0X2xv Y2suYyAgfCAxMCArKystLS0KIGRyaXZlcnMvZ3B1L2RybS9kcm1fcGxhbmUuYyAgICAgICAgIHwg IDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9kcm1fcHJvcGVydHkuYyAgICAgIHwgIDIgKy0KIGluY2x1 ZGUvZHJtL2RybV9hdG9taWMuaCAgICAgICAgICAgIHwgIDYgKystLQogaW5jbHVkZS9kcm0vZHJt X2NvbG9yX21nbXQuaCAgICAgICAgfCAgMiArLQogaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5o ICAgICAgICAgfCA0MCArKysrKysrKysrLS0tLS0tLS0tLS0KIGluY2x1ZGUvZHJtL2RybV9jcnRj LmggICAgICAgICAgICAgIHwgMjkgKysrKysrKy0tLS0tLS0tCiBpbmNsdWRlL2RybS9kcm1fZnJh bWVidWZmZXIuaCAgICAgICB8IDE1ICsrKystLS0tCiBpbmNsdWRlL2RybS9kcm1fbW9kZV9jb25m aWcuaCAgICAgICB8IDEyICsrKy0tLS0KIGluY2x1ZGUvZHJtL2RybV9tb2RlX29iamVjdC5oICAg ICAgIHwgMTMgKysrKy0tLQogaW5jbHVkZS9kcm0vZHJtX21vZGVzZXRfbG9jay5oICAgICAgfCAg MiArLQogaW5jbHVkZS9kcm0vZHJtX3BsYW5lLmggICAgICAgICAgICAgfCAxOCArKysrKy0tLS0t CiBpbmNsdWRlL2RybS9kcm1fcHJvcGVydHkuaCAgICAgICAgICB8ICA4ICsrLS0tCiAyMSBmaWxl cyBjaGFuZ2VkLCAxNDEgaW5zZXJ0aW9ucygrKSwgMTM3IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0 b21pYy5jCmluZGV4IDcyMzM5MmZjOThjOC4uOTZjODFhNjFhNTQyIDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vZHJtX2F0b21pYy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWlj LmMKQEAgLTE5NSw4ICsxOTUsOCBAQCBFWFBPUlRfU1lNQk9MKGRybV9hdG9taWNfc3RhdGVfZGVm YXVsdF9jbGVhcik7CiAgKiBhbGwgbG9ja3MuIFNvIHNvbWVvbmUgZWxzZSBjb3VsZCBzbmVhayBp biBhbmQgY2hhbmdlIHRoZSBjdXJyZW50IG1vZGVzZXQKICAqIGNvbmZpZ3VyYXRpb24uIFdoaWNo IG1lYW5zIHRoYXQgYWxsIHRoZSBzdGF0ZSBhc3NlbWJsZWQgaW4gQHN0YXRlIGlzIG5vCiAgKiBs b25nZXIgYW4gYXRvbWljIHVwZGF0ZSB0byB0aGUgY3VycmVudCBzdGF0ZSwgYnV0IHRvIHNvbWUg YXJiaXRyYXJ5IGVhcmxpZXIKLSAqIHN0YXRlLiBXaGljaCBjb3VsZCBicmVhayBhc3N1bXB0aW9u cyB0aGUgZHJpdmVyJ3MgLT5hdG9taWNfY2hlY2sgbGlrZWx5Ci0gKiByZWxpZXMgb24uCisgKiBz dGF0ZS4gV2hpY2ggY291bGQgYnJlYWsgYXNzdW1wdGlvbnMgdGhlIGRyaXZlcidzCisgKiAmZHJt X21vZGVfY29uZmlnX2Z1bmNzLmF0b21pY19jaGVjayBsaWtlbHkgcmVsaWVzIG9uLgogICoKICAq IEhlbmNlIHdlIG11c3QgY2xlYXIgYWxsIGNhY2hlZCBzdGF0ZSBhbmQgY29tcGxldGVseSBzdGFy dCBvdmVyLCB1c2luZyB0aGlzCiAgKiBmdW5jdGlvbi4KQEAgLTQ1NiwxMSArNDU2LDEwIEBAIGRy bV9hdG9taWNfcmVwbGFjZV9wcm9wZXJ0eV9ibG9iX2Zyb21faWQoc3RydWN0IGRybV9jcnRjICpj cnRjLAogICogQHByb3BlcnR5OiB0aGUgcHJvcGVydHkgdG8gc2V0CiAgKiBAdmFsOiB0aGUgbmV3 IHByb3BlcnR5IHZhbHVlCiAgKgotICogVXNlIHRoaXMgaW5zdGVhZCBvZiBjYWxsaW5nIGNydGMt PmF0b21pY19zZXRfcHJvcGVydHkgZGlyZWN0bHkuCi0gKiBUaGlzIGZ1bmN0aW9uIGhhbmRsZXMg Z2VuZXJpYy9jb3JlIHByb3BlcnRpZXMgYW5kIGNhbGxzIG91dCB0bwotICogZHJpdmVyJ3MgLT5h dG9taWNfc2V0X3Byb3BlcnR5KCkgZm9yIGRyaXZlciBwcm9wZXJ0aWVzLiAgVG8gZW5zdXJlCi0g KiBjb25zaXN0ZW50IGJlaGF2aW9yIHlvdSBtdXN0IGNhbGwgdGhpcyBmdW5jdGlvbiByYXRoZXIg dGhhbiB0aGUKLSAqIGRyaXZlciBob29rIGRpcmVjdGx5LgorICogVGhpcyBmdW5jdGlvbiBoYW5k bGVzIGdlbmVyaWMvY29yZSBwcm9wZXJ0aWVzIGFuZCBjYWxscyBvdXQgdG8gZHJpdmVyJ3MKKyAq ICZkcm1fY3J0Y19mdW5jcy5hdG9taWNfc2V0X3Byb3BlcnR5IGZvciBkcml2ZXIgcHJvcGVydGll cy4gVG8gZW5zdXJlCisgKiBjb25zaXN0ZW50IGJlaGF2aW9yIHlvdSBtdXN0IGNhbGwgdGhpcyBm dW5jdGlvbiByYXRoZXIgdGhhbiB0aGUgZHJpdmVyIGhvb2sKKyAqIGRpcmVjdGx5LgogICoKICAq IFJFVFVSTlM6CiAgKiBaZXJvIG9uIHN1Y2Nlc3MsIGVycm9yIGNvZGUgb24gZmFpbHVyZQpAQCAt NTMyLDEwICs1MzEsMTAgQEAgRVhQT1JUX1NZTUJPTChkcm1fYXRvbWljX2NydGNfc2V0X3Byb3Bl cnR5KTsKICAqIEBwcm9wZXJ0eTogdGhlIHByb3BlcnR5IHRvIHNldAogICogQHZhbDogcmV0dXJu IGxvY2F0aW9uIGZvciB0aGUgcHJvcGVydHkgdmFsdWUKICAqCi0gKiBUaGlzIGZ1bmN0aW9uIGhh bmRsZXMgZ2VuZXJpYy9jb3JlIHByb3BlcnRpZXMgYW5kIGNhbGxzIG91dCB0bwotICogZHJpdmVy J3MgLT5hdG9taWNfZ2V0X3Byb3BlcnR5KCkgZm9yIGRyaXZlciBwcm9wZXJ0aWVzLiAgVG8gZW5z dXJlCi0gKiBjb25zaXN0ZW50IGJlaGF2aW9yIHlvdSBtdXN0IGNhbGwgdGhpcyBmdW5jdGlvbiBy YXRoZXIgdGhhbiB0aGUKLSAqIGRyaXZlciBob29rIGRpcmVjdGx5LgorICogVGhpcyBmdW5jdGlv biBoYW5kbGVzIGdlbmVyaWMvY29yZSBwcm9wZXJ0aWVzIGFuZCBjYWxscyBvdXQgdG8gZHJpdmVy J3MKKyAqICZkcm1fY3J0Y19mdW5jcy5hdG9taWNfZ2V0X3Byb3BlcnR5IGZvciBkcml2ZXIgcHJv cGVydGllcy4gVG8gZW5zdXJlCisgKiBjb25zaXN0ZW50IGJlaGF2aW9yIHlvdSBtdXN0IGNhbGwg dGhpcyBmdW5jdGlvbiByYXRoZXIgdGhhbiB0aGUgZHJpdmVyIGhvb2sKKyAqIGRpcmVjdGx5Lgog ICoKICAqIFJFVFVSTlM6CiAgKiBaZXJvIG9uIHN1Y2Nlc3MsIGVycm9yIGNvZGUgb24gZmFpbHVy ZQpAQCAtNzE2LDExICs3MTUsMTAgQEAgRVhQT1JUX1NZTUJPTChkcm1fYXRvbWljX2dldF9wbGFu ZV9zdGF0ZSk7CiAgKiBAcHJvcGVydHk6IHRoZSBwcm9wZXJ0eSB0byBzZXQKICAqIEB2YWw6IHRo ZSBuZXcgcHJvcGVydHkgdmFsdWUKICAqCi0gKiBVc2UgdGhpcyBpbnN0ZWFkIG9mIGNhbGxpbmcg cGxhbmUtPmF0b21pY19zZXRfcHJvcGVydHkgZGlyZWN0bHkuCi0gKiBUaGlzIGZ1bmN0aW9uIGhh bmRsZXMgZ2VuZXJpYy9jb3JlIHByb3BlcnRpZXMgYW5kIGNhbGxzIG91dCB0bwotICogZHJpdmVy J3MgLT5hdG9taWNfc2V0X3Byb3BlcnR5KCkgZm9yIGRyaXZlciBwcm9wZXJ0aWVzLiAgVG8gZW5z dXJlCi0gKiBjb25zaXN0ZW50IGJlaGF2aW9yIHlvdSBtdXN0IGNhbGwgdGhpcyBmdW5jdGlvbiBy YXRoZXIgdGhhbiB0aGUKLSAqIGRyaXZlciBob29rIGRpcmVjdGx5LgorICogVGhpcyBmdW5jdGlv biBoYW5kbGVzIGdlbmVyaWMvY29yZSBwcm9wZXJ0aWVzIGFuZCBjYWxscyBvdXQgdG8gZHJpdmVy J3MKKyAqICZkcm1fcGxhbmVfZnVuY3MuYXRvbWljX3NldF9wcm9wZXJ0eSBmb3IgZHJpdmVyIHBy b3BlcnRpZXMuICBUbyBlbnN1cmUKKyAqIGNvbnNpc3RlbnQgYmVoYXZpb3IgeW91IG11c3QgY2Fs bCB0aGlzIGZ1bmN0aW9uIHJhdGhlciB0aGFuIHRoZSBkcml2ZXIgaG9vaworICogZGlyZWN0bHku CiAgKgogICogUkVUVVJOUzoKICAqIFplcm8gb24gc3VjY2VzcywgZXJyb3IgY29kZSBvbiBmYWls dXJlCkBAIC03OTEsMTAgKzc4OSwxMCBAQCBFWFBPUlRfU1lNQk9MKGRybV9hdG9taWNfcGxhbmVf c2V0X3Byb3BlcnR5KTsKICAqIEBwcm9wZXJ0eTogdGhlIHByb3BlcnR5IHRvIHNldAogICogQHZh bDogcmV0dXJuIGxvY2F0aW9uIGZvciB0aGUgcHJvcGVydHkgdmFsdWUKICAqCi0gKiBUaGlzIGZ1 bmN0aW9uIGhhbmRsZXMgZ2VuZXJpYy9jb3JlIHByb3BlcnRpZXMgYW5kIGNhbGxzIG91dCB0bwot ICogZHJpdmVyJ3MgLT5hdG9taWNfZ2V0X3Byb3BlcnR5KCkgZm9yIGRyaXZlciBwcm9wZXJ0aWVz LiAgVG8gZW5zdXJlCi0gKiBjb25zaXN0ZW50IGJlaGF2aW9yIHlvdSBtdXN0IGNhbGwgdGhpcyBm dW5jdGlvbiByYXRoZXIgdGhhbiB0aGUKLSAqIGRyaXZlciBob29rIGRpcmVjdGx5LgorICogVGhp cyBmdW5jdGlvbiBoYW5kbGVzIGdlbmVyaWMvY29yZSBwcm9wZXJ0aWVzIGFuZCBjYWxscyBvdXQg dG8gZHJpdmVyJ3MKKyAqICZkcm1fcGxhbmVfZnVuY3MuYXRvbWljX2dldF9wcm9wZXJ0eSBmb3Ig ZHJpdmVyIHByb3BlcnRpZXMuICBUbyBlbnN1cmUKKyAqIGNvbnNpc3RlbnQgYmVoYXZpb3IgeW91 IG11c3QgY2FsbCB0aGlzIGZ1bmN0aW9uIHJhdGhlciB0aGFuIHRoZSBkcml2ZXIgaG9vaworICog ZGlyZWN0bHkuCiAgKgogICogUkVUVVJOUzoKICAqIFplcm8gb24gc3VjY2VzcywgZXJyb3IgY29k ZSBvbiBmYWlsdXJlCkBAIC0xMDU3LDExICsxMDU1LDEwIEBAIEVYUE9SVF9TWU1CT0woZHJtX2F0 b21pY19nZXRfY29ubmVjdG9yX3N0YXRlKTsKICAqIEBwcm9wZXJ0eTogdGhlIHByb3BlcnR5IHRv IHNldAogICogQHZhbDogdGhlIG5ldyBwcm9wZXJ0eSB2YWx1ZQogICoKLSAqIFVzZSB0aGlzIGlu c3RlYWQgb2YgY2FsbGluZyBjb25uZWN0b3ItPmF0b21pY19zZXRfcHJvcGVydHkgZGlyZWN0bHku Ci0gKiBUaGlzIGZ1bmN0aW9uIGhhbmRsZXMgZ2VuZXJpYy9jb3JlIHByb3BlcnRpZXMgYW5kIGNh bGxzIG91dCB0bwotICogZHJpdmVyJ3MgLT5hdG9taWNfc2V0X3Byb3BlcnR5KCkgZm9yIGRyaXZl ciBwcm9wZXJ0aWVzLiAgVG8gZW5zdXJlCi0gKiBjb25zaXN0ZW50IGJlaGF2aW9yIHlvdSBtdXN0 IGNhbGwgdGhpcyBmdW5jdGlvbiByYXRoZXIgdGhhbiB0aGUKLSAqIGRyaXZlciBob29rIGRpcmVj dGx5LgorICogVGhpcyBmdW5jdGlvbiBoYW5kbGVzIGdlbmVyaWMvY29yZSBwcm9wZXJ0aWVzIGFu ZCBjYWxscyBvdXQgdG8gZHJpdmVyJ3MKKyAqICZkcm1fY29ubmVjdG9yX2Z1bmNzLmF0b21pY19z ZXRfcHJvcGVydHkgZm9yIGRyaXZlciBwcm9wZXJ0aWVzLiAgVG8gZW5zdXJlCisgKiBjb25zaXN0 ZW50IGJlaGF2aW9yIHlvdSBtdXN0IGNhbGwgdGhpcyBmdW5jdGlvbiByYXRoZXIgdGhhbiB0aGUg ZHJpdmVyIGhvb2sKKyAqIGRpcmVjdGx5LgogICoKICAqIFJFVFVSTlM6CiAgKiBaZXJvIG9uIHN1 Y2Nlc3MsIGVycm9yIGNvZGUgb24gZmFpbHVyZQpAQCAtMTEzNiwxMCArMTEzMywxMCBAQCBzdGF0 aWMgdm9pZCBkcm1fYXRvbWljX2Nvbm5lY3Rvcl9wcmludF9zdGF0ZShzdHJ1Y3QgZHJtX3ByaW50 ZXIgKnAsCiAgKiBAcHJvcGVydHk6IHRoZSBwcm9wZXJ0eSB0byBzZXQKICAqIEB2YWw6IHJldHVy biBsb2NhdGlvbiBmb3IgdGhlIHByb3BlcnR5IHZhbHVlCiAgKgotICogVGhpcyBmdW5jdGlvbiBo YW5kbGVzIGdlbmVyaWMvY29yZSBwcm9wZXJ0aWVzIGFuZCBjYWxscyBvdXQgdG8KLSAqIGRyaXZl cidzIC0+YXRvbWljX2dldF9wcm9wZXJ0eSgpIGZvciBkcml2ZXIgcHJvcGVydGllcy4gIFRvIGVu c3VyZQotICogY29uc2lzdGVudCBiZWhhdmlvciB5b3UgbXVzdCBjYWxsIHRoaXMgZnVuY3Rpb24g cmF0aGVyIHRoYW4gdGhlCi0gKiBkcml2ZXIgaG9vayBkaXJlY3RseS4KKyAqIFRoaXMgZnVuY3Rp b24gaGFuZGxlcyBnZW5lcmljL2NvcmUgcHJvcGVydGllcyBhbmQgY2FsbHMgb3V0IHRvIGRyaXZl cidzCisgKiAmZHJtX2Nvbm5lY3Rvcl9mdW5jcy5hdG9taWNfZ2V0X3Byb3BlcnR5IGZvciBkcml2 ZXIgcHJvcGVydGllcy4gIFRvIGVuc3VyZQorICogY29uc2lzdGVudCBiZWhhdmlvciB5b3UgbXVz dCBjYWxsIHRoaXMgZnVuY3Rpb24gcmF0aGVyIHRoYW4gdGhlIGRyaXZlciBob29rCisgKiBkaXJl Y3RseS4KICAqCiAgKiBSRVRVUk5TOgogICogWmVybyBvbiBzdWNjZXNzLCBlcnJvciBjb2RlIG9u IGZhaWx1cmUKQEAgLTEzMTYsOCArMTMxMyw4IEBAIEVYUE9SVF9TWU1CT0woZHJtX2F0b21pY19z ZXRfZmJfZm9yX3BsYW5lKTsKICAqIGFsbCBkcm9wZSB0aGUgcmVmZXJlbmNlIHRvIHRoZSBmZW5j ZSBhcyB3ZSBub3Qgc3RvcmluZyBpdAogICogYW55d2hlcmUuCiAgKgotICogT3RoZXJ3aXNlLCBp ZiBwbGFuZV9zdGF0ZS0+ZmVuY2UgaXMgbm90IHNldCB0aGlzIGZ1bmN0aW9uIHdlCi0gKiBqdXN0 IHNldCBpdCB3aXRoIHRoZSByZWNlaXZlZCBpbXBsaWN0IGZlbmNlLgorICogT3RoZXJ3aXNlLCBp ZiAmZHJtX3BsYW5lX3N0YXRlLmZlbmNlIGlzIG5vdCBzZXQgdGhpcyBmdW5jdGlvbiB3ZSBqdXN0 IHNldCBpdAorICogd2l0aCB0aGUgcmVjZWl2ZWQgaW1wbGljdCBmZW5jZS4KICAqLwogdm9pZAog ZHJtX2F0b21pY19zZXRfZmVuY2VfZm9yX3BsYW5lKHN0cnVjdCBkcm1fcGxhbmVfc3RhdGUgKnBs YW5lX3N0YXRlLApAQCAtMTYxNiw3ICsxNjEzLDcgQEAgaW50IGRybV9hdG9taWNfY29tbWl0KHN0 cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSkKIEVYUE9SVF9TWU1CT0woZHJtX2F0b21pY19j b21taXQpOwogCiAvKioKLSAqIGRybV9hdG9taWNfbm9uYmxvY2tpbmdfY29tbWl0IC0gYXRvbWlj Jm5vbmJsb2NraW5nIGNvbmZpZ3VyYXRpb24gY29tbWl0CisgKiBkcm1fYXRvbWljX25vbmJsb2Nr aW5nX2NvbW1pdCAtIGF0b21pYyBub25ibG9ja2luZyBjb21taXQKICAqIEBzdGF0ZTogYXRvbWlj IGNvbmZpZ3VyYXRpb24gdG8gY2hlY2sKICAqCiAgKiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiBj YW4gcmV0dXJuIC1FREVBRExLIGlmIHRoZSBkcml2ZXIgbmVlZGVkIHRvIGFjcXVpcmUKQEAgLTE4 MjksMTAgKzE4MjYsMTAgQEAgc3RhdGljIGludCBhdG9taWNfc2V0X3Byb3Aoc3RydWN0IGRybV9h dG9taWNfc3RhdGUgKnN0YXRlLAogICogQHBsYW5lX21hc2s6IHBsYW5lIG1hc2sgZm9yIHBsYW5l cyB0aGF0IHdlcmUgdXBkYXRlZC4KICAqIEByZXQ6IHJldHVybiB2YWx1ZSwgY2FuIGJlIC1FREVB RExLIGZvciBhIHJldHJ5LgogICoKLSAqIEJlZm9yZSBkb2luZyBhbiB1cGRhdGUgcGxhbmUtPm9s ZF9mYiBpcyBzZXQgdG8gcGxhbmUtPmZiLAotICogYnV0IGJlZm9yZSBkcm9wcGluZyB0aGUgbG9j a3Mgb2xkX2ZiIG5lZWRzIHRvIGJlIHNldCB0byBOVUxMCi0gKiBhbmQgcGxhbmUtPmZiIHVwZGF0 ZWQuIFRoaXMgaXMgYSBjb21tb24gb3BlcmF0aW9uIGZvciBlYWNoCi0gKiBhdG9taWMgdXBkYXRl LCBzbyB0aGlzIGNhbGwgaXMgc3BsaXQgb2ZmIGFzIGEgaGVscGVyLgorICogQmVmb3JlIGRvaW5n IGFuIHVwZGF0ZSAmZHJtX3BsYW5lLm9sZF9mYiBpcyBzZXQgdG8gJmRybV9wbGFuZS5mYiwgYnV0 IGJlZm9yZQorICogZHJvcHBpbmcgdGhlIGxvY2tzIG9sZF9mYiBuZWVkcyB0byBiZSBzZXQgdG8g TlVMTCBhbmQgcGxhbmUtPmZiIHVwZGF0ZWQuIFRoaXMKKyAqIGlzIGEgY29tbW9uIG9wZXJhdGlv biBmb3IgZWFjaCBhdG9taWMgdXBkYXRlLCBzbyB0aGlzIGNhbGwgaXMgc3BsaXQgb2ZmIGFzIGEK KyAqIGhlbHBlci4KICAqLwogdm9pZCBkcm1fYXRvbWljX2NsZWFuX29sZF9mYihzdHJ1Y3QgZHJt X2RldmljZSAqZGV2LAogCQkJICAgICB1bnNpZ25lZCBwbGFuZV9tYXNrLApAQCAtMTg3Myw3ICsx ODcwLDcgQEAgRVhQT1JUX1NZTUJPTChkcm1fYXRvbWljX2NsZWFuX29sZF9mYik7CiAgKiBBcyBh IGNvbnRyYXN0LCB3aXRoIGltcGxpY2l0IGZlbmNpbmcgdGhlIGtlcm5lbCBrZWVwcyB0cmFjayBv ZiBhbnkKICAqIG9uZ29pbmcgcmVuZGVyaW5nLCBhbmQgYXV0b21hdGljYWxseSBlbnN1cmVzIHRo YXQgdGhlIGF0b21pYyB1cGRhdGUgd2FpdHMKICAqIGZvciBhbnkgcGVuZGluZyByZW5kZXJpbmcg dG8gY29tcGxldGUuIEZvciBzaGFyZWQgYnVmZmVycyByZXByZXNlbnRlZCB3aXRoCi0gKiBhICZz dHJ1Y3QgZG1hX2J1ZiB0aGlzIGlzIHRyYWNrZWQgaW4gJnJlc2VydmF0aW9uX29iamVjdCBzdHJ1 Y3R1cmVzLgorICogYSAmc3RydWN0IGRtYV9idWYgdGhpcyBpcyB0cmFja2VkIGluICZzdHJ1Y3Qg cmVzZXJ2YXRpb25fb2JqZWN0LgogICogSW1wbGljaXQgc3luY2luZyBpcyBob3cgTGludXggdHJh ZGl0aW9uYWxseSB3b3JrZWQgKGUuZy4gRFJJMi8zIG9uIFgub3JnKSwKICAqIHdoZXJlYXMgZXhw bGljaXQgZmVuY2luZyBpcyB3aGF0IEFuZHJvaWQgd2FudHMuCiAgKgpkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2RybV9ibGVuZC5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9ibGVuZC5jCmlu ZGV4IDFmMjQxMmM3Y2NmZC4uNjY1YWFmYzZhZDY4IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9k cm0vZHJtX2JsZW5kLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9ibGVuZC5jCkBAIC00MCw5 ICs0MCw4IEBACiAgKiBzdWItcGl4ZWwgYWNjdXJhY3ksIHdoaWNoIGlzIHNjYWxlZCB1cCB0byBh IHBpeGVsLWFsaWduZWQgZGVzdGluYXRpb24KICAqIHJlY3RhbmdsZSBpbiB0aGUgdmlzaWJsZSBh cmVhIG9mIGEgJmRybV9jcnRjLiBUaGUgdmlzaWJsZSBhcmVhIG9mIGEgQ1JUQyBpcwogICogZGVm aW5lZCBieSB0aGUgaG9yaXpvbnRhbCBhbmQgdmVydGljYWwgdmlzaWJsZSBwaXhlbHMgKHN0b3Jl ZCBpbiBAaGRpc3BsYXkKLSAqIGFuZCBAdmRpc3BsYXkpIG9mIHRoZSByZXF1ZXN0ZWQgbW9kZSAo c3RvcmVkIGluIEBtb2RlIGluIHRoZQotICogJmRybV9jcnRjX3N0YXRlKS4gVGhlc2UgdHdvIHJl Y3RhbmdsZXMgYXJlIGJvdGggc3RvcmVkIGluIHRoZQotICogJmRybV9wbGFuZV9zdGF0ZS4KKyAq IGFuZCBAdmRpc3BsYXkpIG9mIHRoZSByZXF1ZXN0ZWQgbW9kZSAoc3RvcmVkIGluICZkcm1fY3J0 Y19zdGF0ZS5tb2RlKS4gVGhlc2UKKyAqIHR3byByZWN0YW5nbGVzIGFyZSBib3RoIHN0b3JlZCBp biB0aGUgJmRybV9wbGFuZV9zdGF0ZS4KICAqCiAgKiBGb3IgdGhlIGF0b21pYyBpb2N0bCB0aGUg Zm9sbG93aW5nIHN0YW5kYXJkIChhdG9taWMpIHByb3BlcnRpZXMgb24gdGhlIHBsYW5lIG9iamVj dAogICogZW5jb2RlIHRoZSBiYXNpYyBwbGFuZSBjb21wb3NpdGlvbiBtb2RlbDoKQEAgLTIxNSw3 ICsyMTQsNyBAQCBFWFBPUlRfU1lNQk9MKGRybV9yb3RhdGlvbl9zaW1wbGlmeSk7CiAgKiBmb3Ig aXQgaW4gZHJtIGNvcmUuIERyaXZlcnMgY2FuIHRoZW4gYXR0YWNoIHRoaXMgcHJvcGVydHkgdG8g cGxhbmVzIHRvIGVuYWJsZQogICogc3VwcG9ydCBmb3IgY29uZmlndXJhYmxlIHBsYW5lcyBhcnJh bmdlbWVudCBkdXJpbmcgYmxlbmRpbmcgb3BlcmF0aW9uLgogICogT25jZSBtdXRhYmxlIHpwb3Mg cHJvcGVydHkgaGFzIGJlZW4gZW5hYmxlZCwgdGhlIERSTSBjb3JlIHdpbGwgYXV0b21hdGljYWxs eQotICogY2FsY3VsYXRlIGRybV9wbGFuZV9zdGF0ZS0+bm9ybWFsaXplZF96cG9zIHZhbHVlcy4g VXN1YWxseSBtaW4gc2hvdWxkIGJlIHNldAorICogY2FsY3VsYXRlICZkcm1fcGxhbmVfc3RhdGUu bm9ybWFsaXplZF96cG9zIHZhbHVlcy4gVXN1YWxseSBtaW4gc2hvdWxkIGJlIHNldAogICogdG8g MCBhbmQgbWF4IHRvIG1heGltYWwgbnVtYmVyIG9mIHBsYW5lcyBmb3IgZ2l2ZW4gY3J0YyAtIDEu CiAgKgogICogSWYgenBvcyBvZiBzb21lIHBsYW5lcyBjYW5ub3QgYmUgY2hhbmdlZCAobGlrZSBm aXhlZCBiYWNrZ3JvdW5kIG9yCkBAIC0zNjcsOCArMzY2LDggQEAgc3RhdGljIGludCBkcm1fYXRv bWljX2hlbHBlcl9jcnRjX25vcm1hbGl6ZV96cG9zKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKICAq IEZvciBldmVyeSBDUlRDIHRoaXMgZnVuY3Rpb24gY2hlY2tzIG5ldyBzdGF0ZXMgb2YgYWxsIHBs YW5lcyBhc3NpZ25lZCB0bwogICogaXQgYW5kIGNhbGN1bGF0ZXMgbm9ybWFsaXplZCB6cG9zIHZh bHVlIGZvciB0aGVzZSBwbGFuZXMuIFBsYW5lcyBhcmUgY29tcGFyZWQKICAqIGZpcnN0IGJ5IHRo ZWlyIHpwb3MgdmFsdWVzLCB0aGVuIGJ5IHBsYW5lIGlkIChpZiB6cG9zIGlzIGVxdWFsKS4gVGhl IHBsYW5lCi0gKiB3aXRoIGxvd2VzdCB6cG9zIHZhbHVlIGlzIGF0IHRoZSBib3R0b20uIFRoZSBw bGFuZV9zdGF0ZS0+bm9ybWFsaXplZF96cG9zIGlzCi0gKiB0aGVuIGZpbGxlZCB3aXRoIHVuaXF1 ZSB2YWx1ZXMgZnJvbSAwIHRvIG51bWJlciBvZiBhY3RpdmUgcGxhbmVzIGluIGNydGMKKyAqIHdp dGggbG93ZXN0IHpwb3MgdmFsdWUgaXMgYXQgdGhlIGJvdHRvbS4gVGhlICZkcm1fcGxhbmVfc3Rh dGUubm9ybWFsaXplZF96cG9zCisgKiBpcyB0aGVuIGZpbGxlZCB3aXRoIHVuaXF1ZSB2YWx1ZXMg ZnJvbSAwIHRvIG51bWJlciBvZiBhY3RpdmUgcGxhbmVzIGluIGNydGMKICAqIG1pbnVzIG9uZS4K ICAqCiAgKiBSRVRVUk5TCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2Nvbm5lY3Rv ci5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9jb25uZWN0b3IuYwppbmRleCA3OTllZGQwZDMwOGUu LmRkNzIwZDRjYjRmNyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9jb25uZWN0b3Iu YworKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2Nvbm5lY3Rvci5jCkBAIC0zOCw4ICszOCw4IEBA CiAgKiBIZW5jZSB0aGV5IGFyZSByZWZlcmVuY2UtY291bnRlZCB1c2luZyBkcm1fY29ubmVjdG9y X3JlZmVyZW5jZSgpIGFuZAogICogZHJtX2Nvbm5lY3Rvcl91bnJlZmVyZW5jZSgpLgogICoKLSAq IEtNUyBkcml2ZXIgbXVzdCBjcmVhdGUsIGluaXRpYWxpemUsIHJlZ2lzdGVyIGFuZCBhdHRhY2gg YXQgYSBzdHJ1Y3QKLSAqICZkcm1fY29ubmVjdG9yIGZvciBlYWNoIHN1Y2ggc2luay4gVGhlIGlu c3RhbmNlIGlzIGNyZWF0ZWQgYXMgb3RoZXIgS01TCisgKiBLTVMgZHJpdmVyIG11c3QgY3JlYXRl LCBpbml0aWFsaXplLCByZWdpc3RlciBhbmQgYXR0YWNoIGF0IGEgJnN0cnVjdAorICogZHJtX2Nv bm5lY3RvciBmb3IgZWFjaCBzdWNoIHNpbmsuIFRoZSBpbnN0YW5jZSBpcyBjcmVhdGVkIGFzIG90 aGVyIEtNUwogICogb2JqZWN0cyBhbmQgaW5pdGlhbGl6ZWQgYnkgc2V0dGluZyB0aGUgZm9sbG93 aW5nIGZpZWxkcy4KICAqCiAgKiBUaGUgY29ubmVjdG9yIGlzIHRoZW4gcmVnaXN0ZXJlZCB3aXRo IGEgY2FsbCB0byBkcm1fY29ubmVjdG9yX2luaXQoKSB3aXRoIGEKQEAgLTQ5LDcgKzQ5LDcgQEAK ICAqIENvbm5lY3RvcnMgbXVzdCBiZSBhdHRhY2hlZCB0byBhbiBlbmNvZGVyIHRvIGJlIHVzZWQu IEZvciBkZXZpY2VzIHRoYXQgbWFwCiAgKiBjb25uZWN0b3JzIHRvIGVuY29kZXJzIDE6MSwgdGhl IGNvbm5lY3RvciBzaG91bGQgYmUgYXR0YWNoZWQgYXQKICAqIGluaXRpYWxpemF0aW9uIHRpbWUg d2l0aCBhIGNhbGwgdG8gZHJtX21vZGVfY29ubmVjdG9yX2F0dGFjaF9lbmNvZGVyKCkuIFRoZQot ICogZHJpdmVyIG11c3QgYWxzbyBzZXQgdGhlICZzdHJ1Y3QgZHJtX2Nvbm5lY3RvciBlbmNvZGVy IGZpZWxkIHRvIHBvaW50IHRvIHRoZQorICogZHJpdmVyIG11c3QgYWxzbyBzZXQgdGhlICZkcm1f Y29ubmVjdG9yLmVuY29kZXIgZmllbGQgdG8gcG9pbnQgdG8gdGhlCiAgKiBhdHRhY2hlZCBlbmNv ZGVyLgogICoKICAqIEZvciBjb25uZWN0b3JzIHdoaWNoIGFyZSBub3QgZml4ZWQgKGxpa2UgYnVp bHQtaW4gcGFuZWxzKSB0aGUgZHJpdmVyIG5lZWRzIHRvCkBAIC00OTcsNyArNDk3LDcgQEAgc3Rh dGljIHN0cnVjdCBsb2NrZGVwX21hcCBjb25uZWN0b3JfbGlzdF9pdGVyX2RlcF9tYXAgPSB7CiAg KiBAZGV2OiBEUk0gZGV2aWNlCiAgKiBAaXRlcjogY29ubmVjdG9yX2xpc3QgaXRlcmF0b3IKICAq Ci0gKiBTZXRzIEBpdGVyIHVwIHRvIHdhbGsgdGhlIGNvbm5lY3RvciBsaXN0IGluICZkcm1fbW9k ZV9jb25maWcgb2YgQGRldi4gQGl0ZXIKKyAqIFNldHMgQGl0ZXIgdXAgdG8gd2FsayB0aGUgJmRy bV9tb2RlX2NvbmZpZy5jb25uZWN0b3JfbGlzdCBvZiBAZGV2LiBAaXRlcgogICogbXVzdCBhbHdh eXMgYmUgY2xlYW5lZCB1cCBhZ2FpbiBieSBjYWxsaW5nIGRybV9jb25uZWN0b3JfbGlzdF9pdGVy X3B1dCgpLgogICogSXRlcmF0aW9uIGl0c2VsZiBoYXBwZW5zIHVzaW5nIGRybV9jb25uZWN0b3Jf bGlzdF9pdGVyX25leHQoKSBvcgogICogZHJtX2Zvcl9lYWNoX2Nvbm5lY3Rvcl9pdGVyKCkuCkBA IC02OTYsOCArNjk2LDggQEAgRFJNX0VOVU1fTkFNRV9GTihkcm1fZ2V0X3R2X3N1YmNvbm5lY3Rv cl9uYW1lLAogICogCWRyaXZlcnMgdGhpcyBpcyBvbmx5IHByb3ZpZGVkIGZvciBiYWNrd2FyZHMg Y29tcGF0aWJpbGl0eSB3aXRoIGV4aXN0aW5nCiAgKiAJZHJpdmVycywgaXQgcmVtYXBzIHRvIGNv bnRyb2xsaW5nIHRoZSAiQUNUSVZFIiBwcm9wZXJ0eSBvbiB0aGUgQ1JUQyB0aGUKICAqIAljb25u ZWN0b3IgaXMgbGlua2VkIHRvLiBEcml2ZXJzIHNob3VsZCBuZXZlciBzZXQgdGhpcyBwcm9wZXJ0 eSBkaXJlY3RseSwKLSAqIAlpdCBpcyBoYW5kbGVkIGJ5IHRoZSBEUk0gY29yZSBieSBjYWxsaW5n IHRoZSAtPmRwbXMoKSBjYWxsYmFjayBpbgotICogCSZkcm1fY29ubmVjdG9yX2Z1bmNzLiBBdG9t aWMgZHJpdmVycyBzaG91bGQgaW1wbGVtZW50IHRoaXMgaG9vayB1c2luZworICogCWl0IGlzIGhh bmRsZWQgYnkgdGhlIERSTSBjb3JlIGJ5IGNhbGxpbmcgdGhlICZkcm1fY29ubmVjdG9yX2Z1bmNz LmRwbXMKKyAqIAljYWxsYmFjay4gQXRvbWljIGRyaXZlcnMgc2hvdWxkIGltcGxlbWVudCB0aGlz IGhvb2sgdXNpbmcKICAqIAlkcm1fYXRvbWljX2hlbHBlcl9jb25uZWN0b3JfZHBtcygpLiBUaGlz IGlzIHRoZSBvbmx5IHByb3BlcnR5IHN0YW5kYXJkCiAgKiAJY29ubmVjdG9yIHByb3BlcnR5IHRo YXQgdXNlcnNwYWNlIGNhbiBjaGFuZ2UuCiAgKiBQQVRIOgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2RybV9jcnRjLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2NydGMuYwppbmRleCBiZDNj OGIyNDM0NDcuLmNlYTdhN2VmYTQzYyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9j cnRjLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9jcnRjLmMKQEAgLTQxNSwxMSArNDE1LDEy IEBAIGludCBkcm1fbW9kZV9nZXRjcnRjKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCiB9CiAKIC8q KgotICogZHJtX21vZGVfc2V0X2NvbmZpZ19pbnRlcm5hbCAtIGhlbHBlciB0byBjYWxsIC0+c2V0 X2NvbmZpZworICogZHJtX21vZGVfc2V0X2NvbmZpZ19pbnRlcm5hbCAtIGhlbHBlciB0byBjYWxs ICZkcm1fbW9kZV9jb25maWdfZnVuY3Muc2V0X2NvbmZpZwogICogQHNldDogbW9kZXNldCBjb25m aWcgdG8gc2V0CiAgKgotICogVGhpcyBpcyBhIGxpdHRsZSBoZWxwZXIgdG8gd3JhcCBpbnRlcm5h bCBjYWxscyB0byB0aGUgLT5zZXRfY29uZmlnIGRyaXZlcgotICogaW50ZXJmYWNlLiBUaGUgb25s eSB0aGluZyBpdCBhZGRzIGlzIGNvcnJlY3QgcmVmY291bnRpbmcgZGFuY2UuCisgKiBUaGlzIGlz IGEgbGl0dGxlIGhlbHBlciB0byB3cmFwIGludGVybmFsIGNhbGxzIHRvIHRoZQorICogJmRybV9t b2RlX2NvbmZpZ19mdW5jcy5zZXRfY29uZmlnIGRyaXZlciBpbnRlcmZhY2UuIFRoZSBvbmx5IHRo aW5nIGl0IGFkZHMgaXMKKyAqIGNvcnJlY3QgcmVmY291bnRpbmcgZGFuY2UuCiAgKgogICogUmV0 dXJuczoKICAqIFplcm8gb24gc3VjY2VzcywgbmVnYXRpdmUgZXJybm8gb24gZmFpbHVyZS4KZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZHVtYl9idWZmZXJzLmMgYi9kcml2ZXJzL2dw dS9kcm0vZHJtX2R1bWJfYnVmZmVycy5jCmluZGV4IGU1YzYxY2RhNGFlMy4uMTAzMDdjYzE2ZDc1 IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2R1bWJfYnVmZmVycy5jCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9kcm1fZHVtYl9idWZmZXJzLmMKQEAgLTQyLDggKzQyLDggQEAKICAqIGNy ZWF0ZSBkdW1iIGJ1ZmZlcnMgc3VpdGFibGUgZm9yIHNjYW5vdXQsIHdoaWNoIGNhbiB0aGVuIGJl IHVzZWQgdG8gY3JlYXRlCiAgKiBLTVMgZnJhbWUgYnVmZmVycy4KICAqCi0gKiBUbyBzdXBwb3J0 IGR1bWIgb2JqZWN0cyBkcml2ZXJzIG11c3QgaW1wbGVtZW50IHRoZSBkdW1iX2NyZWF0ZSwKLSAq IGR1bWJfZGVzdHJveSBhbmQgZHVtYl9tYXBfb2Zmc2V0IG9wZXJhdGlvbnMgZnJvbSAmc3RydWN0 IGRybV9kcml2ZXIuIFNlZQorICogVG8gc3VwcG9ydCBkdW1iIG9iamVjdHMgZHJpdmVycyBtdXN0 IGltcGxlbWVudCB0aGUgJmRybV9kcml2ZXIuZHVtYl9jcmVhdGUsCisgKiAmZHJtX2RyaXZlci5k dW1iX2Rlc3Ryb3kgYW5kICZkcm1fZHJpdmVyLmR1bWJfbWFwX29mZnNldCBvcGVyYXRpb25zLiBT ZWUKICAqIHRoZXJlIGZvciBmdXJ0aGVyIGRldGFpbHMuCiAgKgogICogTm90ZSB0aGF0IGR1bWIg b2JqZWN0cyBtYXkgbm90IGJlIHVzZWQgZm9yIGdwdSBhY2NlbGVyYXRpb24sIGFzIGhhcyBiZWVu CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2VuY29kZXIuYyBiL2RyaXZlcnMvZ3B1 L2RybS9kcm1fZW5jb2Rlci5jCmluZGV4IDQ4N2NmZTM5ODllOC4uMTI5NDUwNzEzYmI3IDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2VuY29kZXIuYworKysgYi9kcml2ZXJzL2dwdS9k cm0vZHJtX2VuY29kZXIuYwpAQCAtOTgsNyArOTgsNyBAQCB2b2lkIGRybV9lbmNvZGVyX3VucmVn aXN0ZXJfYWxsKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAgKgogICogSW5pdGlhbGlzZXMgYSBw cmVhbGxvY2F0ZWQgZW5jb2Rlci4gRW5jb2RlciBzaG91bGQgYmUgc3ViY2xhc3NlZCBhcyBwYXJ0 IG9mCiAgKiBkcml2ZXIgZW5jb2RlciBvYmplY3RzLiBBdCBkcml2ZXIgdW5sb2FkIHRpbWUgZHJt X2VuY29kZXJfY2xlYW51cCgpIHNob3VsZCBiZQotICogY2FsbGVkIGZyb20gdGhlIGRyaXZlcidz IGRlc3Ryb3kgaG9vayBpbiAmZHJtX2VuY29kZXJfZnVuY3MuCisgKiBjYWxsZWQgZnJvbSB0aGUg ZHJpdmVyJ3MgJmRybV9lbmNvZGVyX2Z1bmNzLmRlc3Ryb3kgaG9vay4KICAqCiAgKiBSZXR1cm5z OgogICogWmVybyBvbiBzdWNjZXNzLCBlcnJvciBjb2RlIG9uIGZhaWx1cmUuCmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vZHJtX2VuY29kZXJfc2xhdmUuYyBiL2RyaXZlcnMvZ3B1L2RybS9k cm1fZW5jb2Rlcl9zbGF2ZS5jCmluZGV4IDQ0ODQ3ODVjZDlhYy4uY2Y4MDQzODlmNWVjIDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2VuY29kZXJfc2xhdmUuYworKysgYi9kcml2ZXJz L2dwdS9kcm0vZHJtX2VuY29kZXJfc2xhdmUuYwpAQCAtNDMsNyArNDMsNyBAQAogICogJmRybV9l bmNvZGVyX3NsYXZlLiBUaGUgQHNsYXZlX2Z1bmNzIGZpZWxkIHdpbGwgYmUgaW5pdGlhbGl6ZWQg d2l0aAogICogdGhlIGhvb2tzIHByb3ZpZGVkIGJ5IHRoZSBzbGF2ZSBkcml2ZXIuCiAgKgotICog SWYgQGluZm8tPnBsYXRmb3JtX2RhdGEgaXMgbm9uLU5VTEwgaXQgd2lsbCBiZSB1c2VkIGFzIHRo ZSBpbml0aWFsCisgKiBJZiBAaW5mby5wbGF0Zm9ybV9kYXRhIGlzIG5vbi1OVUxMIGl0IHdpbGwg YmUgdXNlZCBhcyB0aGUgaW5pdGlhbAogICogc2xhdmUgY29uZmlnLgogICoKICAqIFJldHVybnMg MCBvbiBzdWNjZXNzIG9yIGEgbmVnYXRpdmUgZXJybm8gb24gZmFpbHVyZSwgaW4gcGFydGljdWxh ciwKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZnJhbWVidWZmZXIuYyBiL2RyaXZl cnMvZ3B1L2RybS9kcm1fZnJhbWVidWZmZXIuYwppbmRleCA1ODhjY2MzYTIyMTguLmNhOWNmZjA5 Y2FkMSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9mcmFtZWJ1ZmZlci5jCisrKyBi L2RyaXZlcnMvZ3B1L2RybS9kcm1fZnJhbWVidWZmZXIuYwpAQCAtNTgsOCArNTgsOCBAQAogICog ZmJkZXYgZnJhbWVidWZmZXIgd2hlbiB0aGUgc3RydWN0ICZzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVy IGlzIGVtYmVkZGVkIGludG8KICAqIHRoZSBmYmRldiBoZWxwZXIgc3RydWN0KSBkcml2ZXJzIGNh biBtYW51YWxseSBjbGVhbiB1cCBhIGZyYW1lYnVmZmVyIGF0CiAgKiBtb2R1bGUgdW5sb2FkIHRp bWUgd2l0aCBkcm1fZnJhbWVidWZmZXJfdW5yZWdpc3Rlcl9wcml2YXRlKCkuIEJ1dCBkb2luZyB0 aGlzCi0gKiBpcyBub3QgcmVjb21tZW5kZWQsIGFuZCBpdCdzIGJldHRlciB0byBoYXZlIGEgbm9y bWFsIGZyZWUtc3RhbmRpbmcgc3RydWN0Ci0gKiAmZHJtX2ZyYW1lYnVmZmVyLgorICogaXMgbm90 IHJlY29tbWVuZGVkLCBhbmQgaXQncyBiZXR0ZXIgdG8gaGF2ZSBhIG5vcm1hbCBmcmVlLXN0YW5k aW5nICZzdHJ1Y3QKKyAqIGRybV9mcmFtZWJ1ZmZlci4KICAqLwogCiBpbnQgZHJtX2ZyYW1lYnVm ZmVyX2NoZWNrX3NyY19jb29yZHModWludDMyX3Qgc3JjX3gsIHVpbnQzMl90IHNyY195LApAQCAt NDcwLDcgKzQ3MCw3IEBAIGludCBkcm1fbW9kZV9nZXRmYihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2 LAogICogdXNiIGRpc3BsYXktbGluaywgbWlwaSBtYW51YWwgdXBkYXRlIHBhbmVscyBvciBlZHAg cGFuZWwgc2VsZiByZWZyZXNoIG1vZGVzLgogICoKICAqIE1vZGVzZXR0aW5nIGRyaXZlcnMgd2hp Y2ggYWx3YXlzIHVwZGF0ZSB0aGUgZnJvbnRidWZmZXIgZG8gbm90IG5lZWQgdG8KLSAqIGltcGxl bWVudCB0aGUgY29ycmVzcG9uZGluZyAtPmRpcnR5IGZyYW1lYnVmZmVyIGNhbGxiYWNrLgorICog aW1wbGVtZW50IHRoZSBjb3JyZXNwb25kaW5nICZkcm1fZnJhbWVidWZmZXJfZnVuY3MuZGlydHkg Y2FsbGJhY2suCiAgKgogICogQ2FsbGVkIGJ5IHRoZSB1c2VyIHZpYSBpb2N0bC4KICAqCkBAIC03 MDksOCArNzA5LDggQEAgRVhQT1JUX1NZTUJPTChkcm1fZnJhbWVidWZmZXJfdW5yZWdpc3Rlcl9w cml2YXRlKTsKICAqIEBmYjogZnJhbWVidWZmZXIgdG8gcmVtb3ZlCiAgKgogICogQ2xlYW51cCBm cmFtZWJ1ZmZlci4gVGhpcyBmdW5jdGlvbiBpcyBpbnRlbmRlZCB0byBiZSB1c2VkIGZyb20gdGhl IGRyaXZlcnMKLSAqIC0+ZGVzdHJveSBjYWxsYmFjay4gSXQgY2FuIGFsc28gYmUgdXNlZCB0byBj bGVhbiB1cCBkcml2ZXIgcHJpdmF0ZQotICogZnJhbWVidWZmZXJzIGVtYmVkZGVkIGludG8gYSBs YXJnZXIgc3RydWN0dXJlLgorICogJmRybV9mcmFtZWJ1ZmZlcl9mdW5jcy5kZXN0cm95IGNhbGxi YWNrLiBJdCBjYW4gYWxzbyBiZSB1c2VkIHRvIGNsZWFuIHVwCisgKiBkcml2ZXIgcHJpdmF0ZSBm cmFtZWJ1ZmZlcnMgZW1iZWRkZWQgaW50byBhIGxhcmdlciBzdHJ1Y3R1cmUuCiAgKgogICogTm90 ZSB0aGF0IHRoaXMgZnVuY3Rpb24gZG9lcyBub3QgcmVtb3ZlIHRoZSBmYiBmcm9tIGFjdGl2ZSB1 c3VhZ2UgLSBpZiBpdCBpcwogICogc3RpbGwgdXNlZCBhbnl3aGVyZSwgaGlsYXJpdHkgY2FuIGVu c3VlIHNpbmNlIHVzZXJzcGFjZSBjb3VsZCBjYWxsIGdldGZiIG9uCmRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vZHJtX21vZGVzZXRfbG9jay5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9tb2Rl c2V0X2xvY2suYwppbmRleCAzNTUxYWUzMWYxNDMuLmJmNjBmMjY0NWU1NSAxMDA2NDQKLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2RybV9tb2Rlc2V0X2xvY2suYworKysgYi9kcml2ZXJzL2dwdS9kcm0v ZHJtX21vZGVzZXRfbG9jay5jCkBAIC0zMyw3ICszMyw3IEBACiAgKiB0byB1c2UgJnd3X211dGV4 IGFuZCBhY3F1aXJlLWNvbnRleHRzIHRvIGF2b2lkIGRlYWRsb2Nrcy4gIEJ1dCBiZWNhdXNlCiAg KiB0aGUgbG9ja2luZyBpcyBtb3JlIGRpc3RyaWJ1dGVkIGFyb3VuZCB0aGUgZHJpdmVyIGNvZGUs IHdlIHdhbnQgYSBiaXQKICAqIG9mIGV4dHJhIHV0aWxpdHkvdHJhY2tpbmcgb3V0IG9mIG91ciBh Y3F1aXJlLWN0eC4gIFRoaXMgaXMgcHJvdmlkZWQKLSAqIGJ5IGRybV9tb2Rlc2V0X2xvY2sgLyBk cm1fbW9kZXNldF9hY3F1aXJlX2N0eC4KKyAqIGJ5ICZzdHJ1Y3QgZHJtX21vZGVzZXRfbG9jayBh bmQgJnN0cnVjdCBkcm1fbW9kZXNldF9hY3F1aXJlX2N0eC4KICAqCiAgKiBGb3IgYmFzaWMgcHJp bmNpcGxlcyBvZiAmd3dfbXV0ZXgsIHNlZTogRG9jdW1lbnRhdGlvbi9sb2NraW5nL3d3LW11dGV4 LWRlc2lnbi50eHQKICAqCkBAIC01Myw3ICs1Myw3IEBACiAgKiAgICAgZHJtX21vZGVzZXRfYWNx dWlyZV9maW5pKCZjdHgpOwogICoKICAqIE9uIHRvcCBvZiBvZiB0aGVzZSBwZXItb2JqZWN0IGxv Y2tzIHVzaW5nICZ3d19tdXRleCB0aGVyZSdzIGFsc28gYW4gb3ZlcmFsbAotICogZGV2LT5tb2Rl X2NvbmZpZy5sb2NrLCBmb3IgcHJvdGVjdGluZyBldmVyeXRoaW5nIGVsc2UuIE1vc3RseSB0aGlz IG1lYW5zCisgKiAmZHJtX21vZGVfY29uZmlnLm11dGV4LCBmb3IgcHJvdGVjdGluZyBldmVyeXRo aW5nIGVsc2UuIE1vc3RseSB0aGlzIG1lYW5zCiAgKiBwcm9iZSBzdGF0ZSBvZiBjb25uZWN0b3Jz LCBhbmQgcHJldmVudGluZyBob3RwbHVnIGFkZC9yZW1vdmFsIG9mIGNvbm5lY3RvcnMuCiAgKgog ICogRmluYWxseSB0aGVyZSdzIGEgYnVuY2ggb2YgZGVkaWNhdGVkIGxvY2tzIHRvIHByb3RlY3Qg ZHJtIGNvcmUgaW50ZXJuYWwKQEAgLTcxLDcgKzcxLDcgQEAgc3RhdGljIERFRklORV9XV19DTEFT UyhjcnRjX3d3X2NsYXNzKTsKICAqIGRybV9tb2Rlc2V0X3VubG9ja19hbGwoKSBmdW5jdGlvbi4K ICAqCiAgKiBUaGlzIGZ1bmN0aW9uIGlzIGRlcHJlY2F0ZWQuIEl0IGFsbG9jYXRlcyBhIGxvY2sg YWNxdWlzaXRpb24gY29udGV4dCBhbmQKLSAqIHN0b3JlcyBpdCBpbiB0aGUgRFJNIGRldmljZSdz IC0+bW9kZV9jb25maWcuIFRoaXMgZmFjaWxpdGF0ZSBjb252ZXJzaW9uIG9mCisgKiBzdG9yZXMg aXQgaW4gJmRybV9kZXZpY2UubW9kZV9jb25maWcuIFRoaXMgZmFjaWxpdGF0ZSBjb252ZXJzaW9u IG9mCiAgKiBleGlzdGluZyBjb2RlIGJlY2F1c2UgaXQgcmVtb3ZlcyB0aGUgbmVlZCB0byBtYW51 YWxseSBkZWFsIHdpdGggdGhlCiAgKiBhY3F1aXNpdGlvbiBjb250ZXh0LCBidXQgaXQgaXMgYWxz byBicml0dGxlIGJlY2F1c2UgdGhlIGNvbnRleHQgaXMgZ2xvYmFsCiAgKiBhbmQgY2FyZSBtdXN0 IGJlIHRha2VuIG5vdCB0byBuZXN0IGNhbGxzLiBOZXcgY29kZSBzaG91bGQgdXNlIHRoZQpAQCAt MTI0LDcgKzEyNCw3IEBAIEVYUE9SVF9TWU1CT0woZHJtX21vZGVzZXRfbG9ja19hbGwpOwogICog ZHJtX21vZGVzZXRfbG9ja19hbGwoKSBmdW5jdGlvbi4KICAqCiAgKiBUaGlzIGZ1bmN0aW9uIGlz IGRlcHJlY2F0ZWQuIEl0IHVzZXMgdGhlIGxvY2sgYWNxdWlzaXRpb24gY29udGV4dCBzdG9yZWQK LSAqIGluIHRoZSBEUk0gZGV2aWNlJ3MgLT5tb2RlX2NvbmZpZy4gVGhpcyBmYWNpbGl0YXRlcyBj b252ZXJzaW9uIG9mIGV4aXN0aW5nCisgKiBpbiAmZHJtX2RldmljZS5tb2RlX2NvbmZpZy4gVGhp cyBmYWNpbGl0YXRlcyBjb252ZXJzaW9uIG9mIGV4aXN0aW5nCiAgKiBjb2RlIGJlY2F1c2UgaXQg cmVtb3ZlcyB0aGUgbmVlZCB0byBtYW51YWxseSBkZWFsIHdpdGggdGhlIGFjcXVpc2l0aW9uCiAg KiBjb250ZXh0LCBidXQgaXQgaXMgYWxzbyBicml0dGxlIGJlY2F1c2UgdGhlIGNvbnRleHQgaXMg Z2xvYmFsIGFuZCBjYXJlIG11c3QKICAqIGJlIHRha2VuIG5vdCB0byBuZXN0IGNhbGxzLiBOZXcg Y29kZSBzaG91bGQgcGFzcyB0aGUgYWNxdWlzaXRpb24gY29udGV4dApAQCAtNDY4LDcgKzQ2OCw3 IEBAIEVYUE9SVF9TWU1CT0woZHJtX21vZGVzZXRfdW5sb2NrKTsKICAqIFRoaXMgZnVuY3Rpb24g dGFrZXMgYWxsIG1vZGVzZXQgbG9ja3MsIHN1aXRhYmxlIHdoZXJlIGEgbW9yZSBmaW5lLWdyYWlu ZWQKICAqIHNjaGVtZSBpc24ndCAoeWV0KSBpbXBsZW1lbnRlZC4KICAqCi0gKiBVbmxpa2UgZHJt X21vZGVzZXRfbG9ja19hbGwoKSwgaXQgZG9lc24ndCB0YWtlIHRoZSBkZXYtPm1vZGVfY29uZmln Lm11dGV4CisgKiBVbmxpa2UgZHJtX21vZGVzZXRfbG9ja19hbGwoKSwgaXQgZG9lc24ndCB0YWtl IHRoZSAmZHJtX21vZGVfY29uZmlnLm11dGV4CiAgKiBzaW5jZSB0aGF0IGxvY2sgaXNuJ3QgcmVx dWlyZWQgZm9yIG1vZGVzZXQgc3RhdGUgY2hhbmdlcy4gQ2FsbGVycyB3aGljaAogICogbmVlZCB0 byBncmFiIHRoYXQgbG9jayB0b28gbmVlZCB0byBkbyBzbyBvdXRzaWRlIG9mIHRoZSBhY3F1aXJl IGNvbnRleHQKICAqIEBjdHguCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX3BsYW5l LmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX3BsYW5lLmMKaW5kZXggZWVkNjZiZTE4MzI5Li5jNDY0 ZmM0YTg3NGQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fcGxhbmUuYworKysgYi9k cml2ZXJzL2dwdS9kcm0vZHJtX3BsYW5lLmMKQEAgLTQyLDcgKzQyLDcgQEAKICAqCiAgKiBDdXJz b3IgYW5kIG92ZXJsYXkgcGxhbmVzIGFyZSBvcHRpb25hbC4gQWxsIGRyaXZlcnMgc2hvdWxkIHBy b3ZpZGUgb25lCiAgKiBwcmltYXJ5IHBsYW5lIHBlciBDUlRDIHRvIGF2b2lkIHN1cnByaXNpbmcg dXNlcnNwYWNlIHRvbyBtdWNoLiBTZWUgZW51bQotICogJmRybV9wbGFuZV90eXBlIGZvciBhIG1v cmUgaW4tZGVwdGggZGlzY3Vzc2lvbiBvZiB0aGVzZSBzcGVjaWFsIHVhcGktcmVsZXZhbnQKKyAq IGRybV9wbGFuZV90eXBlIGZvciBhIG1vcmUgaW4tZGVwdGggZGlzY3Vzc2lvbiBvZiB0aGVzZSBz cGVjaWFsIHVhcGktcmVsZXZhbnQKICAqIHBsYW5lIHR5cGVzLiBTcGVjaWFsIHBsYW5lcyBhcmUg YXNzb2NpYXRlZCB3aXRoIHRoZWlyIENSVEMgYnkgY2FsbGluZwogICogZHJtX2NydGNfaW5pdF93 aXRoX3BsYW5lcygpLgogICoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fcHJvcGVy dHkuYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fcHJvcGVydHkuYwppbmRleCAwZDBlNWRjMGVlMjMu LjBjYjJhMzlmZTA1OSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9wcm9wZXJ0eS5j CisrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fcHJvcGVydHkuYwpAQCAtNDMsNyArNDMsNyBAQAog ICoKICAqIFByb3BlcnR5IHZhbHVlcyBhcmUgb25seSA2NGJpdC4gVG8gc3VwcG9ydCBiaWdnZXIg cGlsZXMgb2YgZGF0YSAobGlrZSBnYW1tYQogICogdGFibGVzLCBjb2xvciBjb3JyZWN0aW9uIG1h dHJpemVzIG9yIGxhcmdlIHN0cnVjdHVyZXMpIGEgcHJvcGVydHkgY2FuIGluc3RlYWQKLSAqIHBv aW50IGF0IGEgJmRybV9wcm9wZXJ0eV9ibG9iIHdpdGggdGhhdCBhZGRpdGlvbmFsIGRhdGEKKyAq IHBvaW50IGF0IGEgJmRybV9wcm9wZXJ0eV9ibG9iIHdpdGggdGhhdCBhZGRpdGlvbmFsIGRhdGEu CiAgKgogICogUHJvcGVydGllcyBhcmUgZGVmaW5lZCBieSB0aGVpciBzeW1ib2xpYyBuYW1lLCB1 c2Vyc3BhY2UgbXVzdCBrZWVwIGEKICAqIHBlci1vYmplY3QgbWFwcGluZyBmcm9tIHRob3NlIG5h bWVzIHRvIHRoZSBwcm9wZXJ0eSBJRCB1c2VkIGluIHRoZSBhdG9taWMKZGlmZiAtLWdpdCBhL2lu Y2x1ZGUvZHJtL2RybV9hdG9taWMuaCBiL2luY2x1ZGUvZHJtL2RybV9hdG9taWMuaAppbmRleCBm MWNiMmIwOGFmYjUuLjA1MmFiMTYxYjIzOSAxMDA2NDQKLS0tIGEvaW5jbHVkZS9kcm0vZHJtX2F0 b21pYy5oCisrKyBiL2luY2x1ZGUvZHJtL2RybV9hdG9taWMuaApAQCAtMTIzLDcgKzEyMyw4IEBA IHN0cnVjdCBkcm1fY3J0Y19jb21taXQgewogCS8qKgogCSAqIEBjb21taXRfZW50cnk6CiAJICoK LQkgKiBFbnRyeSBvbiB0aGUgcGVyLUNSVEMgY29tbWl0X2xpc3QuIFByb3RlY3RlZCBieSBjcnRj LT5jb21taXRfbG9jay4KKwkgKiBFbnRyeSBvbiB0aGUgcGVyLUNSVEMgJmRybV9jcnRjLmNvbW1p dF9saXN0LiBQcm90ZWN0ZWQgYnkKKwkgKiAkZHJtX2NydGMuY29tbWl0X2xvY2suCiAJICovCiAJ c3RydWN0IGxpc3RfaGVhZCBjb21taXRfZW50cnk7CiAKQEAgLTQyOSw3ICs0MzAsOCBAQCB2b2lk IGRybV9zdGF0ZV9kdW1wKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0cnVjdCBkcm1fcHJpbnRl ciAqcCk7CiAgKgogICogRm9yIGV4YW1wbGUgaWYgdGhlIENSVEMgbW9kZSBoYXMgY2hhbmdlZCwg YW5kIHRoZSBoYXJkd2FyZSBpcyBhYmxlIHRvIGVuYWN0CiAgKiB0aGUgcmVxdWVzdGVkIG1vZGUg Y2hhbmdlIHdpdGhvdXQgZ29pbmcgdGhyb3VnaCBhIGZ1bGwgbW9kZXNldCwgdGhlIGRyaXZlcgot ICogc2hvdWxkIGNsZWFyIG1vZGVfY2hhbmdlZCBkdXJpbmcgaXRzIC0+YXRvbWljX2NoZWNrLgor ICogc2hvdWxkIGNsZWFyIG1vZGVfY2hhbmdlZCBpbiBpdHMgJmRybV9tb2RlX2NvbmZpZ19mdW5j cy5hdG9taWNfY2hlY2sKKyAqIGltcGxlbWVudGF0aW9uLgogICovCiBzdGF0aWMgaW5saW5lIGJv b2wKIGRybV9hdG9taWNfY3J0Y19uZWVkc19tb2Rlc2V0KGNvbnN0IHN0cnVjdCBkcm1fY3J0Y19z dGF0ZSAqc3RhdGUpCmRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS9kcm1fY29sb3JfbWdtdC5oIGIv aW5jbHVkZS9kcm0vZHJtX2NvbG9yX21nbXQuaAppbmRleCBjNzY3MjM4YWM5ZDUuLmQ5YzJmNjgw ZjVhZSAxMDA2NDQKLS0tIGEvaW5jbHVkZS9kcm0vZHJtX2NvbG9yX21nbXQuaAorKysgYi9pbmNs dWRlL2RybS9kcm1fY29sb3JfbWdtdC5oCkBAIC0zNCw3ICszNCw3IEBAIGludCBkcm1fbW9kZV9j cnRjX3NldF9nYW1tYV9zaXplKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKIAkJCQkgaW50IGdhbW1h X3NpemUpOwogCiAvKioKLSAqIGRybV9jb2xvcl9sdXRfZXh0cmFjdCAtIGNsYW1wJnJvdW5kIExV VCBlbnRyaWVzCisgKiBkcm1fY29sb3JfbHV0X2V4dHJhY3QgLSBjbGFtcCBhbmQgcm91bmQgTFVU IGVudHJpZXMKICAqIEB1c2VyX2lucHV0OiBpbnB1dCB2YWx1ZQogICogQGJpdF9wcmVjaXNpb246 IG51bWJlciBvZiBiaXRzIHRoZSBodyBMVVQgc3VwcG9ydHMKICAqCmRpZmYgLS1naXQgYS9pbmNs dWRlL2RybS9kcm1fY29ubmVjdG9yLmggYi9pbmNsdWRlL2RybS9kcm1fY29ubmVjdG9yLmgKaW5k ZXggZDQ4OWNjMDAzYjdlLi40ZjdkM2I0OTk5NWEgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvZHJtL2Ry bV9jb25uZWN0b3IuaAorKysgYi9pbmNsdWRlL2RybS9kcm1fY29ubmVjdG9yLmgKQEAgLTMzMSwx NSArMzMxLDE1IEBAIHN0cnVjdCBkcm1fY29ubmVjdG9yX2Z1bmNzIHsKIAkgKgogCSAqIEVudHJ5 IHBvaW50IGZvciBvdXRwdXQgZGV0ZWN0aW9uIGFuZCBiYXNpYyBtb2RlIHZhbGlkYXRpb24uIFRo ZQogCSAqIGRyaXZlciBzaG91bGQgcmVwcm9iZSB0aGUgb3V0cHV0IGlmIG5lZWRlZCAoZS5nLiB3 aGVuIGhvdHBsdWcKLQkgKiBoYW5kbGluZyBpcyB1bnJlbGlhYmxlKSwgYWRkIGFsbCBkZXRlY3Rl ZCBtb2RlcyB0byBjb25uZWN0b3ItPm1vZGVzCisJICogaGFuZGxpbmcgaXMgdW5yZWxpYWJsZSks IGFkZCBhbGwgZGV0ZWN0ZWQgbW9kZXMgdG8gJmRybV9jb25uZWN0b3IubW9kZXMKIAkgKiBhbmQg ZmlsdGVyIG91dCBhbnkgdGhlIGRldmljZSBjYW4ndCBzdXBwb3J0IGluIGFueSBjb25maWd1cmF0 aW9uLiBJdAogCSAqIGFsc28gbmVlZHMgdG8gZmlsdGVyIG91dCBhbnkgbW9kZXMgd2lkZXIgb3Ig aGlnaGVyIHRoYW4gdGhlCiAJICogcGFyYW1ldGVycyBtYXhfd2lkdGggYW5kIG1heF9oZWlnaHQg aW5kaWNhdGUuCiAJICoKIAkgKiBUaGUgZHJpdmVycyBtdXN0IGFsc28gcHJ1bmUgYW55IG1vZGVz IG5vIGxvbmdlciB2YWxpZCBmcm9tCi0JICogY29ubmVjdG9yLT5tb2Rlcy4gRnVydGhlcm1vcmUg aXQgbXVzdCB1cGRhdGUgY29ubmVjdG9yLT5zdGF0dXMgYW5kCi0JICogY29ubmVjdG9yLT5lZGlk LiAgSWYgbm8gRURJRCBoYXMgYmVlbiByZWNlaXZlZCBmb3IgdGhpcyBvdXRwdXQKLQkgKiBjb25u ZWN0b3ItPmVkaWQgbXVzdCBiZSBOVUxMLgorCSAqICZkcm1fY29ubmVjdG9yLm1vZGVzLiBGdXJ0 aGVybW9yZSBpdCBtdXN0IHVwZGF0ZQorCSAqICZkcm1fY29ubmVjdG9yLnN0YXR1cyBhbmQgJmRy bV9jb25uZWN0b3IuZWRpZC4gIElmIG5vIEVESUQgaGFzIGJlZW4KKwkgKiByZWNlaXZlZCBmb3Ig dGhpcyBvdXRwdXQgY29ubmVjdG9yLT5lZGlkIG11c3QgYmUgTlVMTC4KIAkgKgogCSAqIERyaXZl cnMgdXNpbmcgdGhlIHByb2JlIGhlbHBlcnMgc2hvdWxkIHVzZQogCSAqIGRybV9oZWxwZXJfcHJv YmVfc2luZ2xlX2Nvbm5lY3Rvcl9tb2RlcygpIG9yCkBAIC0zNDgsNyArMzQ4LDcgQEAgc3RydWN0 IGRybV9jb25uZWN0b3JfZnVuY3MgewogCSAqCiAJICogUkVUVVJOUzoKIAkgKgotCSAqIFRoZSBu dW1iZXIgb2YgbW9kZXMgZGV0ZWN0ZWQgYW5kIGZpbGxlZCBpbnRvIGNvbm5lY3Rvci0+bW9kZXMu CisJICogVGhlIG51bWJlciBvZiBtb2RlcyBkZXRlY3RlZCBhbmQgZmlsbGVkIGludG8gJmRybV9j b25uZWN0b3IubW9kZXMuCiAJICovCiAJaW50ICgqZmlsbF9tb2Rlcykoc3RydWN0IGRybV9jb25u ZWN0b3IgKmNvbm5lY3RvciwgdWludDMyX3QgbWF4X3dpZHRoLCB1aW50MzJfdCBtYXhfaGVpZ2h0 KTsKIApAQCAtMzgxLDcgKzM4MSw3IEBAIHN0cnVjdCBkcm1fY29ubmVjdG9yX2Z1bmNzIHsKIAkg KiBjb3JlIGRybSBjb25uZWN0b3IgaW50ZXJmYWNlcy4gRXZlcnl0aGluZyBhZGRlZCBmcm9tIHRo aXMgY2FsbGJhY2sKIAkgKiBzaG91bGQgYmUgdW5yZWdpc3RlcmVkIGluIHRoZSBlYXJseV91bnJl Z2lzdGVyIGNhbGxiYWNrLgogCSAqCi0JICogVGhpcyBpcyBjYWxsZWQgd2hpbGUgaG9sZGluZyBk cm1fY29ubmVjdG9yLT5tdXRleC4KKwkgKiBUaGlzIGlzIGNhbGxlZCB3aGlsZSBob2xkaW5nICZk cm1fY29ubmVjdG9yLm11dGV4LgogCSAqCiAJICogUmV0dXJuczoKIAkgKgpAQCAtMzk4LDcgKzM5 OCw3IEBAIHN0cnVjdCBkcm1fY29ubmVjdG9yX2Z1bmNzIHsKIAkgKiBlYXJseSBpbiB0aGUgZHJp dmVyIHVubG9hZCBzZXF1ZW5jZSB0byBkaXNhYmxlIHVzZXJzcGFjZSBhY2Nlc3MKIAkgKiBiZWZv cmUgZGF0YSBzdHJ1Y3R1cmVzIGFyZSB0b3JuZG93bi4KIAkgKgotCSAqIFRoaXMgaXMgY2FsbGVk IHdoaWxlIGhvbGRpbmcgZHJtX2Nvbm5lY3Rvci0+bXV0ZXguCisJICogVGhpcyBpcyBjYWxsZWQg d2hpbGUgaG9sZGluZyAmZHJtX2Nvbm5lY3Rvci5tdXRleC4KIAkgKi8KIAl2b2lkICgqZWFybHlf dW5yZWdpc3Rlcikoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3Rvcik7CiAKQEAgLTQxOCw5 ICs0MTgsOSBAQCBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9mdW5jcyB7CiAJICogRHVwbGljYXRlIHRo ZSBjdXJyZW50IGF0b21pYyBzdGF0ZSBmb3IgdGhpcyBjb25uZWN0b3IgYW5kIHJldHVybiBpdC4K IAkgKiBUaGUgY29yZSBhbmQgaGVscGVycyBndWFyYW50ZWUgdGhhdCBhbnkgYXRvbWljIHN0YXRl IGR1cGxpY2F0ZWQgd2l0aAogCSAqIHRoaXMgaG9vayBhbmQgc3RpbGwgb3duZWQgYnkgdGhlIGNh bGxlciAoaS5lLiBub3QgdHJhbnNmZXJyZWQgdG8gdGhlCi0JICogZHJpdmVyIGJ5IGNhbGxpbmcg LT5hdG9taWNfY29tbWl0KCkgZnJvbSBzdHJ1Y3QKLQkgKiAmZHJtX21vZGVfY29uZmlnX2Z1bmNz KSB3aWxsIGJlIGNsZWFuZWQgdXAgYnkgY2FsbGluZyB0aGUKLQkgKiBAYXRvbWljX2Rlc3Ryb3lf c3RhdGUgaG9vayBpbiB0aGlzIHN0cnVjdHVyZS4KKwkgKiBkcml2ZXIgYnkgY2FsbGluZyAmZHJt X21vZGVfY29uZmlnX2Z1bmNzLmF0b21pY19jb21taXQpIHdpbGwgYmUKKwkgKiBjbGVhbmVkIHVw IGJ5IGNhbGxpbmcgdGhlIEBhdG9taWNfZGVzdHJveV9zdGF0ZSBob29rIGluIHRoaXMKKwkgKiBz dHJ1Y3R1cmUuCiAJICoKIAkgKiBBdG9taWMgZHJpdmVycyB3aGljaCBkb24ndCBzdWJjbGFzcyAm c3RydWN0IGRybV9jb25uZWN0b3Jfc3RhdGUgc2hvdWxkIHVzZQogCSAqIGRybV9hdG9taWNfaGVs cGVyX2Nvbm5lY3Rvcl9kdXBsaWNhdGVfc3RhdGUoKS4gRHJpdmVycyB0aGF0IHN1YmNsYXNzIHRo ZQpAQCAtNDI4LDcgKzQyOCw3IEBAIHN0cnVjdCBkcm1fY29ubmVjdG9yX2Z1bmNzIHsKIAkgKiBf X2RybV9hdG9taWNfaGVscGVyX2Nvbm5lY3Rvcl9kdXBsaWNhdGVfc3RhdGUoKSB0byBtYWtlIHN1 cmUgc2hhcmVkIHN0YXRlIGlzCiAJICogZHVwbGljYXRlZCBpbiBhIGNvbnNpc3RlbnQgZmFzaGlv biBhY3Jvc3MgZHJpdmVycy4KIAkgKgotCSAqIEl0IGlzIGFuIGVycm9yIHRvIGNhbGwgdGhpcyBo b29rIGJlZm9yZSBjb25uZWN0b3ItPnN0YXRlIGhhcyBiZWVuCisJICogSXQgaXMgYW4gZXJyb3Ig dG8gY2FsbCB0aGlzIGhvb2sgYmVmb3JlICZkcm1fY29ubmVjdG9yLnN0YXRlIGhhcyBiZWVuCiAJ ICogaW5pdGlhbGl6ZWQgY29ycmVjdGx5LgogCSAqCiAJICogTk9URToKQEAgLTYwOSw4ICs2MDks OCBAQCBzdHJ1Y3QgZHJtX2Nvbm5lY3RvciB7CiAKIAkvKioKIAkgKiBAbXV0ZXg6IExvY2sgZm9y IGdlbmVyYWwgY29ubmVjdG9yIHN0YXRlLCBidXQgY3VycmVudGx5IG9ubHkgcHJvdGVjdHMKLQkg KiBAcmVnaXN0ZXJlZC4gTW9zdCBvZiB0aGUgY29ubmVjdG9yIHN0YXRlIGlzIHN0aWxsIHByb3Rl Y3RlZCBieSB0aGUKLQkgKiBtdXRleCBpbiAmZHJtX21vZGVfY29uZmlnLgorCSAqIEByZWdpc3Rl cmVkLiBNb3N0IG9mIHRoZSBjb25uZWN0b3Igc3RhdGUgaXMgc3RpbGwgcHJvdGVjdGVkIGJ5CisJ ICogJmRybV9tb2RlX2NvbmZpZy5tdXRleC4KIAkgKi8KIAlzdHJ1Y3QgbXV0ZXggbXV0ZXg7CiAK QEAgLTYzNiwxNCArNjM2LDE0IEBAIHN0cnVjdCBkcm1fY29ubmVjdG9yIHsKIAkvKioKIAkgKiBA bW9kZXM6CiAJICogTW9kZXMgYXZhaWxhYmxlIG9uIHRoaXMgY29ubmVjdG9yIChmcm9tIGZpbGxf bW9kZXMoKSArIHVzZXIpLgotCSAqIFByb3RlY3RlZCBieSBkZXYtPm1vZGVfY29uZmlnLm11dGV4 LgorCSAqIFByb3RlY3RlZCBieSAmZHJtX21vZGVfY29uZmlnLm11dGV4LgogCSAqLwotCXN0cnVj dCBsaXN0X2hlYWQgbW9kZXM7IC8qIGxpc3Qgb2YgbW9kZXMgb24gdGhpcyBjb25uZWN0b3IgKi8K KwlzdHJ1Y3QgbGlzdF9oZWFkIG1vZGVzOwogCiAJLyoqCiAJICogQHN0YXR1czoKIAkgKiBPbmUg b2YgdGhlIGRybV9jb25uZWN0b3Jfc3RhdHVzIGVudW1zIChjb25uZWN0ZWQsIG5vdCwgb3IgdW5r bm93bikuCi0JICogUHJvdGVjdGVkIGJ5IGRldi0+bW9kZV9jb25maWcubXV0ZXguCisJICogUHJv dGVjdGVkIGJ5ICZkcm1fbW9kZV9jb25maWcubXV0ZXguCiAJICovCiAJZW51bSBkcm1fY29ubmVj dG9yX3N0YXR1cyBzdGF0dXM7CiAKQEAgLTY1MSw3ICs2NTEsNyBAQCBzdHJ1Y3QgZHJtX2Nvbm5l Y3RvciB7CiAJICogQHByb2JlZF9tb2RlczoKIAkgKiBUaGVzZSBhcmUgbW9kZXMgYWRkZWQgYnkg cHJvYmluZyB3aXRoIEREQyBvciB0aGUgQklPUywgYmVmb3JlCiAJICogZmlsdGVyaW5nIGlzIGFw cGxpZWQuIFVzZWQgYnkgdGhlIHByb2JlIGhlbHBlcnMuUHJvdGVjdGVkIGJ5Ci0JICogZGV2LT5t b2RlX2NvbmZpZy5tdXRleC4KKwkgKiAmZHJtX21vZGVfY29uZmlnLm11dGV4LgogCSAqLwogCXN0 cnVjdCBsaXN0X2hlYWQgcHJvYmVkX21vZGVzOwogCkBAIC02NTksMTAgKzY1OSwxMCBAQCBzdHJ1 Y3QgZHJtX2Nvbm5lY3RvciB7CiAJICogQGRpc3BsYXlfaW5mbzogRGlzcGxheSBpbmZvcm1hdGlv biBpcyBmaWxsZWQgZnJvbSBFRElEIGluZm9ybWF0aW9uCiAJICogd2hlbiBhIGRpc3BsYXkgaXMg ZGV0ZWN0ZWQuIEZvciBub24gaG90LXBsdWdnYWJsZSBkaXNwbGF5cyBzdWNoIGFzCiAJICogZmxh dCBwYW5lbHMgaW4gZW1iZWRkZWQgc3lzdGVtcywgdGhlIGRyaXZlciBzaG91bGQgaW5pdGlhbGl6 ZSB0aGUKLQkgKiBkaXNwbGF5X2luZm8ud2lkdGhfbW0gYW5kIGRpc3BsYXlfaW5mby5oZWlnaHRf bW0gZmllbGRzIHdpdGggdGhlCi0JICogcGh5c2ljYWwgc2l6ZSBvZiB0aGUgZGlzcGxheS4KKwkg KiAmZHJtX2Rpc3BsYXlfaW5mby53aWR0aF9tbSBhbmQgJmRybV9kaXNwbGF5X2luZm8uaGVpZ2h0 X21tIGZpZWxkcworCSAqIHdpdGggdGhlIHBoeXNpY2FsIHNpemUgb2YgdGhlIGRpc3BsYXkuCiAJ ICoKLQkgKiBQcm90ZWN0ZWQgYnkgZGV2LT5tb2RlX2NvbmZpZy5tdXRleC4KKwkgKiBQcm90ZWN0 ZWQgYnkgJmRybV9tb2RlX2NvbmZpZy5tdXRleC4KIAkgKi8KIAlzdHJ1Y3QgZHJtX2Rpc3BsYXlf aW5mbyBkaXNwbGF5X2luZm87CiAJY29uc3Qgc3RydWN0IGRybV9jb25uZWN0b3JfZnVuY3MgKmZ1 bmNzOwpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX2NydGMuaCBiL2luY2x1ZGUvZHJtL2Ry bV9jcnRjLmgKaW5kZXggMDZjOTQzZDFlMDRjLi40OTYzMjRkMzQxNmIgMTAwNjQ0Ci0tLSBhL2lu Y2x1ZGUvZHJtL2RybV9jcnRjLmgKKysrIGIvaW5jbHVkZS9kcm0vZHJtX2NydGMuaApAQCAtODEs OCArODEsOCBAQCBzdHJ1Y3QgZHJtX3BsYW5lX2hlbHBlcl9mdW5jczsKICAqIEBlbmFibGU6IHdo ZXRoZXIgdGhlIENSVEMgc2hvdWxkIGJlIGVuYWJsZWQsIGdhdGVzIGFsbCBvdGhlciBzdGF0ZQog ICogQGFjdGl2ZTogd2hldGhlciB0aGUgQ1JUQyBpcyBhY3RpdmVseSBkaXNwbGF5aW5nICh1c2Vk IGZvciBEUE1TKQogICogQHBsYW5lc19jaGFuZ2VkOiBwbGFuZXMgb24gdGhpcyBjcnRjIGFyZSB1 cGRhdGVkCi0gKiBAbW9kZV9jaGFuZ2VkOiBjcnRjX3N0YXRlLT5tb2RlIG9yIGNydGNfc3RhdGUt PmVuYWJsZSBoYXMgYmVlbiBjaGFuZ2VkCi0gKiBAYWN0aXZlX2NoYW5nZWQ6IGNydGNfc3RhdGUt PmFjdGl2ZSBoYXMgYmVlbiB0b2dnbGVkLgorICogQG1vZGVfY2hhbmdlZDogQG1vZGUgb3IgQGVu YWJsZSBoYXMgYmVlbiBjaGFuZ2VkCisgKiBAYWN0aXZlX2NoYW5nZWQ6IEBhY3RpdmUgaGFzIGJl ZW4gdG9nZ2xlZC4KICAqIEBjb25uZWN0b3JzX2NoYW5nZWQ6IGNvbm5lY3RvcnMgdG8gdGhpcyBj cnRjIGhhdmUgYmVlbiB1cGRhdGVkCiAgKiBAenBvc19jaGFuZ2VkOiB6cG9zIHZhbHVlcyBvZiBw bGFuZXMgb24gdGhpcyBjcnRjIGhhdmUgYmVlbiB1cGRhdGVkCiAgKiBAY29sb3JfbWdtdF9jaGFu Z2VkOiBjb2xvciBtYW5hZ2VtZW50IHByb3BlcnRpZXMgaGF2ZSBjaGFuZ2VkIChkZWdhbW1hIG9y CkBAIC0xMDIsOSArMTAyLDEwIEBAIHN0cnVjdCBkcm1fcGxhbmVfaGVscGVyX2Z1bmNzOwogICoK ICAqIE5vdGUgdGhhdCB0aGUgZGlzdGluY3Rpb24gYmV0d2VlbiBAZW5hYmxlIGFuZCBAYWN0aXZl IGlzIHJhdGhlciBzdWJ0aWxlOgogICogRmxpcHBpbmcgQGFjdGl2ZSB3aGlsZSBAZW5hYmxlIGlz IHNldCB3aXRob3V0IGNoYW5naW5nIGFueXRoaW5nIGVsc2UgbWF5Ci0gKiBuZXZlciByZXR1cm4g aW4gYSBmYWlsdXJlIGZyb20gdGhlIC0+YXRvbWljX2NoZWNrIGNhbGxiYWNrLiBVc2Vyc3BhY2Ug YXNzdW1lcwotICogdGhhdCBhIERQTVMgT24gd2lsbCBhbHdheXMgc3VjY2VlZC4gSW4gb3RoZXIg d29yZHM6IEBlbmFibGUgY29udHJvbHMgcmVzb3VyY2UKLSAqIGFzc2lnbm1lbnQsIEBhY3RpdmUg Y29udHJvbHMgdGhlIGFjdHVhbCBoYXJkd2FyZSBzdGF0ZS4KKyAqIG5ldmVyIHJldHVybiBpbiBh IGZhaWx1cmUgZnJvbSB0aGUgJmRybV9tb2RlX2NvbmZpZ19mdW5jcy5hdG9taWNfY2hlY2sKKyAq IGNhbGxiYWNrLiBVc2Vyc3BhY2UgYXNzdW1lcyB0aGF0IGEgRFBNUyBPbiB3aWxsIGFsd2F5cyBz dWNjZWVkLiBJbiBvdGhlcgorICogd29yZHM6IEBlbmFibGUgY29udHJvbHMgcmVzb3VyY2UgYXNz aWdubWVudCwgQGFjdGl2ZSBjb250cm9scyB0aGUgYWN0dWFsCisgKiBoYXJkd2FyZSBzdGF0ZS4K ICAqCiAgKiBUaGUgdGhyZWUgYm9vbGVhbnMgYWN0aXZlX2NoYW5nZWQsIGNvbm5lY3RvcnNfY2hh bmdlZCBhbmQgbW9kZV9jaGFuZ2VkIGFyZQogICogaW50ZW5kZWQgdG8gaW5kaWNhdGUgd2hldGhl ciBhIGZ1bGwgbW9kZXNldCBpcyBuZWVkZWQsIHJhdGhlciB0aGFuIHN0cmljdGx5CkBAIC0zNDYs OCArMzQ3LDggQEAgc3RydWN0IGRybV9jcnRjX2Z1bmNzIHsKIAkgKiB0aHJvdWdoIHRoZSBEUk1f TU9ERV9QQUdFX0ZMSVBfQVNZTkMgZmxhZykuIFdoZW4gYW4gYXBwbGljYXRpb24KIAkgKiByZXF1 ZXN0cyBhIHBhZ2UgZmxpcCB0aGUgRFJNIGNvcmUgdmVyaWZpZXMgdGhhdCB0aGUgbmV3IGZyYW1l IGJ1ZmZlcgogCSAqIGlzIGxhcmdlIGVub3VnaCB0byBiZSBzY2FubmVkIG91dCBieSB0aGUgQ1JU QyBpbiB0aGUgY3VycmVudGx5Ci0JICogY29uZmlndXJlZCBtb2RlIGFuZCB0aGVuIGNhbGxzIHRo ZSBDUlRDIC0+cGFnZV9mbGlwKCkgb3BlcmF0aW9uIHdpdGggYQotCSAqIHBvaW50ZXIgdG8gdGhl IG5ldyBmcmFtZSBidWZmZXIuCisJICogY29uZmlndXJlZCBtb2RlIGFuZCB0aGVuIGNhbGxzIHRo aXMgaG9vayB3aXRoIGEgcG9pbnRlciB0byB0aGUgbmV3CisJICogZnJhbWUgYnVmZmVyLgogCSAq CiAJICogVGhlIGRyaXZlciBtdXN0IHdhaXQgZm9yIGFueSBwZW5kaW5nIHJlbmRlcmluZyB0byB0 aGUgbmV3IGZyYW1lYnVmZmVyCiAJICogdG8gY29tcGxldGUgYmVmb3JlIGV4ZWN1dGluZyB0aGUg ZmxpcC4gSXQgc2hvdWxkIGFsc28gd2FpdCBmb3IgYW55CkBAIC0zODIsNyArMzgzLDcgQEAgc3Ry dWN0IGRybV9jcnRjX2Z1bmNzIHsKIAkgKiBSRVRVUk5TOgogCSAqCiAJICogMCBvbiBzdWNjZXNz IG9yIGEgbmVnYXRpdmUgZXJyb3IgY29kZSBvbiBmYWlsdXJlLiBOb3RlIHRoYXQgaWYgYQotCSAq IC0+cGFnZV9mbGlwKCkgb3BlcmF0aW9uIGlzIGFscmVhZHkgcGVuZGluZyB0aGUgY2FsbGJhY2sg c2hvdWxkIHJldHVybgorCSAqIHBhZ2UgZmxpcCBvcGVyYXRpb24gaXMgYWxyZWFkeSBwZW5kaW5n IHRoZSBjYWxsYmFjayBzaG91bGQgcmV0dXJuCiAJICogLUVCVVNZLiBQYWdlZmxpcHMgb24gYSBk aXNhYmxlZCBDUlRDIChlaXRoZXIgYnkgc2V0dGluZyBhIE5VTEwgbW9kZQogCSAqIG9yIGp1c3Qg cnVudGltZSBkaXNhYmxlZCB0aHJvdWdoIERQTVMgcmVzcGVjdGl2ZWx5IHRoZSBuZXcgYXRvbWlj CiAJICogIkFDVElWRSIgc3RhdGUpIHNob3VsZCByZXN1bHQgaW4gYW4gLUVJTlZBTCBlcnJvciBj b2RlLiBOb3RlIHRoYXQKQEAgLTQzNiwxNyArNDM3LDE3IEBAIHN0cnVjdCBkcm1fY3J0Y19mdW5j cyB7CiAJICogRHVwbGljYXRlIHRoZSBjdXJyZW50IGF0b21pYyBzdGF0ZSBmb3IgdGhpcyBDUlRD IGFuZCByZXR1cm4gaXQuCiAJICogVGhlIGNvcmUgYW5kIGhlbHBlcnMgZ3VyYW50ZWUgdGhhdCBh bnkgYXRvbWljIHN0YXRlIGR1cGxpY2F0ZWQgd2l0aAogCSAqIHRoaXMgaG9vayBhbmQgc3RpbGwg b3duZWQgYnkgdGhlIGNhbGxlciAoaS5lLiBub3QgdHJhbnNmZXJyZWQgdG8gdGhlCi0JICogZHJp dmVyIGJ5IGNhbGxpbmcgLT5hdG9taWNfY29tbWl0KCkgZnJvbSBzdHJ1Y3QKLQkgKiAmZHJtX21v ZGVfY29uZmlnX2Z1bmNzKSB3aWxsIGJlIGNsZWFuZWQgdXAgYnkgY2FsbGluZyB0aGUKLQkgKiBA YXRvbWljX2Rlc3Ryb3lfc3RhdGUgaG9vayBpbiB0aGlzIHN0cnVjdHVyZS4KKwkgKiBkcml2ZXIg YnkgY2FsbGluZyAmZHJtX21vZGVfY29uZmlnX2Z1bmNzLmF0b21pY19jb21taXQpIHdpbGwgYmUK KwkgKiBjbGVhbmVkIHVwIGJ5IGNhbGxpbmcgdGhlIEBhdG9taWNfZGVzdHJveV9zdGF0ZSBob29r IGluIHRoaXMKKwkgKiBzdHJ1Y3R1cmUuCiAJICoKLQkgKiBBdG9taWMgZHJpdmVycyB3aGljaCBk b24ndCBzdWJjbGFzcyAmc3RydWN0IGRybV9jcnRjIHNob3VsZCB1c2UKKwkgKiBBdG9taWMgZHJp dmVycyB3aGljaCBkb24ndCBzdWJjbGFzcyAmc3RydWN0IGRybV9jcnRjX3N0YXRlIHNob3VsZCB1 c2UKIAkgKiBkcm1fYXRvbWljX2hlbHBlcl9jcnRjX2R1cGxpY2F0ZV9zdGF0ZSgpLiBEcml2ZXJz IHRoYXQgc3ViY2xhc3MgdGhlCiAJICogc3RhdGUgc3RydWN0dXJlIHRvIGV4dGVuZCBpdCB3aXRo IGRyaXZlci1wcml2YXRlIHN0YXRlIHNob3VsZCB1c2UKIAkgKiBfX2RybV9hdG9taWNfaGVscGVy X2NydGNfZHVwbGljYXRlX3N0YXRlKCkgdG8gbWFrZSBzdXJlIHNoYXJlZCBzdGF0ZSBpcwogCSAq IGR1cGxpY2F0ZWQgaW4gYSBjb25zaXN0ZW50IGZhc2hpb24gYWNyb3NzIGRyaXZlcnMuCiAJICoK LQkgKiBJdCBpcyBhbiBlcnJvciB0byBjYWxsIHRoaXMgaG9vayBiZWZvcmUgY3J0Yy0+c3RhdGUg aGFzIGJlZW4KKwkgKiBJdCBpcyBhbiBlcnJvciB0byBjYWxsIHRoaXMgaG9vayBiZWZvcmUgJmRy bV9jcnRjLnN0YXRlIGhhcyBiZWVuCiAJICogaW5pdGlhbGl6ZWQgY29ycmVjdGx5LgogCSAqCiAJ ICogTk9URToKQEAgLTY0MSw3ICs2NDIsNyBAQCBzdHJ1Y3QgZHJtX2NydGMgewogCSAqIFRoaXMg cHJvdmlkZXMgYSByZWFkIGxvY2sgZm9yIHRoZSBvdmVyYWxsIGNydGMgc3RhdGUgKG1vZGUsIGRw bXMKIAkgKiBzdGF0ZSwgLi4uKSBhbmQgYSB3cml0ZSBsb2NrIGZvciBldmVyeXRoaW5nIHdoaWNo IGNhbiBiZSB1cGRhdGUKIAkgKiB3aXRob3V0IGEgZnVsbCBtb2Rlc2V0IChmYiwgY3Vyc29yIGRh dGEsIGNydGMgcHJvcGVydGllcyAuLi4pLiBGdWxsCi0JICogbW9kZXNldCBhbHNvIG5lZWQgdG8g Z3JhYiBkZXYtPm1vZGVfY29uZmlnLmNvbm5lY3Rpb25fbXV0ZXguCisJICogbW9kZXNldCBhbHNv IG5lZWQgdG8gZ3JhYiAmZHJtX21vZGVfY29uZmlnLmNvbm5lY3Rpb25fbXV0ZXguCiAJICovCiAJ c3RydWN0IGRybV9tb2Rlc2V0X2xvY2sgbXV0ZXg7CiAKZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJt L2RybV9mcmFtZWJ1ZmZlci5oIGIvaW5jbHVkZS9kcm0vZHJtX2ZyYW1lYnVmZmVyLmgKaW5kZXgg MDQ2YzM1ZTU0MDk5Li4wNGM3N2VlZTljMjAgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvZHJtL2RybV9m cmFtZWJ1ZmZlci5oCisrKyBiL2luY2x1ZGUvZHJtL2RybV9mcmFtZWJ1ZmZlci5oCkBAIC00MCw4 ICs0MCw4IEBAIHN0cnVjdCBkcm1fZnJhbWVidWZmZXJfZnVuY3MgewogCSAqCiAJICogQ2xlYW4g dXAgZnJhbWVidWZmZXIgcmVzb3VyY2VzLCBzcGVjaWZpY2FsbHkgYWxzbyB1bnJlZmVyZW5jZSB0 aGUKIAkgKiBiYWNraW5nIHN0b3JhZ2UuIFRoZSBjb3JlIGd1YXJhbnRlZXMgdG8gY2FsbCB0aGlz IGZ1bmN0aW9uIGZvciBldmVyeQotCSAqIGZyYW1lYnVmZmVyIHN1Y2Nlc3NmdWxseSBjcmVhdGVk IGJ5IC0+ZmJfY3JlYXRlKCkgaW4KLQkgKiAmZHJtX21vZGVfY29uZmlnX2Z1bmNzLiBEcml2ZXJz IG11c3QgYWxzbyBjYWxsCisJICogZnJhbWVidWZmZXIgc3VjY2Vzc2Z1bGx5IGNyZWF0ZWQgYnkg Y2FsbGluZworCSAqICZkcm1fbW9kZV9jb25maWdfZnVuY3MuZmJfY3JlYXRlLiBEcml2ZXJzIG11 c3QgYWxzbyBjYWxsCiAJICogZHJtX2ZyYW1lYnVmZmVyX2NsZWFudXAoKSB0byByZWxlYXNlIERS TSBjb3JlIHJlc291cmNlcyBmb3IgdGhpcwogCSAqIGZyYW1lYnVmZmVyLgogCSAqLwpAQCAtMTEy LDggKzExMiw4IEBAIHN0cnVjdCBkcm1fZnJhbWVidWZmZXIgewogCSAqLwogCXN0cnVjdCBkcm1f ZGV2aWNlICpkZXY7CiAJLyoqCi0JICogQGhlYWQ6IFBsYWNlIG9uIHRoZSBkZXYtPm1vZGVfY29u ZmlnLmZiX2xpc3QsIGFjY2VzcyBwcm90ZWN0ZWQgYnkKLQkgKiBkZXYtPm1vZGVfY29uZmlnLmZi X2xvY2suCisJICogQGhlYWQ6IFBsYWNlIG9uIHRoZSAmZHJtX21vZGVfY29uZmlnLmZiX2xpc3Qs IGFjY2VzcyBwcm90ZWN0ZWQgYnkKKwkgKiAmZHJtX21vZGVfY29uZmlnLmZiX2xvY2suCiAJICov CiAJc3RydWN0IGxpc3RfaGVhZCBoZWFkOwogCkBAIC0xODcsOCArMTg3LDcgQEAgc3RydWN0IGRy bV9mcmFtZWJ1ZmZlciB7CiAJICovCiAJaW50IGhvdF95OwogCS8qKgotCSAqIEBmaWxwX2hlYWQ6 IFBsYWNlZCBvbiAmc3RydWN0IGRybV9maWxlIGZicyBsaXN0X2hlYWQsIHByb3RlY3RlZCBieQot CSAqIGZic19sb2NrIGluIHRoZSBzYW1lIHN0cnVjdHVyZS4KKwkgKiBAZmlscF9oZWFkOiBQbGFj ZWQgb24gJmRybV9maWxlLmZicywgcHJvdGVjdGVkIGJ5ICZkcm1fZmlsZS5mYnNfbG9jay4KIAkg Ki8KIAlzdHJ1Y3QgbGlzdF9oZWFkIGZpbHBfaGVhZDsKIH07CkBAIC0yNjAsOCArMjU5LDggQEAg c3RhdGljIGlubGluZSB2b2lkIGRybV9mcmFtZWJ1ZmZlcl9hc3NpZ24oc3RydWN0IGRybV9mcmFt ZWJ1ZmZlciAqKnAsCiAgKiBAZmI6IHRoZSBsb29wIGN1cnNvcgogICogQGRldjogdGhlIERSTSBk ZXZpY2UKICAqCi0gKiBJdGVyYXRlIG92ZXIgYWxsIGZyYW1lYnVmZmVycyBvZiBAZGV2LiBVc2Vy IG11c3QgaG9sZCB0aGUgZmJfbG9jayBmcm9tCi0gKiAmZHJtX21vZGVfY29uZmlnLgorICogSXRl cmF0ZSBvdmVyIGFsbCBmcmFtZWJ1ZmZlcnMgb2YgQGRldi4gVXNlciBtdXN0IGhvbGQKKyAqICZk cm1fbW9kZV9jb25maWcuZmJfbG9jay4KICAqLwogI2RlZmluZSBkcm1fZm9yX2VhY2hfZmIoZmIs IGRldikgXAogCWZvciAoV0FSTl9PTighbXV0ZXhfaXNfbG9ja2VkKCYoZGV2KS0+bW9kZV9jb25m aWcuZmJfbG9jaykpLAkJXApkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX21vZGVfY29uZmln LmggYi9pbmNsdWRlL2RybS9kcm1fbW9kZV9jb25maWcuaAppbmRleCBmZTIzMGYxNjFlZmMuLjI2 ZmY0NmFiMjZmYiAxMDA2NDQKLS0tIGEvaW5jbHVkZS9kcm0vZHJtX21vZGVfY29uZmlnLmgKKysr IGIvaW5jbHVkZS9kcm0vZHJtX21vZGVfY29uZmlnLmgKQEAgLTEzMiw4ICsxMzIsOCBAQCBzdHJ1 Y3QgZHJtX21vZGVfY29uZmlnX2Z1bmNzIHsKIAkgKiAgICB0aGF0IGJlZm9yZSBjYWxsaW5nIHRo aXMgaG9vay4KIAkgKgogCSAqIFNlZSB0aGUgZG9jdW1lbnRhdGlvbiBvZiBAYXRvbWljX2NvbW1p dCBmb3IgYW4gZXhoYXVzdGl2ZSBsaXN0IG9mCi0JICogZXJyb3IgY29uZGl0aW9ucyB3aGljaCBk b24ndCBoYXZlIHRvIGJlIGNoZWNrZWQgYXQgdGhlCi0JICogLT5hdG9taWNfY2hlY2soKSBzdGFn ZT8KKwkgKiBlcnJvciBjb25kaXRpb25zIHdoaWNoIGRvbid0IGhhdmUgdG8gYmUgY2hlY2tlZCBh dCB0aGUgaW4gdGhpcworCSAqIGNhbGxiYWNrLgogCSAqCiAJICogU2VlIHRoZSBkb2N1bWVudGF0 aW9uIGZvciAmc3RydWN0IGRybV9hdG9taWNfc3RhdGUgZm9yIGhvdyBleGFjdGx5CiAJICogYW4g YXRvbWljIG1vZGVzZXQgdXBkYXRlIGlzIGRlc2NyaWJlZC4KQEAgLTE5OCwxMCArMTk4LDEwIEBA IHN0cnVjdCBkcm1fbW9kZV9jb25maWdfZnVuY3MgewogCSAqIGNvbXBsZXRlZC4gVGhlc2UgZXZl bnRzIGFyZSBwZXItQ1JUQyBhbmQgY2FuIGJlIGRpc3Rpbmd1aXNoZWQgYnkgdGhlCiAJICogQ1JU QyBpbmRleCBzdXBwbGllZCBpbiAmZHJtX2V2ZW50IHRvIHVzZXJzcGFjZS4KIAkgKgotCSAqIFRo ZSBkcm0gY29yZSB3aWxsIHN1cHBseSBhICZzdHJ1Y3QgZHJtX2V2ZW50IGluIHRoZSBldmVudAot CSAqIG1lbWJlciBvZiBlYWNoIENSVEMncyAmZHJtX2NydGNfc3RhdGUgc3RydWN0dXJlLiBTZWUg dGhlCi0JICogZG9jdW1lbnRhdGlvbiBmb3IgJmRybV9jcnRjX3N0YXRlIGZvciBtb3JlIGRldGFp bHMgYWJvdXQgdGhlIHByZWNpc2UKLQkgKiBzZW1hbnRpY3Mgb2YgdGhpcyBldmVudC4KKwkgKiBU aGUgZHJtIGNvcmUgd2lsbCBzdXBwbHkgYSAmc3RydWN0IGRybV9ldmVudCBpbiBlYWNoIENSVEMn cworCSAqICZkcm1fY3J0Y19zdGF0ZS5ldmVudC4gU2VlIHRoZSBkb2N1bWVudGF0aW9uIGZvcgor CSAqICZkcm1fY3J0Y19zdGF0ZS5ldmVudCBmb3IgbW9yZSBkZXRhaWxzIGFib3V0IHRoZSBwcmVj aXNlIHNlbWFudGljcyBvZgorCSAqIHRoaXMgZXZlbnQuCiAJICoKIAkgKiBOT1RFOgogCSAqCmRp ZmYgLS1naXQgYS9pbmNsdWRlL2RybS9kcm1fbW9kZV9vYmplY3QuaCBiL2luY2x1ZGUvZHJtL2Ry bV9tb2RlX29iamVjdC5oCmluZGV4IDQzNDYwYjIxZDExMi4uMmMwMTdhZGY2ZDc0IDEwMDY0NAot LS0gYS9pbmNsdWRlL2RybS9kcm1fbW9kZV9vYmplY3QuaAorKysgYi9pbmNsdWRlL2RybS9kcm1f bW9kZV9vYmplY3QuaApAQCAtODYsMTAgKzg2LDE1IEBAIHN0cnVjdCBkcm1fb2JqZWN0X3Byb3Bl cnRpZXMgewogCSAqCiAJICogTm90ZSB0aGF0IGF0b21pYyBkcml2ZXJzIGRvIG5vdCBzdG9yZSBt dXRhYmxlIHByb3BlcnRpZXMgaW4gdGhpcwogCSAqIGFycmF5LCBidXQgb25seSB0aGUgZGVjb2Rl ZCB2YWx1ZXMgaW4gdGhlIGNvcnJlc3BvbmRpbmcgc3RhdGUKLQkgKiBzdHJ1Y3R1cmUuIFRoZSBk ZWNvZGluZyBpcyBkb25lIHVzaW5nIHRoZSAtPmF0b21pY19nZXRfcHJvcGVydHkgYW5kCi0JICog LT5hdG9taWNfc2V0X3Byb3BlcnR5IGhvb2tzIG9mIHRoZSBjb3JyZXNwb25kaW5nIG9iamVjdC4g SGVuY2UgYXRvbWljCi0JICogZHJpdmVycyBzaG91bGQgbm90IHVzZSBkcm1fb2JqZWN0X3Byb3Bl cnR5X3NldF92YWx1ZSgpIGFuZAotCSAqIGRybV9vYmplY3RfcHJvcGVydHlfZ2V0X3ZhbHVlKCkg b24gbXV0YWJsZSBvYmplY3RzLCBpLmUuIHRob3NlCisJICogc3RydWN0dXJlLiBUaGUgZGVjb2Rp bmcgaXMgZG9uZSB1c2luZyB0aGUgJmRybV9jcnRjLmF0b21pY19nZXRfcHJvcGVydHkgYW5kCisJ ICogJmRybV9jcnRjLmF0b21pY19zZXRfcHJvcGVydHkgaG9va3MgZm9yICZzdHJ1Y3QgZHJtX2Ny dGMuIEZvcgorCSAqICZzdHJ1Y3QgZHJtX3BsYW5lIHRoZSBob29rcyBhcmUgJmRybV9wbGFuZV9m dW5jcy5hdG9taWNfZ2V0X3Byb3BlcnR5IGFuZAorCSAqICZkcm1fcGxhbmVfZnVuY3MuYXRvbWlj X3NldF9wcm9wZXJ0eS4gQW5kIGZvciAmc3RydWN0IGRybV9jb25uZWN0b3IKKwkgKiB0aGUgaG9v a3MgYXJlICZkcm1fY29ubmVjdG9yX2Z1bmNzLmF0b21pY19nZXRfcHJvcGVydHkgYW5kCisJICog JmRybV9jb25uZWN0b3JfZnVuY3MuYXRvbWljX3NldF9wcm9wZXJ0eSAuCisJICoKKwkgKiBIZW5j ZSBhdG9taWMgZHJpdmVycyBzaG91bGQgbm90IHVzZSBkcm1fb2JqZWN0X3Byb3BlcnR5X3NldF92 YWx1ZSgpCisJICogYW5kIGRybV9vYmplY3RfcHJvcGVydHlfZ2V0X3ZhbHVlKCkgb24gbXV0YWJs ZSBvYmplY3RzLCBpLmUuIHRob3NlCiAJICogd2l0aG91dCB0aGUgRFJNX01PREVfUFJPUF9JTU1V VEFCTEUgZmxhZyBzZXQuCiAJICovCiAJdWludDY0X3QgdmFsdWVzW0RSTV9PQkpFQ1RfTUFYX1BS T1BFUlRZXTsKZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybV9tb2Rlc2V0X2xvY2suaCBiL2lu Y2x1ZGUvZHJtL2RybV9tb2Rlc2V0X2xvY2suaAppbmRleCBkOTE4Y2U0NWVjMmMuLjk2ZDM5ZmJk MTJjYSAxMDA2NDQKLS0tIGEvaW5jbHVkZS9kcm0vZHJtX21vZGVzZXRfbG9jay5oCisrKyBiL2lu Y2x1ZGUvZHJtL2RybV9tb2Rlc2V0X2xvY2suaApAQCAtNjQsNyArNjQsNyBAQCBzdHJ1Y3QgZHJt X21vZGVzZXRfYWNxdWlyZV9jdHggewogLyoqCiAgKiBzdHJ1Y3QgZHJtX21vZGVzZXRfbG9jayAt IHVzZWQgZm9yIGxvY2tpbmcgbW9kZXNldCByZXNvdXJjZXMuCiAgKiBAbXV0ZXg6IHJlc291cmNl IGxvY2tpbmcKLSAqIEBoZWFkOiB1c2VkIHRvIGhvbGQgaXQncyBwbGFjZSBvbiBzdGF0ZS0+bG9j a2VkIGxpc3Qgd2hlbgorICogQGhlYWQ6IHVzZWQgdG8gaG9sZCBpdCdzIHBsYWNlIG9uICZkcm1f YXRvbWlfc3RhdGUubG9ja2VkIGxpc3Qgd2hlbgogICogICAgcGFydCBvZiBhbiBhdG9taWMgdXBk YXRlCiAgKgogICogVXNlZCBmb3IgbG9ja2luZyBDUlRDcyBhbmQgb3RoZXIgbW9kZXNldCByZXNv dXJjZXMuCmRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS9kcm1fcGxhbmUuaCBiL2luY2x1ZGUvZHJt L2RybV9wbGFuZS5oCmluZGV4IGUwNDliYzUyZmIwNy4uNTI1YTMzNDBjMWIyIDEwMDY0NAotLS0g YS9pbmNsdWRlL2RybS9kcm1fcGxhbmUuaAorKysgYi9pbmNsdWRlL2RybS9kcm1fcGxhbmUuaApA QCAtMjQ5LDkgKzI0OSw5IEBAIHN0cnVjdCBkcm1fcGxhbmVfZnVuY3MgewogCSAqIER1cGxpY2F0 ZSB0aGUgY3VycmVudCBhdG9taWMgc3RhdGUgZm9yIHRoaXMgcGxhbmUgYW5kIHJldHVybiBpdC4K IAkgKiBUaGUgY29yZSBhbmQgaGVscGVycyBndXJhbnRlZSB0aGF0IGFueSBhdG9taWMgc3RhdGUg ZHVwbGljYXRlZCB3aXRoCiAJICogdGhpcyBob29rIGFuZCBzdGlsbCBvd25lZCBieSB0aGUgY2Fs bGVyIChpLmUuIG5vdCB0cmFuc2ZlcnJlZCB0byB0aGUKLQkgKiBkcml2ZXIgYnkgY2FsbGluZyAt PmF0b21pY19jb21taXQoKSBmcm9tIHN0cnVjdAotCSAqICZkcm1fbW9kZV9jb25maWdfZnVuY3Mp IHdpbGwgYmUgY2xlYW5lZCB1cCBieSBjYWxsaW5nIHRoZQotCSAqIEBhdG9taWNfZGVzdHJveV9z dGF0ZSBob29rIGluIHRoaXMgc3RydWN0dXJlLgorCSAqIGRyaXZlciBieSBjYWxsaW5nICZkcm1f bW9kZV9jb25maWdfZnVuY3MuYXRvbWljX2NvbW1pdCkgd2lsbCBiZQorCSAqIGNsZWFuZWQgdXAg YnkgY2FsbGluZyB0aGUgQGF0b21pY19kZXN0cm95X3N0YXRlIGhvb2sgaW4gdGhpcworCSAqIHN0 cnVjdHVyZS4KIAkgKgogCSAqIEF0b21pYyBkcml2ZXJzIHdoaWNoIGRvbid0IHN1YmNsYXNzICZz dHJ1Y3QgZHJtX3BsYW5lX3N0YXRlIHNob3VsZCB1c2UKIAkgKiBkcm1fYXRvbWljX2hlbHBlcl9w bGFuZV9kdXBsaWNhdGVfc3RhdGUoKS4gRHJpdmVycyB0aGF0IHN1YmNsYXNzIHRoZQpAQCAtMjU5 LDcgKzI1OSw3IEBAIHN0cnVjdCBkcm1fcGxhbmVfZnVuY3MgewogCSAqIF9fZHJtX2F0b21pY19o ZWxwZXJfcGxhbmVfZHVwbGljYXRlX3N0YXRlKCkgdG8gbWFrZSBzdXJlIHNoYXJlZCBzdGF0ZSBp cwogCSAqIGR1cGxpY2F0ZWQgaW4gYSBjb25zaXN0ZW50IGZhc2hpb24gYWNyb3NzIGRyaXZlcnMu CiAJICoKLQkgKiBJdCBpcyBhbiBlcnJvciB0byBjYWxsIHRoaXMgaG9vayBiZWZvcmUgcGxhbmUt PnN0YXRlIGhhcyBiZWVuCisJICogSXQgaXMgYW4gZXJyb3IgdG8gY2FsbCB0aGlzIGhvb2sgYmVm b3JlICZkcm1fcGxhbmUuc3RhdGUgaGFzIGJlZW4KIAkgKiBpbml0aWFsaXplZCBjb3JyZWN0bHku CiAJICoKIAkgKiBOT1RFOgpAQCAtNDIzLDggKzQyMyw4IEBAIGVudW0gZHJtX3BsYW5lX3R5cGUg ewogCSAqCiAJICogUHJpbWFyeSBwbGFuZXMgcmVwcmVzZW50IGEgIm1haW4iIHBsYW5lIGZvciBh IENSVEMuICBQcmltYXJ5IHBsYW5lcwogCSAqIGFyZSB0aGUgcGxhbmVzIG9wZXJhdGVkIHVwb24g YnkgQ1JUQyBtb2Rlc2V0dGluZyBhbmQgZmxpcHBpbmcKLQkgKiBvcGVyYXRpb25zIGRlc2NyaWJl ZCBpbiB0aGUgcGFnZV9mbGlwIGFuZCBzZXRfY29uZmlnIGhvb2tzIGluIHN0cnVjdAotCSAqICZk cm1fY3J0Y19mdW5jcy4KKwkgKiBvcGVyYXRpb25zIGRlc2NyaWJlZCBpbiB0aGUgJmRybV9jcnRj X2Z1bmNzLnBhZ2VfZmxpcCBhbmQKKwkgKiAmZHJtX2NydGNfZnVuY3Muc2V0X2NvbmZpZyBob29r cy4KIAkgKi8KIAlEUk1fUExBTkVfVFlQRV9QUklNQVJZLAogCkBAIC00NzAsOCArNDcwLDggQEAg c3RydWN0IGRybV9wbGFuZSB7CiAJLyoqCiAJICogQG11dGV4OgogCSAqCi0JICogUHJvdGVjdHMg bW9kZXNldCBwbGFuZSBzdGF0ZSwgdG9nZXRoZXIgd2l0aCB0aGUgbXV0ZXggb2YgJmRybV9jcnRj Ci0JICogdGhpcyBwbGFuZSBpcyBsaW5rZWQgdG8gKHdoZW4gYWN0aXZlLCBnZXR0aW5nIGFjdGl2 ZWQgb3IgZ2V0dGluZworCSAqIFByb3RlY3RzIG1vZGVzZXQgcGxhbmUgc3RhdGUsIHRvZ2V0aGVy IHdpdGggdGhlICZkcm1fY3J0Yy5tdXRleCBvZgorCSAqIENSVEMgdGhpcyBwbGFuZSBpcyBsaW5r ZWQgdG8gKHdoZW4gYWN0aXZlLCBnZXR0aW5nIGFjdGl2ZWQgb3IgZ2V0dGluZwogCSAqIGRpc2Fi bGVkKS4KIAkgKi8KIAlzdHJ1Y3QgZHJtX21vZGVzZXRfbG9jayBtdXRleDsKQEAgLTU4MCw3ICs1 ODAsNyBAQCBzdGF0aWMgaW5saW5lIHN0cnVjdCBkcm1fcGxhbmUgKmRybV9wbGFuZV9maW5kKHN0 cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAgKgogICogSXRlcmF0ZSBvdmVyIGFsbCBsZWdhY3kgcGxh bmVzIG9mIEBkZXYsIGV4Y2x1ZGluZyBwcmltYXJ5IGFuZCBjdXJzb3IgcGxhbmVzLgogICogVGhp cyBpcyB1c2VmdWwgZm9yIGltcGxlbWVudGluZyB1c2Vyc3BhY2UgYXBpcyB3aGVuIHVzZXJzcGFj ZSBpcyBub3QKLSAqIHVuaXZlcnNhbCBwbGFuZSBhd2FyZS4gU2VlIGFsc28gZW51bSAmZHJtX3Bs YW5lX3R5cGUuCisgKiB1bml2ZXJzYWwgcGxhbmUgYXdhcmUuIFNlZSBhbHNvICZlbnVtIGRybV9w bGFuZV90eXBlLgogICovCiAjZGVmaW5lIGRybV9mb3JfZWFjaF9sZWdhY3lfcGxhbmUocGxhbmUs IGRldikgXAogCWxpc3RfZm9yX2VhY2hfZW50cnkocGxhbmUsICYoZGV2KS0+bW9kZV9jb25maWcu cGxhbmVfbGlzdCwgaGVhZCkgXApkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX3Byb3BlcnR5 LmggYi9pbmNsdWRlL2RybS9kcm1fcHJvcGVydHkuaAppbmRleCA0M2M0YjZhMjA0NmQuLmY2NmZk YjQ3NTUxYyAxMDA2NDQKLS0tIGEvaW5jbHVkZS9kcm0vZHJtX3Byb3BlcnR5LmgKKysrIGIvaW5j bHVkZS9kcm0vZHJtX3Byb3BlcnR5LmgKQEAgLTMwLDcgKzMwLDcgQEAKIC8qKgogICogc3RydWN0 IGRybV9wcm9wZXJ0eV9lbnVtIC0gc3ltYm9saWMgdmFsdWVzIGZvciBlbnVtZXJhdGlvbnMKICAq IEB2YWx1ZTogbnVtZXJpYyBwcm9wZXJ0eSB2YWx1ZSBmb3IgdGhpcyBlbnVtIGVudHJ5Ci0gKiBA aGVhZDogbGlzdCBvZiBlbnVtIHZhbHVlcywgbGlua2VkIHRvIGVudW1fbGlzdCBpbiAmZHJtX3By b3BlcnR5CisgKiBAaGVhZDogbGlzdCBvZiBlbnVtIHZhbHVlcywgbGlua2VkIHRvICZkcm1fcHJv cGVydHkuZW51bV9saXN0CiAgKiBAbmFtZTogc3ltYm9saWMgbmFtZSBmb3IgdGhlIGVudW0KICAq CiAgKiBGb3IgZW51bWVyYXRpb24gYW5kIGJpdG1hc2sgcHJvcGVydGllcyB0aGlzIHN0cnVjdHVy ZSBzdG9yZXMgdGhlIHN5bWJvbGljCkBAIC0xOTEsOSArMTkxLDkgQEAgc3RydWN0IGRybV9wcm9w ZXJ0eSB7CiAgKiBzdHJ1Y3QgZHJtX3Byb3BlcnR5X2Jsb2IgLSBCbG9iIGRhdGEgZm9yICZkcm1f cHJvcGVydHkKICAqIEBiYXNlOiBiYXNlIEtNUyBvYmplY3QKICAqIEBkZXY6IERSTSBkZXZpY2UK LSAqIEBoZWFkX2dsb2JhbDogZW50cnkgb24gdGhlIGdsb2JhbCBibG9iIGxpc3QgaW4gJmRybV9t b2RlX2NvbmZpZwotICoJcHJvcGVydHlfYmxvYl9saXN0LgotICogQGhlYWRfZmlsZTogZW50cnkg b24gdGhlIHBlci1maWxlIGJsb2IgbGlzdCBpbiAmZHJtX2ZpbGUgYmxvYnMgbGlzdC4KKyAqIEBo ZWFkX2dsb2JhbDogZW50cnkgb24gdGhlIGdsb2JhbCBibG9iIGxpc3QgaW4KKyAqIAkmZHJtX21v ZGVfY29uZmlnLnByb3BlcnR5X2Jsb2JfbGlzdC4KKyAqIEBoZWFkX2ZpbGU6IGVudHJ5IG9uIHRo ZSBwZXItZmlsZSBibG9iIGxpc3QgaW4gJmRybV9maWxlLmJsb2JzIGxpc3QuCiAgKiBAbGVuZ3Ro OiBzaXplIG9mIHRoZSBibG9iIGluIGJ5dGVzLCBpbnZhcmlhbnQgb3ZlciB0aGUgbGlmZXRpbWUg b2YgdGhlIG9iamVjdAogICogQGRhdGE6IGFjdHVhbCBkYXRhLCBlbWJlZGRlZCBhdCB0aGUgZW5k IG9mIHRoaXMgc3RydWN0dXJlCiAgKgotLSAKMi4xMS4wCgpfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdm eEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFp bG1hbi9saXN0aW5mby9pbnRlbC1nZngK