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=-9.0 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, 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 6C799C43219 for ; Mon, 29 Apr 2019 10:05:37 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 2A16920644 for ; Mon, 29 Apr 2019 10:05:37 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=AQUANTIA1COM.onmicrosoft.com header.i=@AQUANTIA1COM.onmicrosoft.com header.b="lSoCF++G" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727843AbfD2KFg (ORCPT ); Mon, 29 Apr 2019 06:05:36 -0400 Received: from mail-eopbgr810055.outbound.protection.outlook.com ([40.107.81.55]:40164 "EHLO NAM01-BY2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1727952AbfD2KFW (ORCPT ); Mon, 29 Apr 2019 06:05:22 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=AQUANTIA1COM.onmicrosoft.com; s=selector1-aquantia-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=oq3sFKUMei5LbzajYPFszzP78YBIMn/8hs4wlyBCNeU=; b=lSoCF++GDWdHtyFd/VFj8TGndiYf06TE9iid+Rpk5XHwCBprx1N+SKg6pxFH/HHRZko3/FcqEU2v8WR9YH9nYfIgtQ503XBHvexvvDsSjqKMpzBsFZo/LMawjbCJRPqi6elx1yjAL5xsRe+sL5E7Vw8TyHuIJLbEts8bOM8qBZ8= Received: from DM6PR11MB3625.namprd11.prod.outlook.com (20.178.230.149) by DM6PR11MB3644.namprd11.prod.outlook.com (20.178.230.213) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1835.12; Mon, 29 Apr 2019 10:04:48 +0000 Received: from DM6PR11MB3625.namprd11.prod.outlook.com ([fe80::f035:2c20:5a61:7653]) by DM6PR11MB3625.namprd11.prod.outlook.com ([fe80::f035:2c20:5a61:7653%3]) with mapi id 15.20.1835.010; Mon, 29 Apr 2019 10:04:48 +0000 From: Igor Russkikh To: "David S . Miller" CC: "netdev@vger.kernel.org" , Nikita Danilov , Dmitry Bogdanov , Igor Russkikh Subject: [PATCH v4 net-next 06/15] net: aquantia: link status irq handling Thread-Topic: [PATCH v4 net-next 06/15] net: aquantia: link status irq handling Thread-Index: AQHU/nL6PFmdI/lRqEifyx3a//rQvQ== Date: Mon, 29 Apr 2019 10:04:48 +0000 Message-ID: <584449aecd5d5dc647191b5f73184c9bae7a96a0.1556531633.git.igor.russkikh@aquantia.com> References: In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: HE1PR05CA0189.eurprd05.prod.outlook.com (2603:10a6:3:f9::13) To DM6PR11MB3625.namprd11.prod.outlook.com (2603:10b6:5:13a::21) authentication-results: spf=none (sender IP is ) smtp.mailfrom=Igor.Russkikh@aquantia.com; x-ms-exchange-messagesentrepresentingtype: 1 x-mailer: git-send-email 2.17.1 x-originating-ip: [95.79.108.179] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 182af011-58b9-4b18-0d72-08d6cc8a1ca6 x-microsoft-antispam: BCL:0;PCL:0;RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600141)(711020)(4605104)(2017052603328)(7193020);SRVR:DM6PR11MB3644; x-ms-traffictypediagnostic: DM6PR11MB3644: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:345; x-forefront-prvs: 0022134A87 x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(366004)(136003)(346002)(376002)(396003)(39840400004)(189003)(199004)(6512007)(2906002)(5660300002)(71200400001)(6486002)(99286004)(53936002)(26005)(25786009)(44832011)(71190400001)(14454004)(50226002)(4326008)(3846002)(66556008)(64756008)(66446008)(36756003)(8936002)(73956011)(72206003)(66946007)(54906003)(66476007)(7736002)(6116002)(6436002)(81166006)(86362001)(6506007)(478600001)(81156014)(8676002)(97736004)(305945005)(107886003)(386003)(316002)(118296001)(68736007)(102836004)(6916009)(76176011)(476003)(186003)(2616005)(486006)(256004)(11346002)(52116002)(446003)(66066001)(14444005);DIR:OUT;SFP:1101;SCL:1;SRVR:DM6PR11MB3644;H:DM6PR11MB3625.namprd11.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;MX:1;A:1; received-spf: None (protection.outlook.com: aquantia.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: 7pDCPUd01FyNluwBrxJEzpJXH15fCAIeanseG4SPP/kz2GdE6a1ThfrcMof+Ue8Gioe7Qe7PPZ0RChV0N8e6afQubSFuFf9JpGyUW5yq7DK6oDwmiuXVk1dNjdt1pxZDgUkgakUHPPRmPXc5DAGE1PlXrupYhsQlZoQC8KeKs5VvJLbeoOZY0pcmdeqYcBFB1c9dYQVf+DemV8q7wz7JOorALRDRDXTTV+3jf3FX6MEJGpiV0m+dO63uYnrHYojUV64yfYOxbTEMi7dIiG09ehQRQnZeo5cUpXus5BwyjLsu3LWGtPB6gT13HUBBphwG3ZM0C1rmL1kpCj3KtKZvBjik1EDYbRF5Co82rcuP2h9K0DgUnUNL191G8bGf8LELh+UhkStzJVai0V3hhZoHCk0slH19MQmiJsULMJfhAik= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: aquantia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 182af011-58b9-4b18-0d72-08d6cc8a1ca6 X-MS-Exchange-CrossTenant-originalarrivaltime: 29 Apr 2019 10:04:48.1774 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 83e2e134-991c-4ede-8ced-34d47e38e6b1 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR11MB3644 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org SGVyZSB3ZSBkZWZpbmUgYW5kIHJlcXVlc3QgYW4gZXh0cmEgaW50ZXJydXB0IGxpbmUsDQphc3Np Z24gaXQgb24gbGluayBpc3IgaGFuZGxlciBhbmQgcmVzdHJ1Y3R1cmUgYWJpdCBhcV9wY2kgY29k ZQ0KdG8gYmV0dGVyIHN1cHBvcnQgdGhhdC4NCg0KV2UgYWxzbyByZW1vdmUgbG9naWMgZm9yIHVz aW5nIGRpZmZlcmVudCB0aW1lciBpbnRlcnZhbHMNCmRlcGVuZGluZyBvbiBsaW5rIHN0YXRlLCBz aW5jZSB0aGF0cyBub3cgdXNlbGVzcy4NCg0KU2lnbmVkLW9mZi1ieTogSWdvciBSdXNza2lraCA8 aWdvci5ydXNza2lraEBhcXVhbnRpYS5jb20+DQotLS0NCiAuLi4vbmV0L2V0aGVybmV0L2FxdWFu dGlhL2F0bGFudGljL2FxX25pYy5jICAgfCAzNiArKysrKysrKysrKysrKy0tLS0tDQogLi4uL2V0 aGVybmV0L2FxdWFudGlhL2F0bGFudGljL2FxX3BjaV9mdW5jLmMgIHwgMjQgKysrKysrKystLS0t LQ0KIC4uLi9ldGhlcm5ldC9hcXVhbnRpYS9hdGxhbnRpYy9hcV9wY2lfZnVuYy5oICB8ICA0ICst LQ0KIC4uLi9hcXVhbnRpYS9hdGxhbnRpYy9od19hdGwvaHdfYXRsX2IwLmMgICAgICB8ICA1ICsr Kw0KIDQgZmlsZXMgY2hhbmdlZCwgNTAgaW5zZXJ0aW9ucygrKSwgMTkgZGVsZXRpb25zKC0pDQoN CmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9hcXVhbnRpYS9hdGxhbnRpYy9hcV9u aWMuYyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L2FxdWFudGlhL2F0bGFudGljL2FxX25pYy5jDQpp bmRleCA0ODUxZmMwYTNhZTUuLjAyNTE1NjZiNjZhZiAxMDA2NDQNCi0tLSBhL2RyaXZlcnMvbmV0 L2V0aGVybmV0L2FxdWFudGlhL2F0bGFudGljL2FxX25pYy5jDQorKysgYi9kcml2ZXJzL25ldC9l dGhlcm5ldC9hcXVhbnRpYS9hdGxhbnRpYy9hcV9uaWMuYw0KQEAgLTE0LDYgKzE0LDcgQEANCiAj aW5jbHVkZSAiYXFfdmVjLmgiDQogI2luY2x1ZGUgImFxX2h3LmgiDQogI2luY2x1ZGUgImFxX3Bj aV9mdW5jLmgiDQorI2luY2x1ZGUgImFxX21haW4uaCINCiANCiAjaW5jbHVkZSA8bGludXgvbW9k dWxlcGFyYW0uaD4NCiAjaW5jbHVkZSA8bGludXgvbmV0ZGV2aWNlLmg+DQpAQCAtOTIsNyArOTMs OCBAQCB2b2lkIGFxX25pY19jZmdfc3RhcnQoc3RydWN0IGFxX25pY19zICpzZWxmKQ0KIAkvKnJz cyByaW5ncyAqLw0KIAljZmctPnZlY3MgPSBtaW4oY2ZnLT5hcV9od19jYXBzLT52ZWNzLCBBUV9D RkdfVkVDU19ERUYpOw0KIAljZmctPnZlY3MgPSBtaW4oY2ZnLT52ZWNzLCBudW1fb25saW5lX2Nw dXMoKSk7DQotCWNmZy0+dmVjcyA9IG1pbihjZmctPnZlY3MsIHNlbGYtPmlycXZlY3MpOw0KKwlp ZiAoc2VsZi0+aXJxdmVjcyA+IEFRX0hXX1NFUlZJQ0VfSVJRUykNCisJCWNmZy0+dmVjcyA9IG1p bihjZmctPnZlY3MsIHNlbGYtPmlycXZlY3MgLSBBUV9IV19TRVJWSUNFX0lSUVMpOw0KIAkvKiBj ZmctPnZlY3Mgc2hvdWxkIGJlIHBvd2VyIG9mIDIgZm9yIFJTUyAqLw0KIAlpZiAoY2ZnLT52ZWNz ID49IDhVKQ0KIAkJY2ZnLT52ZWNzID0gOFU7DQpAQCAtMTE2LDYgKzExOCwxNSBAQCB2b2lkIGFx X25pY19jZmdfc3RhcnQoc3RydWN0IGFxX25pY19zICpzZWxmKQ0KIAkJY2ZnLT52ZWNzID0gMVU7 DQogCX0NCiANCisJLyogQ2hlY2sgaWYgd2UgaGF2ZSBlbm91Z2ggdmVjdG9ycyBhbGxvY2F0ZWQg Zm9yDQorCSAqIGxpbmsgc3RhdHVzIElSUS4gSWYgbm8gLSB3ZSdsbCBrbm93IGxpbmsgc3RhdGUg ZnJvbQ0KKwkgKiBzbG93ZXIgc2VydmljZSB0YXNrLg0KKwkgKi8NCisJaWYgKEFRX0hXX1NFUlZJ Q0VfSVJRUyA+IDAgJiYgY2ZnLT52ZWNzICsgMSA8PSBzZWxmLT5pcnF2ZWNzKQ0KKwkJY2ZnLT5s aW5rX2lycV92ZWMgPSBjZmctPnZlY3M7DQorCWVsc2UNCisJCWNmZy0+bGlua19pcnFfdmVjID0g MDsNCisNCiAJY2ZnLT5saW5rX3NwZWVkX21zayAmPSBjZmctPmFxX2h3X2NhcHMtPmxpbmtfc3Bl ZWRfbXNrOw0KIAljZmctPmZlYXR1cmVzID0gY2ZnLT5hcV9od19jYXBzLT5od19mZWF0dXJlczsN CiB9DQpAQCAtMTc4LDcgKzE4OSw2IEBAIHN0YXRpYyBpcnFyZXR1cm5fdCBhcV9saW5rc3RhdGVf dGhyZWFkZWRfaXNyKGludCBpcnEsIHZvaWQgKnByaXZhdGUpDQogc3RhdGljIHZvaWQgYXFfbmlj X3NlcnZpY2VfdGltZXJfY2Ioc3RydWN0IHRpbWVyX2xpc3QgKnQpDQogew0KIAlzdHJ1Y3QgYXFf bmljX3MgKnNlbGYgPSBmcm9tX3RpbWVyKHNlbGYsIHQsIHNlcnZpY2VfdGltZXIpOw0KLQlpbnQg Y3RpbWVyID0gQVFfQ0ZHX1NFUlZJQ0VfVElNRVJfSU5URVJWQUw7DQogCWludCBlcnIgPSAwOw0K IA0KIAlpZiAoYXFfdXRpbHNfb2JqX3Rlc3QoJnNlbGYtPmZsYWdzLCBBUV9OSUNfRkxBR1NfSVNf Tk9UX1JFQURZKSkNCkBAIC0xOTMsMTIgKzIwMyw4IEBAIHN0YXRpYyB2b2lkIGFxX25pY19zZXJ2 aWNlX3RpbWVyX2NiKHN0cnVjdCB0aW1lcl9saXN0ICp0KQ0KIA0KIAlhcV9uaWNfdXBkYXRlX25k ZXZfc3RhdHMoc2VsZik7DQogDQotCS8qIElmIG5vIGxpbmsgLSB1c2UgZmFzdGVyIHRpbWVyIHJh dGUgdG8gZGV0ZWN0IGxpbmsgdXAgYXNhcCAqLw0KLQlpZiAoIW5ldGlmX2NhcnJpZXJfb2soc2Vs Zi0+bmRldikpDQotCQljdGltZXIgPSBtYXgoY3RpbWVyIC8gMiwgMSk7DQotDQogZXJyX2V4aXQ6 DQotCW1vZF90aW1lcigmc2VsZi0+c2VydmljZV90aW1lciwgamlmZmllcyArIGN0aW1lcik7DQor CW1vZF90aW1lcigmc2VsZi0+c2VydmljZV90aW1lciwgamlmZmllcyArIEFRX0NGR19TRVJWSUNF X1RJTUVSX0lOVEVSVkFMKTsNCiB9DQogDQogc3RhdGljIHZvaWQgYXFfbmljX3BvbGxpbmdfdGlt ZXJfY2Ioc3RydWN0IHRpbWVyX2xpc3QgKnQpDQpAQCAtMzU5LDEzICszNjUsMjUgQEAgaW50IGFx X25pY19zdGFydChzdHJ1Y3QgYXFfbmljX3MgKnNlbGYpDQogCX0gZWxzZSB7DQogCQlmb3IgKGkg PSAwVSwgYXFfdmVjID0gc2VsZi0+YXFfdmVjWzBdOw0KIAkJCXNlbGYtPmFxX3ZlY3MgPiBpOyAr K2ksIGFxX3ZlYyA9IHNlbGYtPmFxX3ZlY1tpXSkgew0KLQkJCWVyciA9IGFxX3BjaV9mdW5jX2Fs bG9jX2lycShzZWxmLCBpLA0KLQkJCQkJCSAgICBzZWxmLT5uZGV2LT5uYW1lLCBhcV92ZWMsDQor CQkJZXJyID0gYXFfcGNpX2Z1bmNfYWxsb2NfaXJxKHNlbGYsIGksIHNlbGYtPm5kZXYtPm5hbWUs DQorCQkJCQkJICAgIGFxX3ZlY19pc3IsIGFxX3ZlYywNCiAJCQkJCQkgICAgYXFfdmVjX2dldF9h ZmZpbml0eV9tYXNrKGFxX3ZlYykpOw0KIAkJCWlmIChlcnIgPCAwKQ0KIAkJCQlnb3RvIGVycl9l eGl0Ow0KIAkJfQ0KIA0KKwkJaWYgKHNlbGYtPmFxX25pY19jZmcubGlua19pcnFfdmVjKSB7DQor CQkJaW50IGlycXZlYyA9IHBjaV9pcnFfdmVjdG9yKHNlbGYtPnBkZXYsDQorCQkJCQkJICAgc2Vs Zi0+YXFfbmljX2NmZy5saW5rX2lycV92ZWMpOw0KKwkJCWVyciA9IHJlcXVlc3RfdGhyZWFkZWRf aXJxKGlycXZlYywgTlVMTCwNCisJCQkJCQkgICBhcV9saW5rc3RhdGVfdGhyZWFkZWRfaXNyLA0K KwkJCQkJCSAgIElSUUZfU0hBUkVELA0KKwkJCQkJCSAgIHNlbGYtPm5kZXYtPm5hbWUsIHNlbGYp Ow0KKwkJCWlmIChlcnIgPCAwKQ0KKwkJCQlnb3RvIGVycl9leGl0Ow0KKwkJCXNlbGYtPm1zaXhf ZW50cnlfbWFzayB8PSAoMSA8PCBzZWxmLT5hcV9uaWNfY2ZnLmxpbmtfaXJxX3ZlYyk7DQorCQl9 DQorDQogCQllcnIgPSBzZWxmLT5hcV9od19vcHMtPmh3X2lycV9lbmFibGUoc2VsZi0+YXFfaHcs DQogCQkJCQkJICAgICBBUV9DRkdfSVJRX01BU0spOw0KIAkJaWYgKGVyciA8IDApDQpkaWZmIC0t Z2l0IGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvYXF1YW50aWEvYXRsYW50aWMvYXFfcGNpX2Z1bmMu YyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L2FxdWFudGlhL2F0bGFudGljL2FxX3BjaV9mdW5jLmMN CmluZGV4IGVlYzQ5ZTZlOTVhYi4uNGYzNzNlYThiNjkzIDEwMDY0NA0KLS0tIGEvZHJpdmVycy9u ZXQvZXRoZXJuZXQvYXF1YW50aWEvYXRsYW50aWMvYXFfcGNpX2Z1bmMuYw0KKysrIGIvZHJpdmVy cy9uZXQvZXRoZXJuZXQvYXF1YW50aWEvYXRsYW50aWMvYXFfcGNpX2Z1bmMuYw0KQEAgLTE0MCwy NiArMTQwLDI3IEBAIGludCBhcV9wY2lfZnVuY19pbml0KHN0cnVjdCBwY2lfZGV2ICpwZGV2KQ0K IH0NCiANCiBpbnQgYXFfcGNpX2Z1bmNfYWxsb2NfaXJxKHN0cnVjdCBhcV9uaWNfcyAqc2VsZiwg dW5zaWduZWQgaW50IGksDQotCQkJICBjaGFyICpuYW1lLCB2b2lkICphcV92ZWMsIGNwdW1hc2tf dCAqYWZmaW5pdHlfbWFzaykNCisJCQkgIGNoYXIgKm5hbWUsIGlycV9oYW5kbGVyX3QgaXJxX2hh bmRsZXIsDQorCQkJICB2b2lkICppcnFfYXJnLCBjcHVtYXNrX3QgKmFmZmluaXR5X21hc2spDQog ew0KIAlzdHJ1Y3QgcGNpX2RldiAqcGRldiA9IHNlbGYtPnBkZXY7DQogCWludCBlcnI7DQogDQog CWlmIChwZGV2LT5tc2l4X2VuYWJsZWQgfHwgcGRldi0+bXNpX2VuYWJsZWQpDQotCQllcnIgPSBy ZXF1ZXN0X2lycShwY2lfaXJxX3ZlY3RvcihwZGV2LCBpKSwgYXFfdmVjX2lzciwgMCwNCi0JCQkJ ICBuYW1lLCBhcV92ZWMpOw0KKwkJZXJyID0gcmVxdWVzdF9pcnEocGNpX2lycV92ZWN0b3IocGRl diwgaSksIGlycV9oYW5kbGVyLCAwLA0KKwkJCQkgIG5hbWUsIGlycV9hcmcpOw0KIAllbHNlDQog CQllcnIgPSByZXF1ZXN0X2lycShwY2lfaXJxX3ZlY3RvcihwZGV2LCBpKSwgYXFfdmVjX2lzcl9s ZWdhY3ksDQotCQkJCSAgSVJRRl9TSEFSRUQsIG5hbWUsIGFxX3ZlYyk7DQorCQkJCSAgSVJRRl9T SEFSRUQsIG5hbWUsIGlycV9hcmcpOw0KIA0KIAlpZiAoZXJyID49IDApIHsNCiAJCXNlbGYtPm1z aXhfZW50cnlfbWFzayB8PSAoMSA8PCBpKTsNCi0JCXNlbGYtPmFxX3ZlY1tpXSA9IGFxX3ZlYzsN CiANCi0JCWlmIChwZGV2LT5tc2l4X2VuYWJsZWQpDQorCQlpZiAocGRldi0+bXNpeF9lbmFibGVk ICYmIGFmZmluaXR5X21hc2spDQogCQkJaXJxX3NldF9hZmZpbml0eV9oaW50KHBjaV9pcnFfdmVj dG9yKHBkZXYsIGkpLA0KIAkJCQkJICAgICAgYWZmaW5pdHlfbWFzayk7DQogCX0NCisNCiAJcmV0 dXJuIGVycjsNCiB9DQogDQpAQCAtMTY3LDE2ICsxNjgsMjIgQEAgdm9pZCBhcV9wY2lfZnVuY19m cmVlX2lycXMoc3RydWN0IGFxX25pY19zICpzZWxmKQ0KIHsNCiAJc3RydWN0IHBjaV9kZXYgKnBk ZXYgPSBzZWxmLT5wZGV2Ow0KIAl1bnNpZ25lZCBpbnQgaTsNCisJdm9pZCAqaXJxX2RhdGE7DQog DQogCWZvciAoaSA9IDMyVTsgaS0tOykgew0KIAkJaWYgKCEoKDFVIDw8IGkpICYgc2VsZi0+bXNp eF9lbnRyeV9tYXNrKSkNCiAJCQljb250aW51ZTsNCi0JCWlmIChpID49IEFRX0NGR19WRUNTX01B WCkNCisJCWlmIChzZWxmLT5hcV9uaWNfY2ZnLmxpbmtfaXJxX3ZlYyAmJg0KKwkJICAgIGkgPT0g c2VsZi0+YXFfbmljX2NmZy5saW5rX2lycV92ZWMpDQorCQkJaXJxX2RhdGEgPSBzZWxmOw0KKwkJ ZWxzZSBpZiAoaSA8IEFRX0NGR19WRUNTX01BWCkNCisJCQlpcnFfZGF0YSA9IHNlbGYtPmFxX3Zl Y1tpXTsNCisJCWVsc2UNCiAJCQljb250aW51ZTsNCiANCiAJCWlmIChwZGV2LT5tc2l4X2VuYWJs ZWQpDQogCQkJaXJxX3NldF9hZmZpbml0eV9oaW50KHBjaV9pcnFfdmVjdG9yKHBkZXYsIGkpLCBO VUxMKTsNCi0JCWZyZWVfaXJxKHBjaV9pcnFfdmVjdG9yKHBkZXYsIGkpLCBzZWxmLT5hcV92ZWNb aV0pOw0KKwkJZnJlZV9pcnEocGNpX2lycV92ZWN0b3IocGRldiwgaSksIGlycV9kYXRhKTsNCiAJ CXNlbGYtPm1zaXhfZW50cnlfbWFzayAmPSB+KDFVIDw8IGkpOw0KIAl9DQogfQ0KQEAgLTI2OSw2 ICsyNzYsNyBAQCBzdGF0aWMgaW50IGFxX3BjaV9wcm9iZShzdHJ1Y3QgcGNpX2RldiAqcGRldiwN CiAJbnVtdmVjcyA9IG1pbigodTgpQVFfQ0ZHX1ZFQ1NfREVGLA0KIAkJICAgICAgYXFfbmljX2dl dF9jZmcoc2VsZiktPmFxX2h3X2NhcHMtPm1zaXhfaXJxcyk7DQogCW51bXZlY3MgPSBtaW4obnVt dmVjcywgbnVtX29ubGluZV9jcHVzKCkpOw0KKwludW12ZWNzICs9IEFRX0hXX1NFUlZJQ0VfSVJR UzsNCiAJLyplbmFibGUgaW50ZXJydXB0cyAqLw0KICNpZiAhQVFfQ0ZHX0ZPUkNFX0xFR0FDWV9J TlQNCiAJZXJyID0gcGNpX2FsbG9jX2lycV92ZWN0b3JzKHNlbGYtPnBkZXYsIDEsIG51bXZlY3Ms DQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvYXF1YW50aWEvYXRsYW50aWMvYXFf cGNpX2Z1bmMuaCBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L2FxdWFudGlhL2F0bGFudGljL2FxX3Bj aV9mdW5jLmgNCmluZGV4IDc5OWM1ZTBkNjUzYi4uNjcwZjlhOTQwZDY1IDEwMDY0NA0KLS0tIGEv ZHJpdmVycy9uZXQvZXRoZXJuZXQvYXF1YW50aWEvYXRsYW50aWMvYXFfcGNpX2Z1bmMuaA0KKysr IGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvYXF1YW50aWEvYXRsYW50aWMvYXFfcGNpX2Z1bmMuaA0K QEAgLTI0LDggKzI0LDggQEAgc3RydWN0IGFxX2JvYXJkX3JldmlzaW9uX3Mgew0KIA0KIGludCBh cV9wY2lfZnVuY19pbml0KHN0cnVjdCBwY2lfZGV2ICpwZGV2KTsNCiBpbnQgYXFfcGNpX2Z1bmNf YWxsb2NfaXJxKHN0cnVjdCBhcV9uaWNfcyAqc2VsZiwgdW5zaWduZWQgaW50IGksDQotCQkJICBj aGFyICpuYW1lLCB2b2lkICphcV92ZWMsDQotCQkJICBjcHVtYXNrX3QgKmFmZmluaXR5X21hc2sp Ow0KKwkJCSAgY2hhciAqbmFtZSwgaXJxX2hhbmRsZXJfdCBpcnFfaGFuZGxlciwNCisJCQkgIHZv aWQgKmlycV9hcmcsIGNwdW1hc2tfdCAqYWZmaW5pdHlfbWFzayk7DQogdm9pZCBhcV9wY2lfZnVu Y19mcmVlX2lycXMoc3RydWN0IGFxX25pY19zICpzZWxmKTsNCiB1bnNpZ25lZCBpbnQgYXFfcGNp X2Z1bmNfZ2V0X2lycV90eXBlKHN0cnVjdCBhcV9uaWNfcyAqc2VsZik7DQogDQpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvYXF1YW50aWEvYXRsYW50aWMvaHdfYXRsL2h3X2F0bF9i MC5jIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvYXF1YW50aWEvYXRsYW50aWMvaHdfYXRsL2h3X2F0 bF9iMC5jDQppbmRleCA3ZTk1ODA0ZTIxODAuLmQ1NDU2NmJhYjBlOSAxMDA2NDQNCi0tLSBhL2Ry aXZlcnMvbmV0L2V0aGVybmV0L2FxdWFudGlhL2F0bGFudGljL2h3X2F0bC9od19hdGxfYjAuYw0K KysrIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvYXF1YW50aWEvYXRsYW50aWMvaHdfYXRsL2h3X2F0 bF9iMC5jDQpAQCAtNDQzLDYgKzQ0MywxMSBAQCBzdGF0aWMgaW50IGh3X2F0bF9iMF9od19pbml0 KHN0cnVjdCBhcV9od19zICpzZWxmLCB1OCAqbWFjX2FkZHIpDQogCQkJCSAgICgoSFdfQVRMX0Iw X0VSUl9JTlQgPDwgMHgxOCkgfCAoMVUgPDwgMHgxRikpIHwNCiAJCQkgICAgKChIV19BVExfQjBf RVJSX0lOVCA8PCAweDEwKSB8ICgxVSA8PCAweDE3KSksIDBVKTsNCiANCisJLyogRW5hYmxlIGxp bmsgaW50ZXJydXB0ICovDQorCWlmIChhcV9uaWNfY2ZnLT5saW5rX2lycV92ZWMpDQorCQlod19h dGxfcmVnX2dlbl9pcnFfbWFwX3NldChzZWxmLCBCSVQoNykgfA0KKwkJCQkJICAgYXFfbmljX2Nm Zy0+bGlua19pcnFfdmVjLCAzVSk7DQorDQogCWh3X2F0bF9iMF9od19vZmZsb2FkX3NldChzZWxm LCBhcV9uaWNfY2ZnKTsNCiANCiBlcnJfZXhpdDoNCi0tIA0KMi4xNy4xDQoNCg==