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 DC49EC43219 for ; Sun, 5 May 2019 00:33:39 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 99C6120651 for ; Sun, 5 May 2019 00:33:39 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=Mellanox.com header.i=@Mellanox.com header.b="rvmtGO8A" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727325AbfEEAdV (ORCPT ); Sat, 4 May 2019 20:33:21 -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 S1727295AbfEEAdU (ORCPT ); Sat, 4 May 2019 20:33:20 -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=5Db1n7FjCePViiTiP6YcXifJT94bwYGl7/4ITt/hA5c=; b=rvmtGO8A1LoqC8zzpwFd4fYE5tIipTn8Jzule7ULrxp2tRoiqoOCOHqDf22/nOw80gI09NiIIpZUOByoq0sefd9OHINtBsOjaCaFNvrpVQlT2CNZ78ok5qJMjtkQH/J0dQjm4Uz3lQLe5wpX82iCU64jZSzoixwsjpmqoVADkEo= 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:00 +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:00 +0000 From: Saeed Mahameed To: "David S. Miller" CC: "netdev@vger.kernel.org" , Jiri Pirko , Alex Vesker , Moshe Shemesh , Feras Daoud , Saeed Mahameed Subject: [net-next 03/15] net/mlx5: Add Crdump FW snapshot support Thread-Topic: [net-next 03/15] net/mlx5: Add Crdump FW snapshot support Thread-Index: AQHVAtoXQZly9Pz+zUSTLSpGCp+U+w== Date: Sun, 5 May 2019 00:33:00 +0000 Message-ID: <20190505003207.1353-4-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: ca5fff1d-7f66-4664-70a7-08d6d0f13a04 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:316; 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)(1076003)(66066001)(5024004)(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: kyFEasB0srWhBMWALgSOIpDfT8+ieRE/lKEj77mgbzcXMhgMCF0Z8r/lfJyl+Z9fw6TdPbKI3LJuI/KhN4EHYdwIU/Bv66SyID0CkQENjHams5l3fDk7LfiapJLVGrIeaR1f4UtcqAehvEiKfn5IJS/csj00pWvmkdSXfEII+0gZe9ZIq//PjmILfMA7UFIJxL1+YYpVxfhXaMI3oPTxQzYkrJP5S0pzQbUgdgoafj0u8+cMAKlmkGuphsm7pBgYHxhIRGid3IjpDZs09Z89h24SoyUaiWFDpUBInBvZ0qtv8E7O9ig863G/nmpCVKHehC2Gopao536m0DYcvaTzeZGi2vepdMd3k+0Ar7mHaLbnDGdX30J1B2SC24PlsLeQAhDTZMdkT+wv5q6Yz7hofAqfBNKKvihTMAq4608i+aI= 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: ca5fff1d-7f66-4664-70a7-08d6d0f13a04 X-MS-Exchange-CrossTenant-originalarrivaltime: 05 May 2019 00:33:00.1691 (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 RnJvbTogQWxleCBWZXNrZXIgPHZhbGV4QG1lbGxhbm94LmNvbT4NCg0KQ3JkdW1wIGFsbG93cyB0 aGUgZHJpdmVyIHRvIGNyZWF0ZSBhIHNuYXBzaG90IG9mIHRoZSBGVyBQQ0kgY3JzcGFjZS4NClRo aXMgaXMgdXNlZnVsIGluIGNhc2Ugb2YgY2F0YXN0cm9waGljIGlzc3VlcyB3aGljaCBtYXkgcmVx dWlyZSBGVw0KcmVzZXQuIFRoZSBzbmFwc2hvdCBjYW4gYmUgdXNlZCBmb3IgbGF0ZXIgZGVidWcu DQoNClRoZSBzbmFwc2hvdCBpcyBleHBvc2VkIHVzaW5nIGRldmxpbmsgcmVnaW9uX3NuYXBzaG90 IGluIGRvd25zdHJlYW0gcGF0Y2gsDQpjci1zcGFjZSBhZGRyZXNzIHJlZ2lvbnMgYXJlIHJlZ2lz dGVyZWQgb24gaW5pdCBhbmQgc25hcHNob3RzIGFyZSBhdHRhY2hlZA0Kb25jZSBhIG5ldyBzbmFw c2hvdCBpcyBjb2xsZWN0ZWQgYnkgdGhlIGRyaXZlci4NCg0KU2lnbmVkLW9mZi1ieTogQWxleCBW ZXNrZXIgPHZhbGV4QG1lbGxhbm94LmNvbT4NClNpZ25lZC1vZmYtYnk6IE1vc2hlIFNoZW1lc2gg PG1vc2hlQG1lbGxhbm94LmNvbT4NClJldmlld2VkLWJ5OiBGZXJhcyBEYW91ZCA8ZmVyYXNkYUBt ZWxsYW5veC5jb20+DQpTaWduZWQtb2ZmLWJ5OiBTYWVlZCBNYWhhbWVlZCA8c2FlZWRtQG1lbGxh bm94LmNvbT4NCi0tLQ0KIC4uLi9uZXQvZXRoZXJuZXQvbWVsbGFub3gvbWx4NS9jb3JlL01ha2Vm aWxlICB8ICAgMiArLQ0KIC4uLi9ldGhlcm5ldC9tZWxsYW5veC9tbHg1L2NvcmUvZGlhZy9jcmR1 bXAuYyB8IDE3OSArKysrKysrKysrKysrKysrKysNCiAuLi4vbmV0L2V0aGVybmV0L21lbGxhbm94 L21seDUvY29yZS9oZWFsdGguYyAgfCAgIDEgKw0KIC4uLi9ldGhlcm5ldC9tZWxsYW5veC9tbHg1 L2NvcmUvbGliL21seDUuaCAgICB8ICAgNCArDQogLi4uL25ldC9ldGhlcm5ldC9tZWxsYW5veC9t bHg1L2NvcmUvbWFpbi5jICAgIHwgICA1ICsNCiBpbmNsdWRlL2xpbnV4L21seDUvZHJpdmVyLmgg ICAgICAgICAgICAgICAgICAgfCAgIDQgKw0KIDYgZmlsZXMgY2hhbmdlZCwgMTk0IGluc2VydGlv bnMoKyksIDEgZGVsZXRpb24oLSkNCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9uZXQvZXRo ZXJuZXQvbWVsbGFub3gvbWx4NS9jb3JlL2RpYWcvY3JkdW1wLmMNCg0KZGlmZiAtLWdpdCBhL2Ry aXZlcnMvbmV0L2V0aGVybmV0L21lbGxhbm94L21seDUvY29yZS9NYWtlZmlsZSBiL2RyaXZlcnMv bmV0L2V0aGVybmV0L21lbGxhbm94L21seDUvY29yZS9NYWtlZmlsZQ0KaW5kZXggMzRkOWEwNzli NjA4Li41ZmVlZDllMWJlYzcgMTAwNjQ0DQotLS0gYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9tZWxs YW5veC9tbHg1L2NvcmUvTWFrZWZpbGUNCisrKyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L21lbGxh bm94L21seDUvY29yZS9NYWtlZmlsZQ0KQEAgLTE2LDcgKzE2LDcgQEAgbWx4NV9jb3JlLXkgOj0J bWFpbi5vIGNtZC5vIGRlYnVnZnMubyBmdy5vIGVxLm8gdWFyLm8gcGFnZWFsbG9jLm8gXA0KIAkJ dHJhbnNvYmoubyB2cG9ydC5vIHNyaW92Lm8gZnNfY21kLm8gZnNfY29yZS5vIFwNCiAJCWZzX2Nv dW50ZXJzLm8gcmwubyBsYWcubyBkZXYubyBldmVudHMubyB3cS5vIGxpYi9naWQubyBcDQogCQls aWIvZGV2Y29tLm8gbGliL3BjaV92c2MubyBkaWFnL2ZzX3RyYWNlcG9pbnQubyBcDQotCQlkaWFn L2Z3X3RyYWNlci5vIGRldmxpbmsubw0KKwkJZGlhZy9md190cmFjZXIubyBkaWFnL2NyZHVtcC5v IGRldmxpbmsubw0KIA0KICMNCiAjIE5ldGRldiBiYXNpYw0KZGlmZiAtLWdpdCBhL2RyaXZlcnMv bmV0L2V0aGVybmV0L21lbGxhbm94L21seDUvY29yZS9kaWFnL2NyZHVtcC5jIGIvZHJpdmVycy9u ZXQvZXRoZXJuZXQvbWVsbGFub3gvbWx4NS9jb3JlL2RpYWcvY3JkdW1wLmMNCm5ldyBmaWxlIG1v ZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwMDAwMDAuLjY0MzBjZWVlZmI1Mw0KLS0tIC9kZXYvbnVs bA0KKysrIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvbWVsbGFub3gvbWx4NS9jb3JlL2RpYWcvY3Jk dW1wLmMNCkBAIC0wLDAgKzEsMTc5IEBADQorLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEdQ TC0yLjAgT1IgTGludXgtT3BlbklCDQorLyogQ29weXJpZ2h0IChjKSAyMDE5IE1lbGxhbm94IFRl Y2hub2xvZ2llcyAqLw0KKw0KKyNpbmNsdWRlIDxsaW51eC9wcm9jX2ZzLmg+DQorI2luY2x1ZGUg PGxpbnV4L21seDUvZHJpdmVyLmg+DQorI2luY2x1ZGUgPG5ldC9kZXZsaW5rLmg+DQorI2luY2x1 ZGUgIm1seDVfY29yZS5oIg0KKyNpbmNsdWRlICJsaWIvcGNpX3ZzYy5oIg0KKyNpbmNsdWRlICJs aWIvbWx4NS5oIg0KKw0KKyNkZWZpbmUgQkFEX0FDQ0VTUwkJCTB4QkFEQUNDRTUNCisjZGVmaW5l IE1MWDVfUFJPVEVDVEVEX0NSX1NDQU5fQ1JTUEFDRQkweDcNCisjZGVmaW5lIE1BWF9OVU1fT0Zf RFVNUFNfVE9fU1RPUkUJKDgpDQorDQorc3RhdGljIGNvbnN0IGNoYXIgKnJlZ2lvbl9jcl9zcGFj ZV9zdHIgPSAiY3Itc3BhY2UiOw0KKw0KK3N0cnVjdCBtbHg1X2Z3X2NyZHVtcCB7DQorCXUzMgkJ CXNpemU7DQorCXN0cnVjdCBkZXZsaW5rX3JlZ2lvbgkqcmVnaW9uX2Nyc3BhY2U7DQorfTsNCisN CitzdGF0aWMgYm9vbCBtbHg1X2NyZHVtcF9lbmJhbGVkKHN0cnVjdCBtbHg1X2NvcmVfZGV2ICpk ZXYpDQorew0KKwlzdHJ1Y3QgbWx4NV9wcml2ICpwcml2ID0gJmRldi0+cHJpdjsNCisNCisJcmV0 dXJuICghIXByaXYtPmhlYWx0aC5jcmR1bXApOw0KK30NCisNCitzdGF0aWMgaW50IG1seDVfY3Jk dW1wX2ZpbGwoc3RydWN0IG1seDVfY29yZV9kZXYgKmRldiwNCisJCQkgICAgY2hhciAqY3JkdW1w X3JlZ2lvbiwgdTMyICpzbmFwc2hvdF9pZCkNCit7DQorCXN0cnVjdCBkZXZsaW5rICpkZXZsaW5r ID0gcHJpdl90b19kZXZsaW5rKGRldik7DQorCXN0cnVjdCBtbHg1X3ByaXYgKnByaXYgPSAmZGV2 LT5wcml2Ow0KKwlzdHJ1Y3QgbWx4NV9md19jcmR1bXAgKmNyZHVtcCA9IHByaXYtPmhlYWx0aC5j cmR1bXA7DQorCWludCBpLCByZXQgPSAwOw0KKwl1MzIgKmNyX2RhdGE7DQorCXUzMiBpZDsNCisN CisJY3JfZGF0YSA9IGt2bWFsbG9jKGNyZHVtcC0+c2l6ZSwgR0ZQX0tFUk5FTCk7DQorCWlmICgh Y3JfZGF0YSkNCisJCXJldHVybiAtRU5PTUVNOw0KKw0KKwlmb3IgKGkgPSAwOyBpIDwgKGNyZHVt cC0+c2l6ZSAvIDQpOyBpKyspDQorCQljcl9kYXRhW2ldID0gQkFEX0FDQ0VTUzsNCisNCisJcmV0 ID0gbWx4NV92c2NfZ3dfcmVhZF9ibG9ja19mYXN0KGRldiwgY3JfZGF0YSwgY3JkdW1wLT5zaXpl KTsNCisJaWYgKHJldCA8PSAwKSB7DQorCQlpZiAocmV0ID09IDApDQorCQkJcmV0ID0gLUVJTzsN CisJCWdvdG8gZnJlZV9kYXRhOw0KKwl9DQorDQorCWlmIChjcmR1bXAtPnNpemUgIT0gcmV0KSB7 DQorCQltbHg1X2NvcmVfd2FybihkZXYsICJmYWlsZWQgdG8gcmVhZCBmdWxsIGR1bXAsIHJlYWQg JWQgb3V0IG9mICV1XG4iLA0KKwkJCSAgICAgICByZXQsIGNyZHVtcC0+c2l6ZSk7DQorCQlyZXQg PSAtRUlOVkFMOw0KKwkJZ290byBmcmVlX2RhdGE7DQorCX0NCisNCisJLyogR2V0IHRoZSBhdmFp bGFibGUgc25hcHNob3QgSUQgZm9yIHRoZSBkdW1wcyAqLw0KKwlpZCA9IGRldmxpbmtfcmVnaW9u X3NoYXBzaG90X2lkX2dldChkZXZsaW5rKTsNCisJcmV0ID0gZGV2bGlua19yZWdpb25fc25hcHNo b3RfY3JlYXRlKGNyZHVtcC0+cmVnaW9uX2Nyc3BhY2UsDQorCQkJCQkgICAgIGNyZHVtcC0+c2l6 ZSwgKHU4ICopY3JfZGF0YSwNCisJCQkJCSAgICAgaWQsICZrdmZyZWUpOw0KKwlpZiAocmV0KSB7 DQorCQltbHg1X2NvcmVfd2FybihkZXYsICJjcmR1bXA6IGRldmxpbmsgY3JlYXRlICVzIHNuYXBz aG90IGlkICVkIGVyciAlZFxuIiwNCisJCQkgICAgICAgcmVnaW9uX2NyX3NwYWNlX3N0ciwgaWQs IHJldCk7DQorCQlnb3RvIGZyZWVfZGF0YTsNCisJfSBlbHNlIHsNCisJCSpzbmFwc2hvdF9pZCA9 IGlkOw0KKwkJc3RyY3B5KGNyZHVtcF9yZWdpb24sIHJlZ2lvbl9jcl9zcGFjZV9zdHIpOw0KKwl9 DQorCXJldHVybiAwOw0KKw0KK2ZyZWVfZGF0YToNCisJa3ZmcmVlKGNyX2RhdGEpOw0KKwlyZXR1 cm4gcmV0Ow0KK30NCisNCitpbnQgbWx4NV9jcmR1bXBfY29sbGVjdChzdHJ1Y3QgbWx4NV9jb3Jl X2RldiAqZGV2LA0KKwkJCWNoYXIgKmNyZHVtcF9yZWdpb24sIHUzMiAqc25hcHNob3RfaWQpDQor ew0KKwlpbnQgcmV0ID0gMDsNCisNCisJaWYgKCFtbHg1X2NyZHVtcF9lbmJhbGVkKGRldikpDQor CQlyZXR1cm4gLUVOT0RFVjsNCisNCisJcmV0ID0gbWx4NV92c2NfZ3dfbG9jayhkZXYpOw0KKwlp ZiAocmV0KSB7DQorCQltbHg1X2NvcmVfd2FybihkZXYsICJjcmR1bXA6IGZhaWxlZCB0byBsb2Nr IHZzYyBndyBlcnIgJWRcbiIsDQorCQkJICAgICAgIHJldCk7DQorCQlyZXR1cm4gcmV0Ow0KKwl9 DQorDQorCXJldCA9IG1seDVfdnNjX2d3X3NldF9zcGFjZShkZXYsIE1MWDVfVlNDX1NQQUNFX1ND QU5fQ1JTUEFDRSwgTlVMTCk7DQorCWlmIChyZXQpDQorCQlnb3RvIHVubG9jazsNCisNCisJcmV0 ID0gbWx4NV9jcmR1bXBfZmlsbChkZXYsIGNyZHVtcF9yZWdpb24sIHNuYXBzaG90X2lkKTsNCisN Cit1bmxvY2s6DQorCW1seDVfdnNjX2d3X3VubG9jayhkZXYpOw0KKwlyZXR1cm4gcmV0Ow0KK30N CisNCitpbnQgbWx4NV9jcmR1bXBfaW5pdChzdHJ1Y3QgbWx4NV9jb3JlX2RldiAqZGV2KQ0KK3sN CisJc3RydWN0IGRldmxpbmsgKmRldmxpbmsgPSBwcml2X3RvX2RldmxpbmsoZGV2KTsNCisJc3Ry dWN0IG1seDVfcHJpdiAqcHJpdiA9ICZkZXYtPnByaXY7DQorCXN0cnVjdCBtbHg1X2Z3X2NyZHVt cCAqY3JkdW1wOw0KKwl1MzIgc3BhY2Vfc2l6ZTsNCisJaW50IHJldDsNCisNCisJaWYgKCFtbHg1 X2NvcmVfaXNfcGYoZGV2KSB8fCAhbWx4NV92c2NfYWNjZXNzaWJsZShkZXYpIHx8DQorCSAgICBt bHg1X2NyZHVtcF9lbmJhbGVkKGRldikpDQorCQlyZXR1cm4gMDsNCisNCisJcmV0ID0gbWx4NV92 c2NfZ3dfbG9jayhkZXYpOw0KKwlpZiAocmV0KQ0KKwkJcmV0dXJuIHJldDsNCisNCisJLyogQ2hl Y2sgaWYgc3BhY2UgaXMgc3VwcG9ydGVkIGFuZCBnZXQgc3BhY2Ugc2l6ZSAqLw0KKwlyZXQgPSBt bHg1X3ZzY19nd19zZXRfc3BhY2UoZGV2LCBNTFg1X1ZTQ19TUEFDRV9TQ0FOX0NSU1BBQ0UsDQor CQkJCSAgICAmc3BhY2Vfc2l6ZSk7DQorCWlmIChyZXQpIHsNCisJCS8qIFVubG9jayBhbmQgbWFz ayBlcnJvciBzaW5jZSBzcGFjZSBpcyBub3Qgc3VwcG9ydGVkICovDQorCQltbHg1X3ZzY19nd191 bmxvY2soZGV2KTsNCisJCXJldHVybiAwOw0KKwl9DQorDQorCWlmICghc3BhY2Vfc2l6ZSkgew0K KwkJbWx4NV9jb3JlX3dhcm4oZGV2LCAiSW52YWxpZCBDcnNwYWNlIHNpemUsIHplcm9cbiIpOw0K KwkJbWx4NV92c2NfZ3dfdW5sb2NrKGRldik7DQorCQlyZXR1cm4gLUVJTlZBTDsNCisJfQ0KKw0K KwlyZXQgPSBtbHg1X3ZzY19nd191bmxvY2soZGV2KTsNCisJaWYgKHJldCkNCisJCXJldHVybiBy ZXQ7DQorDQorCWNyZHVtcCA9IGt6YWxsb2Moc2l6ZW9mKCpjcmR1bXApLCBHRlBfS0VSTkVMKTsN CisJaWYgKCFjcmR1bXApDQorCQlyZXR1cm4gLUVOT01FTTsNCisNCisJLyogQ3JlYXRlIGNyLXNw YWNlIHJlZ2lvbiAqLw0KKwljcmR1bXAtPnNpemUgPSBzcGFjZV9zaXplOw0KKwljcmR1bXAtPnJl Z2lvbl9jcnNwYWNlID0NCisJCWRldmxpbmtfcmVnaW9uX2NyZWF0ZShkZXZsaW5rLA0KKwkJCQkg ICAgICByZWdpb25fY3Jfc3BhY2Vfc3RyLA0KKwkJCQkgICAgICBNQVhfTlVNX09GX0RVTVBTX1RP X1NUT1JFLA0KKwkJCQkgICAgICBzcGFjZV9zaXplKTsNCisJaWYgKElTX0VSUihjcmR1bXAtPnJl Z2lvbl9jcnNwYWNlKSkgew0KKwkJbWx4NV9jb3JlX3dhcm4oZGV2LA0KKwkJCSAgICAgICAiY3Jk dW1wOiBjcmVhdGUgZGV2bGluayByZWdpb24gJXMgZXJyICVsZFxuIiwNCisJCQkgICAgICAgcmVn aW9uX2NyX3NwYWNlX3N0ciwNCisJCQkgICAgICAgUFRSX0VSUihjcmR1bXAtPnJlZ2lvbl9jcnNw YWNlKSk7DQorCQlyZXQgPSBQVFJfRVJSKGNyZHVtcC0+cmVnaW9uX2Nyc3BhY2UpOw0KKwkJZ290 byBmcmVlX2NyZHVtcDsNCisJfQ0KKwlwcml2LT5oZWFsdGguY3JkdW1wID0gY3JkdW1wOw0KKwly ZXR1cm4gMDsNCisNCitmcmVlX2NyZHVtcDoNCisJa2ZyZWUoY3JkdW1wKTsNCisJcmV0dXJuIHJl dDsNCit9DQorDQordm9pZCBtbHg1X2NyZHVtcF9jbGVhbnVwKHN0cnVjdCBtbHg1X2NvcmVfZGV2 ICpkZXYpDQorew0KKwlzdHJ1Y3QgbWx4NV9wcml2ICpwcml2ID0gJmRldi0+cHJpdjsNCisJc3Ry dWN0IG1seDVfZndfY3JkdW1wICpjcmR1bXAgPSBwcml2LT5oZWFsdGguY3JkdW1wOw0KKw0KKwlp ZiAoIWNyZHVtcCkNCisJCXJldHVybjsNCisNCisJZGV2bGlua19yZWdpb25fZGVzdHJveShjcmR1 bXAtPnJlZ2lvbl9jcnNwYWNlKTsNCisJa2ZyZWUoY3JkdW1wKTsNCisJcHJpdi0+aGVhbHRoLmNy ZHVtcCA9IE5VTEw7DQorfQ0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L21lbGxh bm94L21seDUvY29yZS9oZWFsdGguYyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L21lbGxhbm94L21s eDUvY29yZS9oZWFsdGguYw0KaW5kZXggYTI2NTZmNDAwOGQ5Li45MGYzZGE2ZGE3ZjkgMTAwNjQ0 DQotLS0gYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9tZWxsYW5veC9tbHg1L2NvcmUvaGVhbHRoLmMN CisrKyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L21lbGxhbm94L21seDUvY29yZS9oZWFsdGguYw0K QEAgLTM4OCw2ICszODgsNyBAQCBpbnQgbWx4NV9oZWFsdGhfaW5pdChzdHJ1Y3QgbWx4NV9jb3Jl X2RldiAqZGV2KQ0KIAlzcGluX2xvY2tfaW5pdCgmaGVhbHRoLT53cV9sb2NrKTsNCiAJSU5JVF9X T1JLKCZoZWFsdGgtPndvcmssIGhlYWx0aF9jYXJlKTsNCiAJSU5JVF9ERUxBWUVEX1dPUksoJmhl YWx0aC0+cmVjb3Zlcl93b3JrLCBoZWFsdGhfcmVjb3Zlcik7DQorCWhlYWx0aC0+Y3JkdW1wID0g TlVMTDsNCiANCiAJcmV0dXJuIDA7DQogfQ0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2V0aGVy bmV0L21lbGxhbm94L21seDUvY29yZS9saWIvbWx4NS5oIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQv bWVsbGFub3gvbWx4NS9jb3JlL2xpYi9tbHg1LmgNCmluZGV4IDM5N2EyODQ3ODY3YS4uM2M5YTZk ZWRjY2FhIDEwMDY0NA0KLS0tIGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvbWVsbGFub3gvbWx4NS9j b3JlL2xpYi9tbHg1LmgNCisrKyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L21lbGxhbm94L21seDUv Y29yZS9saWIvbWx4NS5oDQpAQCAtNDEsNiArNDEsMTAgQEAgaW50ICBtbHg1X2NvcmVfcmVzZXJ2 ZV9naWRzKHN0cnVjdCBtbHg1X2NvcmVfZGV2ICpkZXYsIHVuc2lnbmVkIGludCBjb3VudCk7DQog dm9pZCBtbHg1X2NvcmVfdW5yZXNlcnZlX2dpZHMoc3RydWN0IG1seDVfY29yZV9kZXYgKmRldiwg dW5zaWduZWQgaW50IGNvdW50KTsNCiBpbnQgIG1seDVfY29yZV9yZXNlcnZlZF9naWRfYWxsb2Mo c3RydWN0IG1seDVfY29yZV9kZXYgKmRldiwgaW50ICpnaWRfaW5kZXgpOw0KIHZvaWQgbWx4NV9j b3JlX3Jlc2VydmVkX2dpZF9mcmVlKHN0cnVjdCBtbHg1X2NvcmVfZGV2ICpkZXYsIGludCBnaWRf aW5kZXgpOw0KK2ludCBtbHg1X2NyZHVtcF9pbml0KHN0cnVjdCBtbHg1X2NvcmVfZGV2ICpkZXYp Ow0KK3ZvaWQgbWx4NV9jcmR1bXBfY2xlYW51cChzdHJ1Y3QgbWx4NV9jb3JlX2RldiAqZGV2KTsN CitpbnQgbWx4NV9jcmR1bXBfY29sbGVjdChzdHJ1Y3QgbWx4NV9jb3JlX2RldiAqZGV2LA0KKwkJ CWNoYXIgKmNyZHVtcF9yZWdpb24sIHUzMiAqc25hcHNob3RfaWQpOw0KIA0KIC8qIFRPRE8gbW92 ZSB0byBsaWIvZXZlbnRzLmggKi8NCiANCmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9ldGhlcm5l dC9tZWxsYW5veC9tbHg1L2NvcmUvbWFpbi5jIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvbWVsbGFu b3gvbWx4NS9jb3JlL21haW4uYw0KaW5kZXggNjRlYjJhNTU4YjMwLi40M2Y1NDg3ZGU0YzMgMTAw NjQ0DQotLS0gYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9tZWxsYW5veC9tbHg1L2NvcmUvbWFpbi5j DQorKysgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9tZWxsYW5veC9tbHg1L2NvcmUvbWFpbi5jDQpA QCAtMTMyMCw2ICsxMzIwLDEwIEBAIHN0YXRpYyBpbnQgaW5pdF9vbmUoc3RydWN0IHBjaV9kZXYg KnBkZXYsIGNvbnN0IHN0cnVjdCBwY2lfZGV2aWNlX2lkICppZCkNCiAJaWYgKGVycikNCiAJCWdv dG8gY2xlYW5fbG9hZDsNCiANCisJZXJyID0gbWx4NV9jcmR1bXBfaW5pdChkZXYpOw0KKwlpZiAo ZXJyKQ0KKwkJZGV2X2VycigmcGRldi0+ZGV2LCAibWx4NV9jcmR1bXBfaW5pdCBmYWlsZWQgd2l0 aCBlcnJvciBjb2RlICVkXG4iLCBlcnIpOw0KKw0KIAlwY2lfc2F2ZV9zdGF0ZShwZGV2KTsNCiAJ cmV0dXJuIDA7DQogDQpAQCAtMTM0MSw2ICsxMzQ1LDcgQEAgc3RhdGljIHZvaWQgcmVtb3ZlX29u ZShzdHJ1Y3QgcGNpX2RldiAqcGRldikNCiAJc3RydWN0IG1seDVfY29yZV9kZXYgKmRldiAgPSBw Y2lfZ2V0X2RydmRhdGEocGRldik7DQogCXN0cnVjdCBkZXZsaW5rICpkZXZsaW5rID0gcHJpdl90 b19kZXZsaW5rKGRldik7DQogDQorCW1seDVfY3JkdW1wX2NsZWFudXAoZGV2KTsNCiAJbWx4NV9k ZXZsaW5rX3VucmVnaXN0ZXIoZGV2bGluayk7DQogCW1seDVfdW5yZWdpc3Rlcl9kZXZpY2UoZGV2 KTsNCiANCmRpZmYgLS1naXQgYS9pbmNsdWRlL2xpbnV4L21seDUvZHJpdmVyLmggYi9pbmNsdWRl L2xpbnV4L21seDUvZHJpdmVyLmgNCmluZGV4IDU2ZDBhMTE2ZjU3NS4uZGRmNmY0MWE3NWQzIDEw MDY0NA0KLS0tIGEvaW5jbHVkZS9saW51eC9tbHg1L2RyaXZlci5oDQorKysgYi9pbmNsdWRlL2xp bnV4L21seDUvZHJpdmVyLmgNCkBAIC01Myw2ICs1Myw3IEBADQogI2luY2x1ZGUgPGxpbnV4L21s eDUvZXEuaD4NCiAjaW5jbHVkZSA8bGludXgvdGltZWNvdW50ZXIuaD4NCiAjaW5jbHVkZSA8bGlu dXgvcHRwX2Nsb2NrX2tlcm5lbC5oPg0KKyNpbmNsdWRlIDxuZXQvZGV2bGluay5oPg0KIA0KIGVu dW0gew0KIAlNTFg1X0JPQVJEX0lEX0xFTiA9IDY0LA0KQEAgLTQyNyw2ICs0MjgsOCBAQCBzdHJ1 Y3QgbWx4NV9zcV9iZnJlZyB7DQogCXVuc2lnbmVkIGludAkJb2Zmc2V0Ow0KIH07DQogDQorc3Ry dWN0IG1seDVfZndfY3JkdW1wOw0KKw0KIHN0cnVjdCBtbHg1X2NvcmVfaGVhbHRoIHsNCiAJc3Ry dWN0IGhlYWx0aF9idWZmZXIgX19pb21lbSAgICpoZWFsdGg7DQogCV9fYmUzMiBfX2lvbWVtCQkg ICAgICAgKmhlYWx0aF9jb3VudGVyOw0KQEAgLTQ0MCw2ICs0NDMsNyBAQCBzdHJ1Y3QgbWx4NV9j b3JlX2hlYWx0aCB7DQogCXVuc2lnbmVkIGxvbmcJCQlmbGFnczsNCiAJc3RydWN0IHdvcmtfc3Ry dWN0CQl3b3JrOw0KIAlzdHJ1Y3QgZGVsYXllZF93b3JrCQlyZWNvdmVyX3dvcms7DQorCXN0cnVj dCBtbHg1X2Z3X2NyZHVtcAkgICAgICAgKmNyZHVtcDsNCiB9Ow0KIA0KIHN0cnVjdCBtbHg1X3Fw X3RhYmxlIHsNCi0tIA0KMi4yMC4xDQoNCg==