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.1 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,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 45A14C43219 for ; Sun, 5 May 2019 00:37:38 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id D1D68206DF for ; Sun, 5 May 2019 00:37:37 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=Mellanox.com header.i=@Mellanox.com header.b="lfDxqMt+" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727127AbfEEAhg (ORCPT ); Sat, 4 May 2019 20:37:36 -0400 Received: from mail-eopbgr70082.outbound.protection.outlook.com ([40.107.7.82]:14048 "EHLO EUR04-HE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1727331AbfEEAhg (ORCPT ); Sat, 4 May 2019 20:37:36 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=c9/nuIV/XxXtQbARYNPTz41Hdp+/X1K1RjUcwVX7PwU=; b=lfDxqMt+txy7OBf7+VT55HvAMAkEYMjHVkW0GHUFGwJjiXLYU5KthQS7J1p0NJcb0GlnbzyMqmtKnWi/Ll+2U1iO0/Sf5+07cpJDfgJjkhhO09TFhpoZoz54T16XQ+EGNbWasxZzZ/PNovUvxECN6tZ2XTdGyKTZ9GRpOzRTVCE= Received: from DB8PR05MB5898.eurprd05.prod.outlook.com (20.179.9.32) by DB8PR05MB5881.eurprd05.prod.outlook.com (20.179.10.21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1856.11; Sun, 5 May 2019 00:33:19 +0000 Received: from DB8PR05MB5898.eurprd05.prod.outlook.com ([fe80::ed24:8317:76e4:1a07]) by DB8PR05MB5898.eurprd05.prod.outlook.com ([fe80::ed24:8317:76e4:1a07%5]) with mapi id 15.20.1856.012; Sun, 5 May 2019 00:33:19 +0000 From: Saeed Mahameed To: "David S. Miller" CC: "netdev@vger.kernel.org" , Jiri Pirko , Feras Daoud , Alex Vesker , Moshe Shemesh , Daniel Jurgens , Saeed Mahameed Subject: [net-next 07/15] net/mlx5: Issue SW reset on FW assert Thread-Topic: [net-next 07/15] net/mlx5: Issue SW reset on FW assert Thread-Index: AQHVAtoiMYHIQJMNSE2ncyR9JF0TDA== Date: Sun, 5 May 2019 00:33:18 +0000 Message-ID: <20190505003207.1353-8-saeedm@mellanox.com> References: <20190505003207.1353-1-saeedm@mellanox.com> In-Reply-To: <20190505003207.1353-1-saeedm@mellanox.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.20.1 x-originating-ip: [73.15.39.150] x-clientproxiedby: BY5PR13CA0008.namprd13.prod.outlook.com (2603:10b6:a03:180::21) To DB8PR05MB5898.eurprd05.prod.outlook.com (2603:10a6:10:a4::32) authentication-results: spf=none (sender IP is ) smtp.mailfrom=saeedm@mellanox.com; x-ms-exchange-messagesentrepresentingtype: 1 x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: f7a49af2-5a25-46d4-28ce-08d6d0f13f25 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0;PCL:0;RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600141)(711020)(4605104)(4618075)(2017052603328)(7193020);SRVR:DB8PR05MB5881; x-ms-traffictypediagnostic: DB8PR05MB5881: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:3968; x-forefront-prvs: 00286C0CA6 x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(346002)(376002)(366004)(39850400004)(136003)(396003)(199004)(189003)(305945005)(52116002)(76176011)(36756003)(316002)(25786009)(6486002)(478600001)(14454004)(446003)(50226002)(476003)(11346002)(2616005)(26005)(7736002)(4326008)(99286004)(86362001)(6916009)(53936002)(66476007)(186003)(68736007)(66446008)(64756008)(66556008)(6436002)(66946007)(73956011)(6512007)(14444005)(30864003)(1076003)(66066001)(71190400001)(71200400001)(54906003)(256004)(102836004)(81156014)(81166006)(8936002)(3846002)(6506007)(386003)(107886003)(2906002)(8676002)(5660300002)(6116002)(486006);DIR:OUT;SFP:1101;SCL:1;SRVR:DB8PR05MB5881;H:DB8PR05MB5898.eurprd05.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;A:1;MX:1; received-spf: None (protection.outlook.com: mellanox.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: FQ7QHrEemowlb0THNptml81y82iXaxlcke8G4B/Wloy7zGDP7Ojl2Ken9ARXD6D6DT5z0yINu4yofmgR0SBZsJ/6fqBDKTwHu8poMjtjFk4S/d2gPqzDSeLL8TvluPgVt4MAcoW/5iwbnLDEOaLZqznaREukcTAv/wVyRflmrRU2OLEA5mXWgr9V1bbWIduBsvOJZMBrmrBl4X0m1sbeYWOJQqvXybiblgD9GNvg5zStxrfwjk70biGQPvK0WTuwzl2CZssky6I5lYRxMQREHaYjwYTVb/LJ4rctp+cmlTCTHYMwXqXWjb1eVd1nQQDoL7wyBuhjYlhptOpT8/387uTpsovdffc8p+q19ur1I2swxnR9HA+F5cNKrajxhYWaGob6EwPooVJHpl9854Jypdt1EOx07ge7jOmunqWXZOU= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-Network-Message-Id: f7a49af2-5a25-46d4-28ce-08d6d0f13f25 X-MS-Exchange-CrossTenant-originalarrivaltime: 05 May 2019 00:33:18.9182 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR05MB5881 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org RnJvbTogRmVyYXMgRGFvdWQgPGZlcmFzZGFAbWVsbGFub3guY29tPg0KDQpJZiBhIEZXIGFzc2Vy dCBpcyBjb25zaWRlcmVkIGZhdGFsLCBpbmRpY2F0ZWQgYnkgYSBuZXcgYml0IGluIHRoZSBoZWFs dGgNCmJ1ZmZlciwgcmVzZXQgdGhlIEZXLiBBZnRlciB0aGUgcmVzZXQgZ28gdGhyb3VnaCB0aGUg bm9ybWFsIHJlY292ZXJ5DQpmbG93LiBPbmx5IG9uZSBQRiBuZWVkcyB0byBpc3N1ZSB0aGUgcmVz ZXQsIHNvIGFuIGF0dGVtcHQgaXMgbWFkZSB0bw0KcHJldmVudCB0aGUgMm5kIGZ1bmN0aW9uIGZy b20gYWxzbyBpc3N1aW5nIHRoZSByZXNldC4NCkl0J3Mgbm90IGFuIGVycm9yIGlmIHRoYXQgaGFw cGVucywgaXQganVzdCBzbG93cyByZWNvdmVyeS4NCg0KU2lnbmVkLW9mZi1ieTogRmVyYXMgRGFv dWQgPGZlcmFzZGFAbWVsbGFub3guY29tPg0KU2lnbmVkLW9mZi1ieTogQWxleCBWZXNrZXIgPHZh bGV4QG1lbGxhbm94LmNvbT4NClNpZ25lZC1vZmYtYnk6IE1vc2hlIFNoZW1lc2ggPG1vc2hlQG1l bGxhbm94LmNvbT4NClNpZ25lZC1vZmYtYnk6IERhbmllbCBKdXJnZW5zIDxkYW5pZWxqQG1lbGxh bm94LmNvbT4NClNpZ25lZC1vZmYtYnk6IFNhZWVkIE1haGFtZWVkIDxzYWVlZG1AbWVsbGFub3gu Y29tPg0KLS0tDQogLi4uL2V0aGVybmV0L21lbGxhbm94L21seDUvY29yZS9kaWFnL2NyZHVtcC5j IHwgIDEzICstDQogLi4uL25ldC9ldGhlcm5ldC9tZWxsYW5veC9tbHg1L2NvcmUvaGVhbHRoLmMg IHwgMTU3ICsrKysrKysrKysrKysrKysrLQ0KIC4uLi9uZXQvZXRoZXJuZXQvbWVsbGFub3gvbWx4 NS9jb3JlL21haW4uYyAgICB8ICAgMSArDQogLi4uL2V0aGVybmV0L21lbGxhbm94L21seDUvY29y ZS9tbHg1X2NvcmUuaCAgIHwgICAyICsNCiBpbmNsdWRlL2xpbnV4L21seDUvZGV2aWNlLmggICAg ICAgICAgICAgICAgICAgfCAgMTAgKy0NCiBpbmNsdWRlL2xpbnV4L21seDUvZHJpdmVyLmggICAg ICAgICAgICAgICAgICAgfCAgIDEgKw0KIDYgZmlsZXMgY2hhbmdlZCwgMTc2IGluc2VydGlvbnMo KyksIDggZGVsZXRpb25zKC0pDQoNCmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9t ZWxsYW5veC9tbHg1L2NvcmUvZGlhZy9jcmR1bXAuYyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L21l bGxhbm94L21seDUvY29yZS9kaWFnL2NyZHVtcC5jDQppbmRleCA3MzM3YTQ5ZjI3MzMuLjhjZDRk ZDFkMTFkMiAxMDA2NDQNCi0tLSBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L21lbGxhbm94L21seDUv Y29yZS9kaWFnL2NyZHVtcC5jDQorKysgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9tZWxsYW5veC9t bHg1L2NvcmUvZGlhZy9jcmR1bXAuYw0KQEAgLTkyLDE0ICs5MiwyMyBAQCBpbnQgbWx4NV9jcmR1 bXBfY29sbGVjdChzdHJ1Y3QgbWx4NV9jb3JlX2RldiAqZGV2LA0KIAkJCSAgICAgICByZXQpOw0K IAkJcmV0dXJuIHJldDsNCiAJfQ0KKwkvKiBWZXJpZnkgbm8gb3RoZXIgUEYgaXMgcnVubmluZyBj ci1kdW1wIG9yIHN3IHJlc2V0ICovDQorCXJldCA9IG1seDVfdnNjX3NlbV9zZXRfc3BhY2UoZGV2 LCBNTFg1X1NFTUFQSE9SRV9TV19SRVNFVCwNCisJCQkJICAgICBNTFg1X1ZTQ19MT0NLKTsNCisJ aWYgKHJldCkgew0KKwkJbWx4NV9jb3JlX3dhcm4oZGV2LCAiRmFpbGVkIHRvIGxvY2sgU1cgcmVz ZXQgc2VtYXBob3JlXG4iKTsNCisJCWdvdG8gdW5sb2NrX2d3Ow0KKwl9DQogDQogCXJldCA9IG1s eDVfdnNjX2d3X3NldF9zcGFjZShkZXYsIE1MWDVfVlNDX1NQQUNFX1NDQU5fQ1JTUEFDRSwgTlVM TCk7DQogCWlmIChyZXQpDQotCQlnb3RvIHVubG9jazsNCisJCWdvdG8gdW5sb2NrX3NlbTsNCiAN CiAJcmV0ID0gbWx4NV9jcmR1bXBfZmlsbChkZXYsIGNyZHVtcF9yZWdpb24sIHNuYXBzaG90X2lk KTsNCiANCi11bmxvY2s6DQordW5sb2NrX3NlbToNCisJbWx4NV92c2Nfc2VtX3NldF9zcGFjZShk ZXYsIE1MWDVfU0VNQVBIT1JFX1NXX1JFU0VULCBNTFg1X1ZTQ19VTkxPQ0spOw0KK3VubG9ja19n dzoNCiAJbWx4NV92c2NfZ3dfdW5sb2NrKGRldik7DQogCXJldHVybiByZXQ7DQogfQ0KZGlmZiAt LWdpdCBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L21lbGxhbm94L21seDUvY29yZS9oZWFsdGguYyBi L2RyaXZlcnMvbmV0L2V0aGVybmV0L21lbGxhbm94L21seDUvY29yZS9oZWFsdGguYw0KaW5kZXgg YWRiNDBmZTBmNmVjLi4xOWQ5Mjk3NjgyZDcgMTAwNjQ0DQotLS0gYS9kcml2ZXJzL25ldC9ldGhl cm5ldC9tZWxsYW5veC9tbHg1L2NvcmUvaGVhbHRoLmMNCisrKyBiL2RyaXZlcnMvbmV0L2V0aGVy bmV0L21lbGxhbm94L21seDUvY29yZS9oZWFsdGguYw0KQEAgLTQwLDYgKzQwLDcgQEANCiAjaW5j bHVkZSAibWx4NV9jb3JlLmgiDQogI2luY2x1ZGUgImxpYi9lcS5oIg0KICNpbmNsdWRlICJsaWIv bWx4NS5oIg0KKyNpbmNsdWRlICJsaWIvcGNpX3ZzYy5oIg0KIA0KIGVudW0gew0KIAlNTFg1X0hF QUxUSF9QT0xMX0lOVEVSVkFMCT0gMiAqIEhaLA0KQEAgLTY3LDggKzY4LDEwIEBAIGVudW0gew0K IGVudW0gIHsNCiAJTUxYNV9TRU5TT1JfTk9fRVJSCQk9IDAsDQogCU1MWDVfU0VOU09SX1BDSV9D T01NX0VSUgk9IDEsDQotCU1MWDVfU0VOU09SX05JQ19ESVNBQkxFRAk9IDIsDQotCU1MWDVfU0VO U09SX05JQ19TV19SRVNFVAk9IDMsDQorCU1MWDVfU0VOU09SX1BDSV9FUlIJCT0gMiwNCisJTUxY NV9TRU5TT1JfTklDX0RJU0FCTEVECT0gMywNCisJTUxYNV9TRU5TT1JfTklDX1NXX1JFU0VUCT0g NCwNCisJTUxYNV9TRU5TT1JfRldfU1lORF9SRlIJCT0gNSwNCiB9Ow0KIA0KIHU4IG1seDVfZ2V0 X25pY19zdGF0ZShzdHJ1Y3QgbWx4NV9jb3JlX2RldiAqZGV2KQ0KQEAgLTk1LDMyICs5OCwxNjIg QEAgc3RhdGljIGJvb2wgc2Vuc29yX3BjaV9ub3Rfd29ya2luZyhzdHJ1Y3QgbWx4NV9jb3JlX2Rl diAqZGV2KQ0KIAlyZXR1cm4gKGlvcmVhZDMyYmUoJmgtPmZ3X3ZlcikgPT0gMHhmZmZmZmZmZik7 DQogfQ0KIA0KK3N0YXRpYyBib29sIHNlbnNvcl9md19zeW5kX3JmcihzdHJ1Y3QgbWx4NV9jb3Jl X2RldiAqZGV2KQ0KK3sNCisJc3RydWN0IG1seDVfY29yZV9oZWFsdGggKmhlYWx0aCA9ICZkZXYt PnByaXYuaGVhbHRoOw0KKwlzdHJ1Y3QgaGVhbHRoX2J1ZmZlciBfX2lvbWVtICpoID0gaGVhbHRo LT5oZWFsdGg7DQorCXUzMiByZnIgPSBpb3JlYWQzMmJlKCZoLT5yZnIpID4+IE1MWDVfUkZSX09G RlNFVDsNCisJdTggc3luZCA9IGlvcmVhZDgoJmgtPnN5bmQpOw0KKw0KKwlpZiAocmZyICYmIHN5 bmQpDQorCQltbHg1X2NvcmVfZGJnKGRldiwgIkZXIHJlcXVlc3RzIHJlc2V0LCBzeW5kOiAlZFxu Iiwgc3luZCk7DQorCXJldHVybiByZnIgJiYgc3luZDsNCit9DQorDQogc3RhdGljIHUzMiBjaGVj a19mYXRhbF9zZW5zb3JzKHN0cnVjdCBtbHg1X2NvcmVfZGV2ICpkZXYpDQogew0KIAlpZiAoc2Vu c29yX3BjaV9ub3Rfd29ya2luZyhkZXYpKQ0KIAkJcmV0dXJuIE1MWDVfU0VOU09SX1BDSV9DT01N X0VSUjsNCisJaWYgKHBjaV9jaGFubmVsX29mZmxpbmUoZGV2LT5wZGV2KSkNCisJCXJldHVybiBN TFg1X1NFTlNPUl9QQ0lfRVJSOw0KIAlpZiAobWx4NV9nZXRfbmljX3N0YXRlKGRldikgPT0gTUxY NV9OSUNfSUZDX0RJU0FCTEVEKQ0KIAkJcmV0dXJuIE1MWDVfU0VOU09SX05JQ19ESVNBQkxFRDsN CiAJaWYgKG1seDVfZ2V0X25pY19zdGF0ZShkZXYpID09IE1MWDVfTklDX0lGQ19TV19SRVNFVCkN CiAJCXJldHVybiBNTFg1X1NFTlNPUl9OSUNfU1dfUkVTRVQ7DQorCWlmIChzZW5zb3JfZndfc3lu ZF9yZnIoZGV2KSkNCisJCXJldHVybiBNTFg1X1NFTlNPUl9GV19TWU5EX1JGUjsNCiANCiAJcmV0 dXJuIE1MWDVfU0VOU09SX05PX0VSUjsNCiB9DQogDQorc3RhdGljIGludCBsb2NrX3NlbV9zd19y ZXNldChzdHJ1Y3QgbWx4NV9jb3JlX2RldiAqZGV2LCBib29sIGxvY2spDQorew0KKwllbnVtIG1s eDVfdnNjX3N0YXRlIHN0YXRlOw0KKwlpbnQgcmV0Ow0KKw0KKwlpZiAoIW1seDVfY29yZV9pc19w ZihkZXYpKQ0KKwkJcmV0dXJuIC1FQlVTWTsNCisNCisJLyogVHJ5IHRvIGxvY2sgR1cgYWNjZXNz LCB0aGlzIHN0YWdlIGRvZXNuJ3QgcmV0dXJuDQorCSAqIEVCVVNZIGJlY2F1c2UgbG9ja2VkIEdX IGRvZXMgbm90IG1lYW4gdGhhdCBvdGhlciBQRg0KKwkgKiBhbHJlYWR5IHN0YXJ0ZWQgdGhlIHJl c2V0Lg0KKwkgKi8NCisJcmV0ID0gbWx4NV92c2NfZ3dfbG9jayhkZXYpOw0KKwlpZiAocmV0ID09 IC1FQlVTWSkNCisJCXJldHVybiAtRUlOVkFMOw0KKwlpZiAocmV0KQ0KKwkJcmV0dXJuIHJldDsN CisNCisJc3RhdGUgPSBsb2NrID8gTUxYNV9WU0NfTE9DSyA6IE1MWDVfVlNDX1VOTE9DSzsNCisJ LyogQXQgdGhpcyBzdGFnZSwgaWYgdGhlIHJldHVybiBzdGF0dXMgPT0gRUJVU1ksIHRoZW4gd2Ug a25vdw0KKwkgKiBmb3Igc3VyZSB0aGF0IGFub3RoZXIgUEYgc3RhcnRlZCB0aGUgcmVzZXQsIHNv IGRvbid0IGFsbG93DQorCSAqIGFub3RoZXIgcmVzZXQuDQorCSAqLw0KKwlyZXQgPSBtbHg1X3Zz Y19zZW1fc2V0X3NwYWNlKGRldiwgTUxYNV9TRU1BUEhPUkVfU1dfUkVTRVQsIHN0YXRlKTsNCisJ aWYgKHJldCkNCisJCW1seDVfY29yZV93YXJuKGRldiwgIkZhaWxlZCB0byBsb2NrIFNXIHJlc2V0 IHNlbWFwaG9yZVxuIik7DQorDQorCS8qIFVubG9jayBHVyBhY2Nlc3MgKi8NCisJbWx4NV92c2Nf Z3dfdW5sb2NrKGRldik7DQorDQorCXJldHVybiByZXQ7DQorfQ0KKw0KK3N0YXRpYyBib29sIHJl c2V0X2Z3X2lmX25lZWRlZChzdHJ1Y3QgbWx4NV9jb3JlX2RldiAqZGV2KQ0KK3sNCisJYm9vbCBz dXBwb3J0ZWQgPSAoaW9yZWFkMzJiZSgmZGV2LT5pc2VnLT5pbml0aWFsaXppbmcpID4+DQorCQkJ ICBNTFg1X0ZXX1JFU0VUX1NVUFBPUlRFRF9PRkZTRVQpICYgMTsNCisJdTMyIGZhdGFsX2Vycm9y Ow0KKw0KKwlpZiAoIXN1cHBvcnRlZCkNCisJCXJldHVybiBmYWxzZTsNCisNCisJLyogVGhlIHJl c2V0IG9ubHkgbmVlZHMgdG8gYmUgaXNzdWVkIGJ5IG9uZSBQRi4gVGhlIGhlYWx0aCBidWZmZXIg aXMNCisJICogc2hhcmVkIGJldHdlZW4gYWxsIGZ1bmN0aW9ucywgYW5kIHdpbGwgYmUgY2xlYXJl ZCBkdXJpbmcgYSByZXNldC4NCisJICogQ2hlY2sgYWdhaW4gdG8gYXZvaWQgYSByZWR1bmRhbnQg Mm5kIHJlc2V0LiBJZiB0aGUgZmF0YWwgZXJyb3Mgd2FzDQorCSAqIFBDSSByZWxhdGVkIGEgcmVz ZXQgd29uJ3QgaGVscC4NCisJICovDQorCWZhdGFsX2Vycm9yID0gY2hlY2tfZmF0YWxfc2Vuc29y cyhkZXYpOw0KKwlpZiAoZmF0YWxfZXJyb3IgPT0gTUxYNV9TRU5TT1JfUENJX0NPTU1fRVJSIHx8 DQorCSAgICBmYXRhbF9lcnJvciA9PSBNTFg1X1NFTlNPUl9OSUNfRElTQUJMRUQgfHwNCisJICAg IGZhdGFsX2Vycm9yID09IE1MWDVfU0VOU09SX05JQ19TV19SRVNFVCkgew0KKwkJbWx4NV9jb3Jl X3dhcm4oZGV2LCAiTm90IGlzc3VpbmcgRlcgcmVzZXQuIEVpdGhlciBpdCdzIGFscmVhZHkgZG9u ZSBvciB3b24ndCBoZWxwLiIpOw0KKwkJcmV0dXJuIGZhbHNlOw0KKwl9DQorDQorCW1seDVfY29y ZV93YXJuKGRldiwgIklzc3VpbmcgRlcgUmVzZXRcbiIpOw0KKwkvKiBXcml0ZSB0aGUgTklDIGlu dGVyZmFjZSBmaWVsZCB0byBpbml0aWF0ZSB0aGUgcmVzZXQsIHRoZSBjb21tYW5kDQorCSAqIGlu dGVyZmFjZSBhZGRyZXNzIGFsc28gcmVzaWRlcyBoZXJlLCBkb24ndCBvdmVyd3JpdGUgaXQuDQor CSAqLw0KKwltbHg1X3NldF9uaWNfc3RhdGUoZGV2LCBNTFg1X05JQ19JRkNfU1dfUkVTRVQpOw0K Kw0KKwlyZXR1cm4gdHJ1ZTsNCit9DQorDQogdm9pZCBtbHg1X2VudGVyX2Vycm9yX3N0YXRlKHN0 cnVjdCBtbHg1X2NvcmVfZGV2ICpkZXYsIGJvb2wgZm9yY2UpDQogew0KIAltdXRleF9sb2NrKCZk ZXYtPmludGZfc3RhdGVfbXV0ZXgpOw0KIAlpZiAoZGV2LT5zdGF0ZSA9PSBNTFg1X0RFVklDRV9T VEFURV9JTlRFUk5BTF9FUlJPUikNCiAJCWdvdG8gdW5sb2NrOw0KKwlpZiAoZGV2LT5zdGF0ZSA9 PSBNTFg1X0RFVklDRV9TVEFURV9VTklOSVRJQUxJWkVEKSB7DQorCQlkZXYtPnN0YXRlID0gTUxY NV9ERVZJQ0VfU1RBVEVfSU5URVJOQUxfRVJST1I7DQorCQlnb3RvIHVubG9jazsNCisJfQ0KIA0K LQltbHg1X2NvcmVfZXJyKGRldiwgInN0YXJ0XG4iKTsNCi0JaWYgKHBjaV9jaGFubmVsX29mZmxp bmUoZGV2LT5wZGV2KSB8fA0KLQkgICAgZGV2LT5wcml2LmhlYWx0aC5mYXRhbF9lcnJvciAhPSBN TFg1X1NFTlNPUl9OT19FUlIgfHwgZm9yY2UpIHsNCisJaWYgKGNoZWNrX2ZhdGFsX3NlbnNvcnMo ZGV2KSB8fCBmb3JjZSkgew0KIAkJZGV2LT5zdGF0ZSA9IE1MWDVfREVWSUNFX1NUQVRFX0lOVEVS TkFMX0VSUk9SOw0KIAkJbWx4NV9jbWRfZmx1c2goZGV2KTsNCiAJfQ0KIA0KIAltbHg1X25vdGlm aWVyX2NhbGxfY2hhaW4oZGV2LT5wcml2LmV2ZW50cywgTUxYNV9ERVZfRVZFTlRfU1lTX0VSUk9S LCAodm9pZCAqKTEpOw0KK3VubG9jazoNCisJbXV0ZXhfdW5sb2NrKCZkZXYtPmludGZfc3RhdGVf bXV0ZXgpOw0KK30NCisNCisjZGVmaW5lIE1MWDVfQ1JEVU1QX1dBSVRfTVMJNjAwMDANCisjZGVm aW5lIE1MWDVfRldfUkVTRVRfV0FJVF9NUwkxMDAwDQordm9pZCBtbHg1X2Vycm9yX3N3X3Jlc2V0 KHN0cnVjdCBtbHg1X2NvcmVfZGV2ICpkZXYpDQorew0KKwl1bnNpZ25lZCBsb25nIGVuZCwgZGVs YXlfbXMgPSBNTFg1X0ZXX1JFU0VUX1dBSVRfTVM7DQorCWludCBsb2NrID0gLUVCVVNZOw0KKw0K KwltdXRleF9sb2NrKCZkZXYtPmludGZfc3RhdGVfbXV0ZXgpOw0KKwlpZiAoZGV2LT5zdGF0ZSAh PSBNTFg1X0RFVklDRV9TVEFURV9JTlRFUk5BTF9FUlJPUikNCisJCWdvdG8gdW5sb2NrOw0KKw0K KwltbHg1X2NvcmVfZXJyKGRldiwgInN0YXJ0XG4iKTsNCisNCisJaWYgKGNoZWNrX2ZhdGFsX3Nl bnNvcnMoZGV2KSA9PSBNTFg1X1NFTlNPUl9GV19TWU5EX1JGUikgew0KKwkJLyogR2V0IGNyLWR1 bXAgYW5kIHJlc2V0IEZXIHNlbWFwaG9yZSAqLw0KKwkJbG9jayA9IGxvY2tfc2VtX3N3X3Jlc2V0 KGRldiwgdHJ1ZSk7DQorDQorCQlpZiAobG9jayA9PSAtRUJVU1kpIHsNCisJCQlkZWxheV9tcyA9 IE1MWDVfQ1JEVU1QX1dBSVRfTVM7DQorCQkJZ290byByZWNvdmVyX2Zyb21fc3dfcmVzZXQ7DQor CQl9DQorCQkvKiBFeGVjdXRlIFNXIHJlc2V0ICovDQorCQlyZXNldF9md19pZl9uZWVkZWQoZGV2 KTsNCisJfQ0KKw0KK3JlY292ZXJfZnJvbV9zd19yZXNldDoNCisJLyogUmVjb3ZlciBmcm9tIFNX IHJlc2V0ICovDQorCWVuZCA9IGppZmZpZXMgKyBtc2Vjc190b19qaWZmaWVzKGRlbGF5X21zKTsN CisJZG8gew0KKwkJaWYgKG1seDVfZ2V0X25pY19zdGF0ZShkZXYpID09IE1MWDVfTklDX0lGQ19E SVNBQkxFRCkNCisJCQlicmVhazsNCisNCisJCWNvbmRfcmVzY2hlZCgpOw0KKwl9IHdoaWxlICgh dGltZV9hZnRlcihqaWZmaWVzLCBlbmQpKTsNCisNCisJaWYgKG1seDVfZ2V0X25pY19zdGF0ZShk ZXYpICE9IE1MWDVfTklDX0lGQ19ESVNBQkxFRCkgew0KKwkJZGV2X2VycigmZGV2LT5wZGV2LT5k ZXYsICJOSUMgSUZDIHN0aWxsICVkIGFmdGVyICVsdW1zLlxuIiwNCisJCQltbHg1X2dldF9uaWNf c3RhdGUoZGV2KSwgZGVsYXlfbXMpOw0KKwl9DQorDQorCS8qIFJlbGVhc2UgRlcgc2VtYXBob3Jl IGlmIHlvdSBhcmUgdGhlIGxvY2sgb3duZXIgKi8NCisJaWYgKCFsb2NrKQ0KKwkJbG9ja19zZW1f c3dfcmVzZXQoZGV2LCBmYWxzZSk7DQorDQogCW1seDVfY29yZV9lcnIoZGV2LCAiZW5kXG4iKTsN CiANCiB1bmxvY2s6DQpAQCAtMTQzLDYgKzI3NiwyMCBAQCBzdGF0aWMgdm9pZCBtbHg1X2hhbmRs ZV9iYWRfc3RhdGUoc3RydWN0IG1seDVfY29yZV9kZXYgKmRldikNCiAJY2FzZSBNTFg1X05JQ19J RkNfTk9fRFJBTV9OSUM6DQogCQltbHg1X2NvcmVfd2FybihkZXYsICJFeHBlY3RlZCB0byBzZWUg ZGlzYWJsZWQgTklDIGJ1dCBpdCBpcyBubyBkcmFtIG5pY1xuIik7DQogCQlicmVhazsNCisNCisJ Y2FzZSBNTFg1X05JQ19JRkNfU1dfUkVTRVQ6DQorCQkvKiBUaGUgSUZDIG1vZGUgZmllbGQgaXMg MyBiaXRzLCBzbyBpdCB3aWxsIHJlYWQgMHg3IGluIDIgY2FzZXM6DQorCQkgKiAxLiBQQ0kgaGFz IGJlZW4gZGlzYWJsZWQgKGllLiBQQ0ktQUVSLCBQRiBkcml2ZXIgdW5sb2FkZWQNCisJCSAqICAg IGFuZCB0aGlzIGlzIGEgVkYpLCB0aGlzIGlzIG5vdCByZWNvdmVyYWJsZSBieSBTVyByZXNldC4N CisJCSAqICAgIExvZ2dpbmcgb2YgdGhpcyBpcyBoYW5kbGVkIGVsc2V3aGVyZS4NCisJCSAqIDIu IEZXIHJlc2V0IGhhcyBiZWVuIGlzc3VlZCBieSBhbm90aGVyIGZ1bmN0aW9uLCBkcml2ZXIgY2Fu DQorCQkgKiAgICBiZSByZWxvYWRlZCB0byByZWNvdmVyIGFmdGVyIHRoZSBtb2RlIHN3aXRjaGVz IHRvDQorCQkgKiAgICBNTFg1X05JQ19JRkNfRElTQUJMRUQuDQorCQkgKi8NCisJCWlmIChkZXYt PnByaXYuaGVhbHRoLmZhdGFsX2Vycm9yICE9IE1MWDVfU0VOU09SX1BDSV9DT01NX0VSUikNCisJ CQltbHg1X2NvcmVfd2FybihkZXYsICJOSUMgU1cgcmVzZXQgaW4gcHJvZ3Jlc3NcbiIpOw0KKwkJ YnJlYWs7DQorDQogCWRlZmF1bHQ6DQogCQltbHg1X2NvcmVfd2FybihkZXYsICJFeHBlY3RlZCB0 byBzZWUgZGlzYWJsZWQgTklDIGJ1dCBpdCBpcyBoYXMgaW52YWxpZCB2YWx1ZSAlZFxuIiwNCiAJ CQkgICAgICAgbmljX2ludGVyZmFjZSk7DQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZXRoZXJu ZXQvbWVsbGFub3gvbWx4NS9jb3JlL21haW4uYyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L21lbGxh bm94L21seDUvY29yZS9tYWluLmMNCmluZGV4IGM5NGVhYTQ5ZDFmNi4uYzIyZmY5YTU4ZWM1IDEw MDY0NA0KLS0tIGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvbWVsbGFub3gvbWx4NS9jb3JlL21haW4u Yw0KKysrIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvbWVsbGFub3gvbWx4NS9jb3JlL21haW4uYw0K QEAgLTEzNjgsNiArMTM2OCw3IEBAIHN0YXRpYyBwY2lfZXJzX3Jlc3VsdF90IG1seDVfcGNpX2Vy cl9kZXRlY3RlZChzdHJ1Y3QgcGNpX2RldiAqcGRldiwNCiAJbWx4NV9jb3JlX2luZm8oZGV2LCAi JXMgd2FzIGNhbGxlZFxuIiwgX19mdW5jX18pOw0KIA0KIAltbHg1X2VudGVyX2Vycm9yX3N0YXRl KGRldiwgZmFsc2UpOw0KKwltbHg1X2Vycm9yX3N3X3Jlc2V0KGRldik7DQogCW1seDVfdW5sb2Fk X29uZShkZXYsIGZhbHNlKTsNCiAJLyogSW4gY2FzZSBvZiBrZXJuZWwgY2FsbCBkcmFpbiB0aGUg aGVhbHRoIHdxICovDQogCWlmIChzdGF0ZSkgew0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2V0 aGVybmV0L21lbGxhbm94L21seDUvY29yZS9tbHg1X2NvcmUuaCBiL2RyaXZlcnMvbmV0L2V0aGVy bmV0L21lbGxhbm94L21seDUvY29yZS9tbHg1X2NvcmUuaA0KaW5kZXggNDM5Y2YyMzk0NWE0Li45 NzI2YWYxMzdiZTMgMTAwNjQ0DQotLS0gYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9tZWxsYW5veC9t bHg1L2NvcmUvbWx4NV9jb3JlLmgNCisrKyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L21lbGxhbm94 L21seDUvY29yZS9tbHg1X2NvcmUuaA0KQEAgLTExMyw2ICsxMTMsNyBAQCBlbnVtIHsNCiANCiBl bnVtIG1seDVfc2VtYXBob3JlX3NwYWNlX2FkZHJlc3Mgew0KIAlNTFg1X1NFTUFQSE9SRV9TUEFD RV9ET01BSU4gICAgID0gMHhBLA0KKwlNTFg1X1NFTUFQSE9SRV9TV19SRVNFVCAgICAgICAgID0g MHgyMCwNCiB9Ow0KIA0KIGludCBtbHg1X3F1ZXJ5X2hjYV9jYXBzKHN0cnVjdCBtbHg1X2NvcmVf ZGV2ICpkZXYpOw0KQEAgLTEyMiw2ICsxMjMsNyBAQCBpbnQgbWx4NV9jbWRfdGVhcmRvd25faGNh KHN0cnVjdCBtbHg1X2NvcmVfZGV2ICpkZXYpOw0KIGludCBtbHg1X2NtZF9mb3JjZV90ZWFyZG93 bl9oY2Eoc3RydWN0IG1seDVfY29yZV9kZXYgKmRldik7DQogaW50IG1seDVfY21kX2Zhc3RfdGVh cmRvd25faGNhKHN0cnVjdCBtbHg1X2NvcmVfZGV2ICpkZXYpOw0KIHZvaWQgbWx4NV9lbnRlcl9l cnJvcl9zdGF0ZShzdHJ1Y3QgbWx4NV9jb3JlX2RldiAqZGV2LCBib29sIGZvcmNlKTsNCit2b2lk IG1seDVfZXJyb3Jfc3dfcmVzZXQoc3RydWN0IG1seDVfY29yZV9kZXYgKmRldik7DQogdm9pZCBt bHg1X2Rpc2FibGVfZGV2aWNlKHN0cnVjdCBtbHg1X2NvcmVfZGV2ICpkZXYpOw0KIHZvaWQgbWx4 NV9yZWNvdmVyX2RldmljZShzdHJ1Y3QgbWx4NV9jb3JlX2RldiAqZGV2KTsNCiBpbnQgbWx4NV9z cmlvdl9pbml0KHN0cnVjdCBtbHg1X2NvcmVfZGV2ICpkZXYpOw0KZGlmZiAtLWdpdCBhL2luY2x1 ZGUvbGludXgvbWx4NS9kZXZpY2UuaCBiL2luY2x1ZGUvbGludXgvbWx4NS9kZXZpY2UuaA0KaW5k ZXggZmMyYjZlODA3ZjA2Li4yY2ZhMmVjOGI1ZDMgMTAwNjQ0DQotLS0gYS9pbmNsdWRlL2xpbnV4 L21seDUvZGV2aWNlLmgNCisrKyBiL2luY2x1ZGUvbGludXgvbWx4NS9kZXZpY2UuaA0KQEAgLTUx MCw2ICs1MTAsMTAgQEAgc3RydWN0IG1seDVfY21kX2xheW91dCB7DQogCXU4CQlzdGF0dXNfb3du Ow0KIH07DQogDQorZW51bSBtbHg1X2ZhdGFsX2Fzc2VydF9iaXRfb2Zmc2V0cyB7DQorCU1MWDVf UkZSX09GRlNFVCA9IDMxLA0KK307DQorDQogc3RydWN0IGhlYWx0aF9idWZmZXIgew0KIAlfX2Jl MzIJCWFzc2VydF92YXJbNV07DQogCV9fYmUzMgkJcnN2ZDBbM107DQpAQCAtNTE4LDEyICs1MjIs MTYgQEAgc3RydWN0IGhlYWx0aF9idWZmZXIgew0KIAlfX2JlMzIJCXJzdmQxWzJdOw0KIAlfX2Jl MzIJCWZ3X3ZlcjsNCiAJX19iZTMyCQlod19pZDsNCi0JX19iZTMyCQlyc3ZkMjsNCisJX19iZTMy CQlyZnI7DQogCXU4CQlpcmlzY19pbmRleDsNCiAJdTgJCXN5bmQ7DQogCV9fYmUxNgkJZXh0X3N5 bmQ7DQogfTsNCiANCitlbnVtIG1seDVfaW5pdGlhbGl6aW5nX2JpdF9vZmZzZXRzIHsNCisJTUxY NV9GV19SRVNFVF9TVVBQT1JURURfT0ZGU0VUID0gMzAsDQorfTsNCisNCiBlbnVtIG1seDVfY21k X2FkZHJfbF9zel9vZmZzZXQgew0KIAlNTFg1X05JQ19JRkNfT0ZGU0VUID0gOCwNCiB9Ow0KZGlm ZiAtLWdpdCBhL2luY2x1ZGUvbGludXgvbWx4NS9kcml2ZXIuaCBiL2luY2x1ZGUvbGludXgvbWx4 NS9kcml2ZXIuaA0KaW5kZXggMDg2ZmFhNGQyMmJmLi4zM2M5NzdkYjZjZWIgMTAwNjQ0DQotLS0g YS9pbmNsdWRlL2xpbnV4L21seDUvZHJpdmVyLmgNCisrKyBiL2luY2x1ZGUvbGludXgvbWx4NS9k cml2ZXIuaA0KQEAgLTU4NCw2ICs1ODQsNyBAQCBzdHJ1Y3QgbWx4NV9wcml2IHsNCiB9Ow0KIA0K IGVudW0gbWx4NV9kZXZpY2Vfc3RhdGUgew0KKwlNTFg1X0RFVklDRV9TVEFURV9VTklOSVRJQUxJ WkVELA0KIAlNTFg1X0RFVklDRV9TVEFURV9VUCwNCiAJTUxYNV9ERVZJQ0VfU1RBVEVfSU5URVJO QUxfRVJST1IsDQogfTsNCi0tIA0KMi4yMC4xDQoNCg==