From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7E0CEC4708F for ; Tue, 1 Jun 2021 07:47:18 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 489ED6124B for ; Tue, 1 Jun 2021 07:47:18 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 489ED6124B Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linux.intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=intel-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 12B686E846; Tue, 1 Jun 2021 07:47:11 +0000 (UTC) Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTPS id AB4EB6E846; Tue, 1 Jun 2021 07:47:09 +0000 (UTC) IronPort-SDR: giZVqxU7hW02y5V4fNzSaVK98GChAObvEGCKSJgaXfbGjtqUSuDwOcm0mCNbEMoX6XJGBgNUbr SA94aox0Wg7w== X-IronPort-AV: E=McAfee;i="6200,9189,10001"; a="200481763" X-IronPort-AV: E=Sophos;i="5.83,239,1616482800"; d="scan'208";a="200481763" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Jun 2021 00:47:08 -0700 IronPort-SDR: UQHoVdzW6HSSK6ANx+V81PYnBqWGP6knjSi3zrL5c/CI4ghoDGbRZog/Ze76IU1xKM8nOYlnhv 1TJBdMVF7w/A== X-IronPort-AV: E=Sophos;i="5.83,239,1616482800"; d="scan'208";a="549648678" Received: from clillies-mobl.ger.corp.intel.com (HELO thellst-mobl1.intel.com) ([10.249.254.18]) by fmsmga001-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Jun 2021 00:47:06 -0700 From: =?UTF-8?q?Thomas=20Hellstr=C3=B6m?= To: intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org Date: Tue, 1 Jun 2021 09:46:41 +0200 Message-Id: <20210601074654.3103-3-thomas.hellstrom@linux.intel.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210601074654.3103-1-thomas.hellstrom@linux.intel.com> References: <20210601074654.3103-1-thomas.hellstrom@linux.intel.com> MIME-Version: 1.0 Subject: [Intel-gfx] [PATCH v9 02/15] drm/i915: Don't free shared locks while shared X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?UTF-8?q?Thomas=20Hellstr=C3=B6m?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" V2UgYXJlIGN1cnJlbnRseSBzaGFyaW5nIHRoZSBWTSByZXNlcnZhdGlvbiBsb2NrcyBhY3Jvc3Mg YSBudW1iZXIgb2YKZ2VtIG9iamVjdHMgd2l0aCBwYWdlLXRhYmxlIG1lbW9yeS4gU2luY2UgVFRN IHdpbGwgaW5kaXZpZGl1YWxpemUgdGhlCnJlc2VydmF0aW9uIGxvY2tzIHdoZW4gZnJlZWluZyBv YmplY3RzLCBpbmNsdWRpbmcgYWNjZXNzaW5nIHRoZSBzaGFyZWQKbG9ja3MsIG1ha2Ugc3VyZSB0 aGF0IHRoZSBzaGFyZWQgbG9ja3MgYXJlIG5vdCBmcmVlZCB1bnRpbCB0aGF0IGlzIGRvbmUuCkZv ciBQUEdUVCB3ZSBhZGQgYW4gYWRkaXRpb25hbCByZWZjb3VudCwgZm9yIEdHVFQgd2UgdGFrZSBh ZGRpdGlvbmFsCm1lYXN1cmVzIHRvIG1ha2Ugc3VyZSBvYmplY3RzIHNoYXJpbmcgdGhlIEdHVFQg cmVzZXJ2YXRpb24gbG9jayBhcmUKZnJlZWQgYXQgR0dUVCB0YWtlZG93bgoKU2lnbmVkLW9mZi1i eTogVGhvbWFzIEhlbGxzdHLDtm0gPHRob21hcy5oZWxsc3Ryb21AbGludXguaW50ZWwuY29tPgpS ZXZpZXdlZC1ieTogTWFhcnRlbiBMYW5raG9yc3QgPG1hYXJ0ZW4ubGFua2hvcnN0QGxpbnV4Lmlu dGVsLmNvbT4KLS0tCnYyOiBUcnkgaGFyZGVyIHRvIG1ha2Ugc3VyZSBvYmplY3RzIHNoYXJpbmcg dGhlIEdHVFQgcmVzZXJ2YXRpb24gbG9jayBhcmUKZnJlZWQgYXQgR0dUVCB0YWtlZG93bi4KdjM6 IFVzZSBhIHBvaW50ZXIgdG8gdGhlIHZtIHRvIGluZGljYXRlIHRoYXQgYW4gb2JqZWN0IHNoYXJl cyBhIHJlc2VydmF0aW9uCm9iamVjdCBmcm9tIHRoYXQgdm0sIHJhdGhlciB0aGFuIGEgcG9pbnRl ciB0byB0aGUgcmVzZXJ2YXRpb24gb2JqZWN0IGl0c2VsZi4KLS0tCiBkcml2ZXJzL2dwdS9kcm0v aTkxNS9nZW0vaTkxNV9nZW1fb2JqZWN0LmMgICAgfCAgMyArKwogLi4uL2dwdS9kcm0vaTkxNS9n ZW0vaTkxNV9nZW1fb2JqZWN0X3R5cGVzLmggIHwgIDQgKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1 L2d0L2ludGVsX2dndHQuYyAgICAgICAgICB8IDE5ICsrKysrKy0tCiBkcml2ZXJzL2dwdS9kcm0v aTkxNS9ndC9pbnRlbF9ndHQuYyAgICAgICAgICAgfCA0NSArKysrKysrKysrKysrKystLS0tCiBk cml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9ndHQuaCAgICAgICAgICAgfCAyOCArKysrKysr KysrKy0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX3BwZ3R0LmMgICAgICAgICB8ICAy ICstCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5jICAgICAgICAgICAgICAgfCAgNSAr KysKIDcgZmlsZXMgY2hhbmdlZCwgOTMgaW5zZXJ0aW9ucygrKSwgMTMgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX29iamVjdC5jIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX29iamVjdC5jCmluZGV4IDI4MTQ0NDEw ZGY4Ni4uMmJlNjEwOWQwMDkzIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0v aTkxNV9nZW1fb2JqZWN0LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2Vt X29iamVjdC5jCkBAIC0yNTIsNiArMjUyLDkgQEAgc3RhdGljIHZvaWQgX19pOTE1X2dlbV9mcmVl X29iamVjdHMoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUsCiAJCWlmIChvYmotPm1tLm5f cGxhY2VtZW50cyA+IDEpCiAJCQlrZnJlZShvYmotPm1tLnBsYWNlbWVudHMpOwogCisJCWlmIChv YmotPnNoYXJlc19yZXN2X2Zyb20pCisJCQlpOTE1X3ZtX3Jlc3ZfcHV0KG9iai0+c2hhcmVzX3Jl c3ZfZnJvbSk7CisKIAkJLyogQnV0IGtlZXAgdGhlIHBvaW50ZXIgYWxpdmUgZm9yIFJDVS1wcm90 ZWN0ZWQgbG9va3VwcyAqLwogCQljYWxsX3JjdSgmb2JqLT5yY3UsIF9faTkxNV9nZW1fZnJlZV9v YmplY3RfcmN1KTsKIAkJY29uZF9yZXNjaGVkKCk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9nZW0vaTkxNV9nZW1fb2JqZWN0X3R5cGVzLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9nZW0vaTkxNV9nZW1fb2JqZWN0X3R5cGVzLmgKaW5kZXggMDcyN2QwYzc2YWEwLi4wNDE1Zjk5 YjZiOTUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9pOTE1X2dlbV9vYmpl Y3RfdHlwZXMuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vaTkxNV9nZW1fb2JqZWN0 X3R5cGVzLmgKQEAgLTE0OSw2ICsxNDksMTAgQEAgc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3Qg ewogCSAqIHdoZW4gaTkxNV9nZW1fd3dfY3R4X2JhY2tvZmYoKSBvciBpOTE1X2dlbV93d19jdHhf ZmluaSgpIGFyZSBjYWxsZWQuCiAJICovCiAJc3RydWN0IGxpc3RfaGVhZCBvYmpfbGluazsKKwkv KioKKwkgKiBAc2hhcmVkX3Jlc3ZfZnJvbTogVGhlIG9iamVjdCBzaGFyZXMgdGhlIHJlc3YgZnJv bSB0aGlzIHZtLgorCSAqLworCXN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnNoYXJlc19yZXN2 X2Zyb207CiAKIAl1bmlvbiB7CiAJCXN0cnVjdCByY3VfaGVhZCByY3U7CmRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9nZ3R0LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9ndC9pbnRlbF9nZ3R0LmMKaW5kZXggMzUwNjljYTVkN2RlLi4xMGMyM2E3NDlhOTUgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX2dndHQuYworKysgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9nZ3R0LmMKQEAgLTc0Niw3ICs3NDYsNiBAQCBzdGF0aWMg dm9pZCBnZ3R0X2NsZWFudXBfaHcoc3RydWN0IGk5MTVfZ2d0dCAqZ2d0dCkKIAogCW11dGV4X3Vu bG9jaygmZ2d0dC0+dm0ubXV0ZXgpOwogCWk5MTVfYWRkcmVzc19zcGFjZV9maW5pKCZnZ3R0LT52 bSk7Ci0JZG1hX3Jlc3ZfZmluaSgmZ2d0dC0+dm0ucmVzdik7CiAKIAlhcmNoX3BoeXNfd2NfZGVs KGdndHQtPm10cnIpOwogCkBAIC03NjgsNiArNzY3LDE5IEBAIHZvaWQgaTkxNV9nZ3R0X2RyaXZl cl9yZWxlYXNlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1KQogCWdndHRfY2xlYW51cF9o dyhnZ3R0KTsKIH0KIAorLyoqCisgKiBpOTE1X2dndHRfZHJpdmVyX2xhdGVfcmVsZWFzZSAtIENs ZWFudXAgb2YgR0dUVCB0aGF0IG5lZWRzIHRvIGJlIGRvbmUgYWZ0ZXIKKyAqIGFsbCBmcmVlIG9i amVjdHMgaGF2ZSBiZWVuIGRyYWluZWQuCisgKiBAaTkxNTogaTkxNSBkZXZpY2UKKyAqLwordm9p ZCBpOTE1X2dndHRfZHJpdmVyX2xhdGVfcmVsZWFzZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq aTkxNSkKK3sKKwlzdHJ1Y3QgaTkxNV9nZ3R0ICpnZ3R0ID0gJmk5MTUtPmdndHQ7CisKKwlHRU1f V0FSTl9PTihrcmVmX3JlYWQoJmdndHQtPnZtLnJlc3ZfcmVmKSAhPSAxKTsKKwlkbWFfcmVzdl9m aW5pKCZnZ3R0LT52bS5fcmVzdik7Cit9CisKIHN0YXRpYyB1bnNpZ25lZCBpbnQgZ2VuNl9nZXRf dG90YWxfZ3R0X3NpemUodTE2IHNuYl9nbWNoX2N0bCkKIHsKIAlzbmJfZ21jaF9jdGwgPj49IFNO Ql9HTUNIX0dHTVNfU0hJRlQ7CkBAIC04MjksNiArODQxLDcgQEAgc3RhdGljIGludCBnZ3R0X3By b2JlX2NvbW1vbihzdHJ1Y3QgaTkxNV9nZ3R0ICpnZ3R0LCB1NjQgc2l6ZSkKIAkJcmV0dXJuIC1F Tk9NRU07CiAJfQogCisJa3JlZl9pbml0KCZnZ3R0LT52bS5yZXN2X3JlZik7CiAJcmV0ID0gc2V0 dXBfc2NyYXRjaF9wYWdlKCZnZ3R0LT52bSk7CiAJaWYgKHJldCkgewogCQlkcm1fZXJyKCZpOTE1 LT5kcm0sICJTY3JhdGNoIHNldHVwIGZhaWxlZFxuIik7CkBAIC0xMTM1LDcgKzExNDgsNyBAQCBz dGF0aWMgaW50IGdndHRfcHJvYmVfaHcoc3RydWN0IGk5MTVfZ2d0dCAqZ2d0dCwgc3RydWN0IGlu dGVsX2d0ICpndCkKIAlnZ3R0LT52bS5ndCA9IGd0OwogCWdndHQtPnZtLmk5MTUgPSBpOTE1Owog CWdndHQtPnZtLmRtYSA9IGk5MTUtPmRybS5kZXY7Ci0JZG1hX3Jlc3ZfaW5pdCgmZ2d0dC0+dm0u cmVzdik7CisJZG1hX3Jlc3ZfaW5pdCgmZ2d0dC0+dm0uX3Jlc3YpOwogCiAJaWYgKElOVEVMX0dF TihpOTE1KSA8PSA1KQogCQlyZXQgPSBpOTE1X2dtY2hfcHJvYmUoZ2d0dCk7CkBAIC0xMTQ0LDcg KzExNTcsNyBAQCBzdGF0aWMgaW50IGdndHRfcHJvYmVfaHcoc3RydWN0IGk5MTVfZ2d0dCAqZ2d0 dCwgc3RydWN0IGludGVsX2d0ICpndCkKIAllbHNlCiAJCXJldCA9IGdlbjhfZ21jaF9wcm9iZShn Z3R0KTsKIAlpZiAocmV0KSB7Ci0JCWRtYV9yZXN2X2ZpbmkoJmdndHQtPnZtLnJlc3YpOworCQlk bWFfcmVzdl9maW5pKCZnZ3R0LT52bS5fcmVzdik7CiAJCXJldHVybiByZXQ7CiAJfQogCmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9ndHQuYyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2d0L2ludGVsX2d0dC5jCmluZGV4IDliOThmOWQ5ZmFhMy4uOTQ4NDk1NjcxNDNk IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9ndHQuYworKysgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9ndHQuYwpAQCAtMjIsOCArMjIsMTEgQEAgc3Ry dWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKmFsbG9jX3B0X2xtZW0oc3RydWN0IGk5MTVfYWRkcmVz c19zcGFjZSAqdm0sIGludCBzeikKIAkgKiBvYmplY3QgdW5kZXJuZWF0aCwgd2l0aCB0aGUgaWRl YSB0aGF0IG9uZSBvYmplY3RfbG9jaygpIHdpbGwgbG9jawogCSAqIHRoZW0gYWxsIGF0IG9uY2Uu CiAJICovCi0JaWYgKCFJU19FUlIob2JqKSkKLQkJb2JqLT5iYXNlLnJlc3YgPSAmdm0tPnJlc3Y7 CisJaWYgKCFJU19FUlIob2JqKSkgeworCQlvYmotPmJhc2UucmVzdiA9IGk5MTVfdm1fcmVzdl9n ZXQodm0pOworCQlvYmotPnNoYXJlc19yZXN2X2Zyb20gPSB2bTsKKwl9CisKIAlyZXR1cm4gb2Jq OwogfQogCkBAIC00MCw4ICs0MywxMSBAQCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqYWxs b2NfcHRfZG1hKHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZtLCBpbnQgc3opCiAJICogb2Jq ZWN0IHVuZGVybmVhdGgsIHdpdGggdGhlIGlkZWEgdGhhdCBvbmUgb2JqZWN0X2xvY2soKSB3aWxs IGxvY2sKIAkgKiB0aGVtIGFsbCBhdCBvbmNlLgogCSAqLwotCWlmICghSVNfRVJSKG9iaikpCi0J CW9iai0+YmFzZS5yZXN2ID0gJnZtLT5yZXN2OworCWlmICghSVNfRVJSKG9iaikpIHsKKwkJb2Jq LT5iYXNlLnJlc3YgPSBpOTE1X3ZtX3Jlc3ZfZ2V0KHZtKTsKKwkJb2JqLT5zaGFyZXNfcmVzdl9m cm9tID0gdm07CisJfQorCiAJcmV0dXJuIG9iajsKIH0KIApAQCAtMTAyLDcgKzEwOCw3IEBAIHZv aWQgX19pOTE1X3ZtX2Nsb3NlKHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZtKQogaW50IGk5 MTVfdm1fbG9ja19vYmplY3RzKHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZtLAogCQkJIHN0 cnVjdCBpOTE1X2dlbV93d19jdHggKnd3KQogewotCWlmICh2bS0+c2NyYXRjaFswXS0+YmFzZS5y ZXN2ID09ICZ2bS0+cmVzdikgeworCWlmICh2bS0+c2NyYXRjaFswXS0+YmFzZS5yZXN2ID09ICZ2 bS0+X3Jlc3YpIHsKIAkJcmV0dXJuIGk5MTVfZ2VtX29iamVjdF9sb2NrKHZtLT5zY3JhdGNoWzBd LCB3dyk7CiAJfSBlbHNlIHsKIAkJc3RydWN0IGk5MTVfcHBndHQgKnBwZ3R0ID0gaTkxNV92bV90 b19wcGd0dCh2bSk7CkBAIC0xMTgsNiArMTI0LDIyIEBAIHZvaWQgaTkxNV9hZGRyZXNzX3NwYWNl X2Zpbmkoc3RydWN0IGk5MTVfYWRkcmVzc19zcGFjZSAqdm0pCiAJbXV0ZXhfZGVzdHJveSgmdm0t Pm11dGV4KTsKIH0KIAorLyoqCisgKiBpOTE1X3ZtX3Jlc3ZfcmVsZWFzZSAtIEZpbmFsIHN0cnVj dCBpOTE1X2FkZHJlc3Nfc3BhY2UgZGVzdHJ1Y3RvcgorICogQGtyZWY6IFBvaW50ZXIgdG8gdGhl ICZpOTE1X2FkZHJlc3Nfc3BhY2UucmVzdl9yZWYgbWVtYmVyLgorICoKKyAqIFRoaXMgZnVuY3Rp b24gaXMgY2FsbGVkIHdoZW4gdGhlIGxhc3QgbG9jayBzaGFyZXIgbm8gbG9uZ2VyIHNoYXJlcyB0 aGUKKyAqICZpOTE1X2FkZHJlc3Nfc3BhY2UuX3Jlc3YgbG9jay4KKyAqLwordm9pZCBpOTE1X3Zt X3Jlc3ZfcmVsZWFzZShzdHJ1Y3Qga3JlZiAqa3JlZikKK3sKKwlzdHJ1Y3QgaTkxNV9hZGRyZXNz X3NwYWNlICp2bSA9CisJCWNvbnRhaW5lcl9vZihrcmVmLCB0eXBlb2YoKnZtKSwgcmVzdl9yZWYp OworCisJZG1hX3Jlc3ZfZmluaSgmdm0tPl9yZXN2KTsKKwlrZnJlZSh2bSk7Cit9CisKIHN0YXRp YyB2b2lkIF9faTkxNV92bV9yZWxlYXNlKHN0cnVjdCB3b3JrX3N0cnVjdCAqd29yaykKIHsKIAlz dHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNlICp2bSA9CkBAIC0xMjUsOSArMTQ3LDggQEAgc3RhdGlj IHZvaWQgX19pOTE1X3ZtX3JlbGVhc2Uoc3RydWN0IHdvcmtfc3RydWN0ICp3b3JrKQogCiAJdm0t PmNsZWFudXAodm0pOwogCWk5MTVfYWRkcmVzc19zcGFjZV9maW5pKHZtKTsKLQlkbWFfcmVzdl9m aW5pKCZ2bS0+cmVzdik7CiAKLQlrZnJlZSh2bSk7CisJaTkxNV92bV9yZXN2X3B1dCh2bSk7CiB9 CiAKIHZvaWQgaTkxNV92bV9yZWxlYXNlKHN0cnVjdCBrcmVmICprcmVmKQpAQCAtMTQ0LDYgKzE2 NSwxNCBAQCB2b2lkIGk5MTVfdm1fcmVsZWFzZShzdHJ1Y3Qga3JlZiAqa3JlZikKIHZvaWQgaTkx NV9hZGRyZXNzX3NwYWNlX2luaXQoc3RydWN0IGk5MTVfYWRkcmVzc19zcGFjZSAqdm0sIGludCBz dWJjbGFzcykKIHsKIAlrcmVmX2luaXQoJnZtLT5yZWYpOworCisJLyoKKwkgKiBTcGVjaWFsIGNh c2UgZm9yIEdHVFQgdGhhdCBoYXMgYWxyZWFkeSBkb25lIGFuIGVhcmx5CisJICoga3JlZl9pbml0 IGhlcmUuCisJICovCisJaWYgKCFrcmVmX3JlYWQoJnZtLT5yZXN2X3JlZikpCisJCWtyZWZfaW5p dCgmdm0tPnJlc3ZfcmVmKTsKKwogCUlOSVRfUkNVX1dPUksoJnZtLT5yY3UsIF9faTkxNV92bV9y ZWxlYXNlKTsKIAlhdG9taWNfc2V0KCZ2bS0+b3BlbiwgMSk7CiAKQEAgLTE3MCw3ICsxOTksNyBA QCB2b2lkIGk5MTVfYWRkcmVzc19zcGFjZV9pbml0KHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2Ug KnZtLCBpbnQgc3ViY2xhc3MpCiAJCW1pZ2h0X2FsbG9jKEdGUF9LRVJORUwpOwogCQltdXRleF9y ZWxlYXNlKCZ2bS0+bXV0ZXguZGVwX21hcCwgX1RISVNfSVBfKTsKIAl9Ci0JZG1hX3Jlc3ZfaW5p dCgmdm0tPnJlc3YpOworCWRtYV9yZXN2X2luaXQoJnZtLT5fcmVzdik7CiAKIAlHRU1fQlVHX09O KCF2bS0+dG90YWwpOwogCWRybV9tbV9pbml0KCZ2bS0+bW0sIDAsIHZtLT50b3RhbCk7CmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9ndHQuaCBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2d0L2ludGVsX2d0dC5oCmluZGV4IDUwYTk4Y2UzOWY3NC4uZWRlYTk1Yjk3YzM2 IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9ndHQuaAorKysgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9ndHQuaApAQCAtMjQ1LDcgKzI0NSw5IEBAIHN0 cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgewogCWF0b21pY190IG9wZW47CiAKIAlzdHJ1Y3QgbXV0 ZXggbXV0ZXg7IC8qIHByb3RlY3RzIHZtYSBhbmQgb3VyIGxpc3RzICovCi0Jc3RydWN0IGRtYV9y ZXN2IHJlc3Y7IC8qIHJlc2VydmF0aW9uIGxvY2sgZm9yIGFsbCBwZCBvYmplY3RzLCBhbmQgYnVm ZmVyIHBvb2wgKi8KKworCXN0cnVjdCBrcmVmIHJlc3ZfcmVmOyAvKiBrcmVmIHRvIGtlZXAgdGhl IHJlc2VydmF0aW9uIGxvY2sgYWxpdmUuICovCisJc3RydWN0IGRtYV9yZXN2IF9yZXN2OyAvKiBy ZXNlcnZhdGlvbiBsb2NrIGZvciBhbGwgcGQgb2JqZWN0cywgYW5kIGJ1ZmZlciBwb29sICovCiAj ZGVmaW5lIFZNX0NMQVNTX0dHVFQgMAogI2RlZmluZSBWTV9DTEFTU19QUEdUVCAxCiAjZGVmaW5l IFZNX0NMQVNTX0RQVCAyCkBAIC00MDUsMTMgKzQwNywzNiBAQCBpOTE1X3ZtX2dldChzdHJ1Y3Qg aTkxNV9hZGRyZXNzX3NwYWNlICp2bSkKIAlyZXR1cm4gdm07CiB9CiAKKy8qKgorICogaTkxNV92 bV9yZXN2X2dldCAtIE9idGFpbiBhIHJlZmVyZW5jZSBvbiB0aGUgdm0ncyByZXNlcnZhdGlvbiBs b2NrCisgKiBAdm06IFRoZSB2bSB3aG9zZSByZXNlcnZhdGlvbiBsb2NrIHdlIHdhbnQgdG8gc2hh cmUuCisgKgorICogUmV0dXJuOiBBIHBvaW50ZXIgdG8gdGhlIHZtJ3MgcmVzZXJ2YXRpb24gbG9j ay4KKyAqLworc3RhdGljIGlubGluZSBzdHJ1Y3QgZG1hX3Jlc3YgKmk5MTVfdm1fcmVzdl9nZXQo c3RydWN0IGk5MTVfYWRkcmVzc19zcGFjZSAqdm0pCit7CisJa3JlZl9nZXQoJnZtLT5yZXN2X3Jl Zik7CisJcmV0dXJuICZ2bS0+X3Jlc3Y7Cit9CisKIHZvaWQgaTkxNV92bV9yZWxlYXNlKHN0cnVj dCBrcmVmICprcmVmKTsKIAordm9pZCBpOTE1X3ZtX3Jlc3ZfcmVsZWFzZShzdHJ1Y3Qga3JlZiAq a3JlZik7CisKIHN0YXRpYyBpbmxpbmUgdm9pZCBpOTE1X3ZtX3B1dChzdHJ1Y3QgaTkxNV9hZGRy ZXNzX3NwYWNlICp2bSkKIHsKIAlrcmVmX3B1dCgmdm0tPnJlZiwgaTkxNV92bV9yZWxlYXNlKTsK IH0KIAorLyoqCisgKiBpOTE1X3ZtX3Jlc3ZfcHV0IC0gUmVsZWFzZSBhIHJlZmVyZW5jZSBvbiB0 aGUgdm0ncyByZXNlcnZhdGlvbiBsb2NrCisgKiBAcmVzdjogUG9pbnRlciB0byBhIHJlc2VydmF0 aW9uIGxvY2sgb2J0YWluZWQgZnJvbSBpOTE1X3ZtX3Jlc3ZfZ2V0KCkKKyAqLworc3RhdGljIGlu bGluZSB2b2lkIGk5MTVfdm1fcmVzdl9wdXQoc3RydWN0IGk5MTVfYWRkcmVzc19zcGFjZSAqdm0p Cit7CisJa3JlZl9wdXQoJnZtLT5yZXN2X3JlZiwgaTkxNV92bV9yZXN2X3JlbGVhc2UpOworfQor CiBzdGF0aWMgaW5saW5lIHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgKgogaTkxNV92bV9vcGVu KHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZtKQogewpAQCAtNTA3LDYgKzUzMiw3IEBAIHZv aWQgaTkxNV9nZ3R0X2VuYWJsZV9ndWMoc3RydWN0IGk5MTVfZ2d0dCAqZ2d0dCk7CiB2b2lkIGk5 MTVfZ2d0dF9kaXNhYmxlX2d1YyhzdHJ1Y3QgaTkxNV9nZ3R0ICpnZ3R0KTsKIGludCBpOTE1X2lu aXRfZ2d0dChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSk7CiB2b2lkIGk5MTVfZ2d0dF9k cml2ZXJfcmVsZWFzZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSk7Cit2b2lkIGk5MTVf Z2d0dF9kcml2ZXJfbGF0ZV9yZWxlYXNlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1KTsK IAogc3RhdGljIGlubGluZSBib29sIGk5MTVfZ2d0dF9oYXNfYXBlcnR1cmUoY29uc3Qgc3RydWN0 IGk5MTVfZ2d0dCAqZ2d0dCkKIHsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0 L2ludGVsX3BwZ3R0LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9wcGd0dC5jCmlu ZGV4IDRlM2Q4MGMyMjk1Yy4uYWVlM2E4OTI5MjQ1IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9ndC9pbnRlbF9wcGd0dC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2lu dGVsX3BwZ3R0LmMKQEAgLTMwNyw3ICszMDcsNyBAQCB2b2lkIHBwZ3R0X2luaXQoc3RydWN0IGk5 MTVfcHBndHQgKnBwZ3R0LCBzdHJ1Y3QgaW50ZWxfZ3QgKmd0KQogCXBwZ3R0LT52bS5kbWEgPSBp OTE1LT5kcm0uZGV2OwogCXBwZ3R0LT52bS50b3RhbCA9IEJJVF9VTEwoSU5URUxfSU5GTyhpOTE1 KS0+cHBndHRfc2l6ZSk7CiAKLQlkbWFfcmVzdl9pbml0KCZwcGd0dC0+dm0ucmVzdik7CisJZG1h X3Jlc3ZfaW5pdCgmcHBndHQtPnZtLl9yZXN2KTsKIAlpOTE1X2FkZHJlc3Nfc3BhY2VfaW5pdCgm cHBndHQtPnZtLCBWTV9DTEFTU19QUEdUVCk7CiAKIAlwcGd0dC0+dm0udm1hX29wcy5iaW5kX3Zt YSAgICA9IHBwZ3R0X2JpbmRfdm1hOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9kcnYuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmMKaW5kZXggMmYwNmJi N2IzZWQyLi5kODJhOTllMTI4Y2YgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZHJ2LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuYwpAQCAtNjMxLDYg KzYzMSw4IEBAIHN0YXRpYyBpbnQgaTkxNV9kcml2ZXJfaHdfcHJvYmUoc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2KQogCWludGVsX21lbW9yeV9yZWdpb25zX2RyaXZlcl9yZWxlYXNl KGRldl9wcml2KTsKIGVycl9nZ3R0OgogCWk5MTVfZ2d0dF9kcml2ZXJfcmVsZWFzZShkZXZfcHJp dik7CisJaTkxNV9nZW1fZHJhaW5fZnJlZWRfb2JqZWN0cyhkZXZfcHJpdik7CisJaTkxNV9nZ3R0 X2RyaXZlcl9sYXRlX3JlbGVhc2UoZGV2X3ByaXYpOwogZXJyX3BlcmY6CiAJaTkxNV9wZXJmX2Zp bmkoZGV2X3ByaXYpOwogCXJldHVybiByZXQ7CkBAIC04ODAsNiArODgyLDggQEAgaW50IGk5MTVf ZHJpdmVyX3Byb2JlKHN0cnVjdCBwY2lfZGV2ICpwZGV2LCBjb25zdCBzdHJ1Y3QgcGNpX2Rldmlj ZV9pZCAqZW50KQogCWk5MTVfZHJpdmVyX2h3X3JlbW92ZShpOTE1KTsKIAlpbnRlbF9tZW1vcnlf cmVnaW9uc19kcml2ZXJfcmVsZWFzZShpOTE1KTsKIAlpOTE1X2dndHRfZHJpdmVyX3JlbGVhc2Uo aTkxNSk7CisJaTkxNV9nZW1fZHJhaW5fZnJlZWRfb2JqZWN0cyhpOTE1KTsKKwlpOTE1X2dndHRf ZHJpdmVyX2xhdGVfcmVsZWFzZShpOTE1KTsKIG91dF9jbGVhbnVwX21taW86CiAJaTkxNV9kcml2 ZXJfbW1pb19yZWxlYXNlKGk5MTUpOwogb3V0X3J1bnRpbWVfcG1fcHV0OgpAQCAtOTM2LDYgKzk0 MCw3IEBAIHN0YXRpYyB2b2lkIGk5MTVfZHJpdmVyX3JlbGVhc2Uoc3RydWN0IGRybV9kZXZpY2Ug KmRldikKIAlpbnRlbF9tZW1vcnlfcmVnaW9uc19kcml2ZXJfcmVsZWFzZShkZXZfcHJpdik7CiAJ aTkxNV9nZ3R0X2RyaXZlcl9yZWxlYXNlKGRldl9wcml2KTsKIAlpOTE1X2dlbV9kcmFpbl9mcmVl ZF9vYmplY3RzKGRldl9wcml2KTsKKwlpOTE1X2dndHRfZHJpdmVyX2xhdGVfcmVsZWFzZShkZXZf cHJpdik7CiAKIAlpOTE1X2RyaXZlcl9tbWlvX3JlbGVhc2UoZGV2X3ByaXYpOwogCi0tIAoyLjMx LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVs LWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczov L2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=