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=-6.8 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS autolearn=unavailable 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 5386FC2D0BF for ; Mon, 16 Dec 2019 17:08:08 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 07FCD20717 for ; Mon, 16 Dec 2019 17:08:08 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=silabs.onmicrosoft.com header.i=@silabs.onmicrosoft.com header.b="HiRVGMFs" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727388AbfLPRIA (ORCPT ); Mon, 16 Dec 2019 12:08:00 -0500 Received: from mail-eopbgr690050.outbound.protection.outlook.com ([40.107.69.50]:60371 "EHLO NAM04-CO1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1727921AbfLPRHB (ORCPT ); Mon, 16 Dec 2019 12:07:01 -0500 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cjucIwqwSv5DxsBhMg4UwutW5+0n8RBcwqGvecMbYBfl6J11pVCy24MSQoYExok+ZLngHyIJqkzbcsb5ch3jZePTC7rh7ihOG4gF8VM4SMKVuE1kYLIdIxHNvSf6g3KR1oWTptzGng07Y1+1e+NnIACzdILdtjw71taF+ogIiGogLxbrBwkUo7R1tt5Uu5M/Ps83zycUYL6vpBN+FHv7oywKscR5Nbwa1buU0KuEtSAy4jBpEohm+yNYogB0IojwBSquSxtMU2mGeH4wDariENF1DPyv0vQ5GxYBzrV3D42IUrv0bHPskNhlEKbP3bo2QwnwpIxzVF8jzg5EpY/A1g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=RhN3xqLr7QZVoPelzDVEVQqUfTpqUW4aCj/pJsY6Vv8=; b=lmBRZ0B1rGUxChs00q9sObUT1BIno1oSAEGBZdQavDyQ8fPeSAbyFvNQJVbBe63MogQ11sUfVxg1dvyqAvs413nEA9pUIvZNkHDM8H9WC/Iqd9OQyabZxmScjF8EuP83mYQvJlC4esxekU+WhXdW+BY+o/w9JmkAMwegMyxFJYjbyts8tLFvVe5+ofbha6HnhGfVBxPXO2x1wmcxAtAVUjNytQ8Z1CuuSBbygTYe0TYZKNmdDUbY9p15b51L0bwwIs1Gg876Nt0pgSXHTPxv5ZluD9t4awP3wcPQAGegETdabBeQ4vPZ8mVQoSXL44HNV7u2LapM5MdG69MVXEbe1Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=silabs.com; dmarc=pass action=none header.from=silabs.com; dkim=pass header.d=silabs.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=silabs.onmicrosoft.com; s=selector2-silabs-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=RhN3xqLr7QZVoPelzDVEVQqUfTpqUW4aCj/pJsY6Vv8=; b=HiRVGMFsZK55MwlaXPEvy2SXcvyX5rBX99+p96IxleR0K7M8Q1AjRPP9d6Qd1fzA1fIEsyoKvvIZxVRfT2Ie7VgeeGleGgOF1SWh62kU2EjdmMh+Zcj7il3LWZ2J7gl/LjOmO+VAFz9tOIJQt9IE5Yur7r5jLyYsXWUZt/6VZGk= Received: from MN2PR11MB4063.namprd11.prod.outlook.com (10.255.180.22) by MN2PR11MB4142.namprd11.prod.outlook.com (20.179.149.157) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2538.15; Mon, 16 Dec 2019 17:06:47 +0000 Received: from MN2PR11MB4063.namprd11.prod.outlook.com ([fe80::f46c:e5b4:2a85:f0bf]) by MN2PR11MB4063.namprd11.prod.outlook.com ([fe80::f46c:e5b4:2a85:f0bf%4]) with mapi id 15.20.2538.019; Mon, 16 Dec 2019 17:06:47 +0000 From: =?utf-8?B?SsOpcsO0bWUgUG91aWxsZXI=?= To: "devel@driverdev.osuosl.org" , "linux-wireless@vger.kernel.org" CC: "netdev@vger.kernel.org" , "linux-kernel@vger.kernel.org" , Greg Kroah-Hartman , Kalle Valo , "David S . Miller" , =?utf-8?B?SsOpcsO0bWUgUG91aWxsZXI=?= Subject: [PATCH 47/55] staging: wfx: simplify hif_scan() usage Thread-Topic: [PATCH 47/55] staging: wfx: simplify hif_scan() usage Thread-Index: AQHVtDLOS4hL5/XbCk+O1nbCKaetEA== Date: Mon, 16 Dec 2019 17:03:57 +0000 Message-ID: <20191216170302.29543-48-Jerome.Pouiller@silabs.com> References: <20191216170302.29543-1-Jerome.Pouiller@silabs.com> In-Reply-To: <20191216170302.29543-1-Jerome.Pouiller@silabs.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=Jerome.Pouiller@silabs.com; x-originating-ip: [37.71.187.125] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 203b5eab-171b-4093-db70-08d7824a5592 x-ms-traffictypediagnostic: MN2PR11MB4142: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:7691; x-forefront-prvs: 02530BD3AA x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(366004)(396003)(346002)(136003)(376002)(39850400004)(199004)(189003)(6512007)(71200400001)(91956017)(6486002)(8676002)(2906002)(54906003)(81166006)(81156014)(186003)(76116006)(478600001)(36756003)(85182001)(85202003)(6666004)(66556008)(66476007)(66446008)(64756008)(1076003)(66574012)(316002)(2616005)(4326008)(6506007)(26005)(8936002)(110136005)(5660300002)(107886003)(66946007)(86362001);DIR:OUT;SFP:1101;SCL:1;SRVR:MN2PR11MB4142;H:MN2PR11MB4063.namprd11.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;A:1;MX:1; received-spf: None (protection.outlook.com: silabs.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: Yo50UGvrRB2053Y0W97FO+gOES6cJbs3Q/tfnO0tkrIbIaSmNEdqPfdfJvkBx0I1YIkEkY7JTugHpBejc8KODs5lTjJU42ew95z6M7whqvA49zvnBqIn0bq6tPqS8R5ujz8yzclZDLSABRvKDJY27olKTKEvt8woO4d5ZlPEcbG1lLkhWKx+wJcuuij/3d+Lmpy3H/B746s/FZ5mhi/MRnu47WNz0tixCvME6898tNphqrbwXOLNco2uUb8sgyRKacyiYGB5v5e6UFRl2bHNE36NuRoaArL124p7bgAIhSEOpv+qSrHdZgJaZo5YiZrpDl7spOagh89fKtdTx5tcczMHGm64XZDWaeJJGAB+vU/LXRupL4Vqe0L+29WYyYJB3I1wZQfE6VWuu0N8wfD/r9HqqPqQdHwXuXRIDyQCBnNy9uQNk46AI48wL/7HJfeg Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: silabs.com X-MS-Exchange-CrossTenant-Network-Message-Id: 203b5eab-171b-4093-db70-08d7824a5592 X-MS-Exchange-CrossTenant-originalarrivaltime: 16 Dec 2019 17:03:57.5613 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 54dbd822-5231-4b20-944d-6f4abcd541fb X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 7OwBqKTNCvKXcpiIAbkwuQ7rEu5wgJL5by8jQ7Bkah1QRpMBc2o1xmmS1ppSvF5VeGBsgqz5eZLlA7vC6UtqMw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR11MB4142 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org RnJvbTogSsOpcsO0bWUgUG91aWxsZXIgPGplcm9tZS5wb3VpbGxlckBzaWxhYnMuY29tPg0KDQpU aGUgc3RydWN0dXJlcyBoaWZfcmVxX3N0YXJ0X3NjYW4gYW5kIGhpZl9zc2lkX2RlZiBjb21lIGZy b20gaGFyZHdhcmUNCkFQSS4gSXQgaXMgbm90IGludGVuZGVkIHRvIGJlIG1hbmlwdWxhdGVkIGlu IHVwcGVyIGxheWVycyBvZiB0aGUgZHJpdmVyLg0KDQpTbywgdGhpcyBwYXRjaCByZWxvY2F0ZSBo YW5kbGluZyBvZiB0aGVzZXMgc3RydWN0dXJlcyB0byBoaWZfc2NhbigpDQoodGhlIGxvdyBsZXZl bCBmdW5jdGlvbikuIFRoaXMgY2hhbmdlIGFsc28gYWxsb3dzIHRvIGRyb3Agc3RydWN0DQp3Znhf c2Nhbl9wYXJhbXMuDQoNClNpZ25lZC1vZmYtYnk6IErDqXLDtG1lIFBvdWlsbGVyIDxqZXJvbWUu cG91aWxsZXJAc2lsYWJzLmNvbT4NCi0tLQ0KIGRyaXZlcnMvc3RhZ2luZy93ZngvaGlmX3R4LmMg fCA3MiArKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0NCiBkcml2ZXJzL3N0YWdp bmcvd2Z4L2hpZl90eC5oIHwgMTAgKystLS0NCiBkcml2ZXJzL3N0YWdpbmcvd2Z4L3NjYW4uYyAg IHwgNTQgKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQogZHJpdmVycy9zdGFnaW5nL3dmeC93 ZnguaCAgICB8ICAxICsNCiA0IGZpbGVzIGNoYW5nZWQsIDU3IGluc2VydGlvbnMoKyksIDgwIGRl bGV0aW9ucygtKQ0KDQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9zdGFnaW5nL3dmeC9oaWZfdHguYyBi L2RyaXZlcnMvc3RhZ2luZy93ZngvaGlmX3R4LmMNCmluZGV4IDI1OWI0OWI5OTA5OC4uOGEzNGE1 MmRkNWI5IDEwMDY0NA0KLS0tIGEvZHJpdmVycy9zdGFnaW5nL3dmeC9oaWZfdHguYw0KKysrIGIv ZHJpdmVycy9zdGFnaW5nL3dmeC9oaWZfdHguYw0KQEAgLTIyMCw0MSArMjIwLDU5IEBAIGludCBo aWZfd3JpdGVfbWliKHN0cnVjdCB3ZnhfZGV2ICp3ZGV2LCBpbnQgdmlmX2lkLCB1MTYgbWliX2lk LCB2b2lkICp2YWwsDQogCXJldHVybiByZXQ7DQogfQ0KIA0KLWludCBoaWZfc2NhbihzdHJ1Y3Qg d2Z4X3ZpZiAqd3ZpZiwgY29uc3Qgc3RydWN0IHdmeF9zY2FuX3BhcmFtcyAqYXJnKQ0KK2ludCBo aWZfc2NhbihzdHJ1Y3Qgd2Z4X3ZpZiAqd3ZpZiwgc3RydWN0IGNmZzgwMjExX3NjYW5fcmVxdWVz dCAqcmVxLA0KKwkgICAgIGludCBjaGFuX3N0YXJ0X2lkeCwgaW50IGNoYW5fbnVtKQ0KIHsNCiAJ aW50IHJldCwgaTsNCiAJc3RydWN0IGhpZl9tc2cgKmhpZjsNCi0Jc3RydWN0IGhpZl9zc2lkX2Rl ZiAqc3NpZHM7DQotCXNpemVfdCBidWZfbGVuID0gc2l6ZW9mKHN0cnVjdCBoaWZfcmVxX3N0YXJ0 X3NjYW4pICsNCi0JCWFyZy0+c2Nhbl9yZXEubnVtX29mX2NoYW5uZWxzICogc2l6ZW9mKHU4KSAr DQotCQlhcmctPnNjYW5fcmVxLm51bV9vZl9zc2lkcyAqIHNpemVvZihzdHJ1Y3QgaGlmX3NzaWRf ZGVmKTsNCi0Jc3RydWN0IGhpZl9yZXFfc3RhcnRfc2NhbiAqYm9keSA9IHdmeF9hbGxvY19oaWYo YnVmX2xlbiwgJmhpZik7DQotCXU4ICpwdHIgPSAodTggKikgYm9keSArIHNpemVvZigqYm9keSk7 DQorCXNpemVfdCBidWZfbGVuID0NCisJCXNpemVvZihzdHJ1Y3QgaGlmX3JlcV9zdGFydF9zY2Fu X2FsdCkgKyBjaGFuX251bSAqIHNpemVvZih1OCk7DQorCXN0cnVjdCBoaWZfcmVxX3N0YXJ0X3Nj YW5fYWx0ICpib2R5ID0gd2Z4X2FsbG9jX2hpZihidWZfbGVuLCAmaGlmKTsNCisJaW50IHRtb19j aGFuX2ZnLCB0bW9fY2hhbl9iZywgdG1vOw0KIA0KLQlXQVJOKGFyZy0+c2Nhbl9yZXEubnVtX29m X2NoYW5uZWxzID4gSElGX0FQSV9NQVhfTkJfQ0hBTk5FTFMsICJpbnZhbGlkIHBhcmFtcyIpOw0K LQlXQVJOKGFyZy0+c2Nhbl9yZXEubnVtX29mX3NzaWRzID4gMiwgImludmFsaWQgcGFyYW1zIik7 DQotCVdBUk4oYXJnLT5zY2FuX3JlcS5iYW5kID4gMSwgImludmFsaWQgcGFyYW1zIik7DQorCVdB Uk4oY2hhbl9udW0gPiBISUZfQVBJX01BWF9OQl9DSEFOTkVMUywgImludmFsaWQgcGFyYW1zIik7 DQorCVdBUk4ocmVxLT5uX3NzaWRzID4gSElGX0FQSV9NQVhfTkJfU1NJRFMsICJpbnZhbGlkIHBh cmFtcyIpOw0KKw0KKwljb21waWxldGltZV9hc3NlcnQoSUVFRTgwMjExX01BWF9TU0lEX0xFTiA9 PSBISUZfQVBJX1NTSURfU0laRSwNCisJCQkgICAiQVBJIGluY29uc2lzdGVuY3kiKTsNCisJZm9y IChpID0gMDsgaSA8IHJlcS0+bl9zc2lkczsgaSsrKSB7DQorCQltZW1jcHkoYm9keS0+c3NpZF9k ZWZbaV0uc3NpZCwgcmVxLT5zc2lkc1tpXS5zc2lkLA0KKwkJICAgICAgIElFRUU4MDIxMV9NQVhf U1NJRF9MRU4pOw0KKwkJYm9keS0+c3NpZF9kZWZbaV0uc3NpZF9sZW5ndGggPQ0KKwkJCWNwdV90 b19sZTMyKHJlcS0+c3NpZHNbaV0uc3NpZF9sZW4pOw0KKwl9DQorCWJvZHktPm51bV9vZl9zc2lk cyA9IEhJRl9BUElfTUFYX05CX1NTSURTOw0KKwkvLyBCYWNrZ3JvdW5kIHNjYW4gaXMgYWx3YXlz IGEgZ29vZCBpZGVhDQorCWJvZHktPnNjYW5fdHlwZS50eXBlID0gMTsNCisJYm9keS0+c2Nhbl9m bGFncy5mYmcgPSAxOw0KKwlib2R5LT50eF9wb3dlcl9sZXZlbCA9DQorCQljcHVfdG9fbGUzMihy ZXEtPmNoYW5uZWxzW2NoYW5fc3RhcnRfaWR4XS0+bWF4X3Bvd2VyKTsNCisJYm9keS0+bnVtX29m X2NoYW5uZWxzID0gY2hhbl9udW07DQorCWZvciAoaSA9IDA7IGkgPCBjaGFuX251bTsgaSsrKQ0K KwkJYm9keS0+Y2hhbm5lbF9saXN0W2ldID0NCisJCQlyZXEtPmNoYW5uZWxzW2kgKyBjaGFuX3N0 YXJ0X2lkeF0tPmh3X3ZhbHVlOw0KKwlpZiAocmVxLT5ub19jY2spDQorCQlib2R5LT5tYXhfdHJh bnNtaXRfcmF0ZSA9IEFQSV9SQVRFX0lOREVYX0dfNk1CUFM7DQorCWVsc2UNCisJCWJvZHktPm1h eF90cmFuc21pdF9yYXRlID0gQVBJX1JBVEVfSU5ERVhfQl8xTUJQUzsNCisJaWYgKHJlcS0+Y2hh bm5lbHNbY2hhbl9zdGFydF9pZHhdLT5mbGFncyAmIElFRUU4MDIxMV9DSEFOX05PX0lSKSB7DQor CQlib2R5LT5taW5fY2hhbm5lbF90aW1lID0gY3B1X3RvX2xlMzIoNTApOw0KKwkJYm9keS0+bWF4 X2NoYW5uZWxfdGltZSA9IGNwdV90b19sZTMyKDE1MCk7DQorCX0gZWxzZSB7DQorCQlib2R5LT5t aW5fY2hhbm5lbF90aW1lID0gY3B1X3RvX2xlMzIoMTApOw0KKwkJYm9keS0+bWF4X2NoYW5uZWxf dGltZSA9IGNwdV90b19sZTMyKDUwKTsNCisJCWJvZHktPm51bV9vZl9wcm9iZV9yZXF1ZXN0cyA9 IDI7DQorCQlib2R5LT5wcm9iZV9kZWxheSA9IDEwMDsNCisJfQ0KKwl0bW9fY2hhbl9iZyA9IGxl MzJfdG9fY3B1KGJvZHktPm1heF9jaGFubmVsX3RpbWUpICogVVNFQ19QRVJfVFU7DQorCXRtb19j aGFuX2ZnID0gNTEyICogVVNFQ19QRVJfVFUgKyBib2R5LT5wcm9iZV9kZWxheTsNCisJdG1vX2No YW5fZmcgKj0gYm9keS0+bnVtX29mX3Byb2JlX3JlcXVlc3RzOw0KKwl0bW8gPSBjaGFuX251bSAq IG1heCh0bW9fY2hhbl9iZywgdG1vX2NoYW5fZmcpOw0KIA0KLQkvLyBGSVhNRTogVGhpcyBBUEkg aXMgdW5uZWNlc3NhcnkgY29tcGxleCwgZml4aW5nIE51bU9mQ2hhbm5lbHMgYW5kDQotCS8vIGFk ZGluZyBhIG1lbWJlciBTc2lkRGVmIGF0IGVuZCBvZiBzdHJ1Y3QgaGlmX3JlcV9zdGFydF9zY2Fu IHdvdWxkDQotCS8vIHNpbXBsaWZ5IHRoYXQgYSBsb3QuDQotCW1lbWNweShib2R5LCAmYXJnLT5z Y2FuX3JlcSwgc2l6ZW9mKCpib2R5KSk7DQotCWNwdV90b19sZTMycygmYm9keS0+bWluX2NoYW5u ZWxfdGltZSk7DQotCWNwdV90b19sZTMycygmYm9keS0+bWF4X2NoYW5uZWxfdGltZSk7DQotCWNw dV90b19sZTMycygmYm9keS0+dHhfcG93ZXJfbGV2ZWwpOw0KLQltZW1jcHkocHRyLCBhcmctPnNz aWRzLA0KLQkgICAgICAgYXJnLT5zY2FuX3JlcS5udW1fb2Zfc3NpZHMgKiBzaXplb2Yoc3RydWN0 IGhpZl9zc2lkX2RlZikpOw0KLQlzc2lkcyA9IChzdHJ1Y3QgaGlmX3NzaWRfZGVmICopIHB0cjsN Ci0JZm9yIChpID0gMDsgaSA8IGJvZHktPm51bV9vZl9zc2lkczsgKytpKQ0KLQkJY3B1X3RvX2xl MzJzKCZzc2lkc1tpXS5zc2lkX2xlbmd0aCk7DQotCXB0ciArPSBhcmctPnNjYW5fcmVxLm51bV9v Zl9zc2lkcyAqIHNpemVvZihzdHJ1Y3QgaGlmX3NzaWRfZGVmKTsNCi0JbWVtY3B5KHB0ciwgYXJn LT5jaCwgYXJnLT5zY2FuX3JlcS5udW1fb2ZfY2hhbm5lbHMgKiBzaXplb2YodTgpKTsNCi0JcHRy ICs9IGFyZy0+c2Nhbl9yZXEubnVtX29mX2NoYW5uZWxzICogc2l6ZW9mKHU4KTsNCi0JV0FSTihi dWZfbGVuICE9IHB0ciAtICh1OCAqKSBib2R5LCAiYWxsb2NhdGlvbiBzaXplIG1pc21hdGNoIik7 DQogCXdmeF9maWxsX2hlYWRlcihoaWYsIHd2aWYtPmlkLCBISUZfUkVRX0lEX1NUQVJUX1NDQU4s IGJ1Zl9sZW4pOw0KIAlyZXQgPSB3ZnhfY21kX3NlbmQod3ZpZi0+d2RldiwgaGlmLCBOVUxMLCAw LCBmYWxzZSk7DQogCWtmcmVlKGhpZik7DQotCXJldHVybiByZXQ7DQorCXJldHVybiByZXQgPyBy ZXQgOiB1c2Vjc190b19qaWZmaWVzKHRtbyk7DQogfQ0KIA0KIGludCBoaWZfc3RvcF9zY2FuKHN0 cnVjdCB3ZnhfdmlmICp3dmlmKQ0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvc3RhZ2luZy93ZngvaGlm X3R4LmggYi9kcml2ZXJzL3N0YWdpbmcvd2Z4L2hpZl90eC5oDQppbmRleCBkODgwMTk0MjFmYmMu LmU4ODU1ZWFkM2ExOCAxMDA2NDQNCi0tLSBhL2RyaXZlcnMvc3RhZ2luZy93ZngvaGlmX3R4LmgN CisrKyBiL2RyaXZlcnMvc3RhZ2luZy93ZngvaGlmX3R4LmgNCkBAIC0xMywxNSArMTMsMTAgQEAN CiAjaW5jbHVkZSAiaGlmX2FwaV9jbWQuaCINCiANCiBzdHJ1Y3QgaWVlZTgwMjExX3R4X3F1ZXVl X3BhcmFtczsNCitzdHJ1Y3QgY2ZnODAyMTFfc2Nhbl9yZXF1ZXN0Ow0KIHN0cnVjdCB3ZnhfZGV2 Ow0KIHN0cnVjdCB3ZnhfdmlmOw0KIA0KLXN0cnVjdCB3Znhfc2Nhbl9wYXJhbXMgew0KLQlzdHJ1 Y3QgaGlmX3JlcV9zdGFydF9zY2FuIHNjYW5fcmVxOw0KLQlzdHJ1Y3QgaGlmX3NzaWRfZGVmICpz c2lkczsNCi0JdTggKmNoOw0KLX07DQotDQogc3RydWN0IHdmeF9oaWZfY21kIHsNCiAJc3RydWN0 IG11dGV4ICAgICAgbG9jazsNCiAJc3RydWN0IG11dGV4ICAgICAga2V5X3JlbmV3X2xvY2s7DQpA QCAtNDUsNyArNDAsOCBAQCBpbnQgaGlmX3JlYWRfbWliKHN0cnVjdCB3ZnhfZGV2ICp3ZGV2LCBp bnQgdmlmX2lkLCB1MTYgbWliX2lkLA0KIAkJIHZvaWQgKmJ1Ziwgc2l6ZV90IGJ1Zl9zaXplKTsN CiBpbnQgaGlmX3dyaXRlX21pYihzdHJ1Y3Qgd2Z4X2RldiAqd2RldiwgaW50IHZpZl9pZCwgdTE2 IG1pYl9pZCwNCiAJCSAgdm9pZCAqYnVmLCBzaXplX3QgYnVmX3NpemUpOw0KLWludCBoaWZfc2Nh bihzdHJ1Y3Qgd2Z4X3ZpZiAqd3ZpZiwgY29uc3Qgc3RydWN0IHdmeF9zY2FuX3BhcmFtcyAqYXJn KTsNCitpbnQgaGlmX3NjYW4oc3RydWN0IHdmeF92aWYgKnd2aWYsIHN0cnVjdCBjZmc4MDIxMV9z Y2FuX3JlcXVlc3QgKnJlcTgwMjExLA0KKwkgICAgIGludCBjaGFuX3N0YXJ0LCBpbnQgY2hhbl9u dW0pOw0KIGludCBoaWZfc3RvcF9zY2FuKHN0cnVjdCB3ZnhfdmlmICp3dmlmKTsNCiBpbnQgaGlm X2pvaW4oc3RydWN0IHdmeF92aWYgKnd2aWYsIGNvbnN0IHN0cnVjdCBoaWZfcmVxX2pvaW4gKmFy Zyk7DQogaW50IGhpZl9zZXRfcG0oc3RydWN0IHdmeF92aWYgKnd2aWYsIGJvb2wgcHMsIGludCBk eW5hbWljX3BzX3RpbWVvdXQpOw0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvc3RhZ2luZy93Zngvc2Nh bi5jIGIvZHJpdmVycy9zdGFnaW5nL3dmeC9zY2FuLmMNCmluZGV4IGMwNDNmMmY3OTU0MS4uMTIy ZGE4N2JiZjkyIDEwMDY0NA0KLS0tIGEvZHJpdmVycy9zdGFnaW5nL3dmeC9zY2FuLmMNCisrKyBi L2RyaXZlcnMvc3RhZ2luZy93Zngvc2Nhbi5jDQpAQCAtMzQsMTkgKzM0LDE4IEBAIHN0YXRpYyB2 b2lkIHdmeF9zY2FuX3Jlc3RhcnRfZGVsYXllZChzdHJ1Y3Qgd2Z4X3ZpZiAqd3ZpZikNCiAJfQ0K IH0NCiANCi1zdGF0aWMgaW50IHdmeF9zY2FuX3N0YXJ0KHN0cnVjdCB3ZnhfdmlmICp3dmlmLCBz dHJ1Y3Qgd2Z4X3NjYW5fcGFyYW1zICpzY2FuKQ0KK3N0YXRpYyBpbnQgd2Z4X3NjYW5fc3RhcnQo c3RydWN0IHdmeF92aWYgKnd2aWYsDQorCQkJICBpbnQgY2hhbl9zdGFydF9pZHgsIGludCBjaGFu X251bSkNCiB7DQotCWludCB0bW8gPSA1MDA7DQorCWludCB0bW87DQogDQogCWlmICh3dmlmLT5z dGF0ZSA9PSBXRlhfU1RBVEVfUFJFX1NUQSkNCiAJCXJldHVybiAtRUJVU1k7DQogDQotCXRtbyAr PSBzY2FuLT5zY2FuX3JlcS5udW1fb2ZfY2hhbm5lbHMgKg0KLQkgICAgICAgKCgyMCAqIChzY2Fu LT5zY2FuX3JlcS5tYXhfY2hhbm5lbF90aW1lKSkgKyAxMCk7DQogCWF0b21pY19zZXQoJnd2aWYt PnNjYW4uaW5fcHJvZ3Jlc3MsIDEpOw0KIA0KLQlzY2hlZHVsZV9kZWxheWVkX3dvcmsoJnd2aWYt PnNjYW4udGltZW91dCwgbXNlY3NfdG9famlmZmllcyh0bW8pKTsNCi0JaGlmX3NjYW4od3ZpZiwg c2Nhbik7DQorCXRtbyA9IGhpZl9zY2FuKHd2aWYsIHd2aWYtPnNjYW4ucmVxLCBjaGFuX3N0YXJ0 X2lkeCwgY2hhbl9udW0pOw0KKwlzY2hlZHVsZV9kZWxheWVkX3dvcmsoJnd2aWYtPnNjYW4udGlt ZW91dCwgdG1vKTsNCiAJcmV0dXJuIDA7DQogfQ0KIA0KQEAgLTEyOCw5ICsxMjcsNiBAQCB2b2lk IHdmeF9zY2FuX3dvcmsoc3RydWN0IHdvcmtfc3RydWN0ICp3b3JrKQ0KIHsNCiAJc3RydWN0IHdm eF92aWYgKnd2aWYgPSBjb250YWluZXJfb2Yod29yaywgc3RydWN0IHdmeF92aWYsIHNjYW4ud29y ayk7DQogCXN0cnVjdCBpZWVlODAyMTFfY2hhbm5lbCAqKml0Ow0KLQlzdHJ1Y3Qgd2Z4X3NjYW5f cGFyYW1zIHNjYW4gPSB7DQotCQkuc2Nhbl9yZXEuc2Nhbl90eXBlLnR5cGUgPSAwLCAgICAvKiBG b3JlZ3JvdW5kICovDQotCX07DQogCXN0cnVjdCBpZWVlODAyMTFfY2hhbm5lbCAqZmlyc3Q7DQog CWludCBpOw0KIA0KQEAgLTE3Myw0OCArMTY5LDE0IEBAIHZvaWQgd2Z4X3NjYW5fd29yayhzdHJ1 Y3Qgd29ya19zdHJ1Y3QgKndvcmspDQogCQkgICAgKCppdCktPm1heF9wb3dlciAhPSBmaXJzdC0+ bWF4X3Bvd2VyKQ0KIAkJCWJyZWFrOw0KIAl9DQotCXNjYW4uc2Nhbl9yZXEuYmFuZCA9IGZpcnN0 LT5iYW5kOw0KLQ0KLQlpZiAod3ZpZi0+c2Nhbi5yZXEtPm5vX2NjaykNCi0JCXNjYW4uc2Nhbl9y ZXEubWF4X3RyYW5zbWl0X3JhdGUgPSBBUElfUkFURV9JTkRFWF9HXzZNQlBTOw0KLQllbHNlDQot CQlzY2FuLnNjYW5fcmVxLm1heF90cmFuc21pdF9yYXRlID0gQVBJX1JBVEVfSU5ERVhfQl8xTUJQ UzsNCi0Jc2Nhbi5zY2FuX3JlcS5udW1fb2ZfcHJvYmVfcmVxdWVzdHMgPQ0KLQkJKGZpcnN0LT5m bGFncyAmIElFRUU4MDIxMV9DSEFOX05PX0lSKSA/IDAgOiAyOw0KLQlzY2FuLnNjYW5fcmVxLm51 bV9vZl9zc2lkcyA9IHd2aWYtPnNjYW4ubl9zc2lkczsNCi0Jc2Nhbi5zc2lkcyA9ICZ3dmlmLT5z Y2FuLnNzaWRzWzBdOw0KLQlzY2FuLnNjYW5fcmVxLm51bV9vZl9jaGFubmVscyA9IGl0IC0gd3Zp Zi0+c2Nhbi5jdXJyOw0KLQlzY2FuLnNjYW5fcmVxLnByb2JlX2RlbGF5ID0gMTAwOw0KLQkvLyBG SVhNRTogQ2hlY2sgaWYgRlcgY2FuIGRvIGFjdGl2ZSBzY2FuIHdoaWxlIGpvaW5lZC4NCi0JaWYg KHd2aWYtPnN0YXRlID09IFdGWF9TVEFURV9TVEEpIHsNCi0JCXNjYW4uc2Nhbl9yZXEuc2Nhbl90 eXBlLnR5cGUgPSAxOw0KLQkJc2Nhbi5zY2FuX3JlcS5zY2FuX2ZsYWdzLmZiZyA9IDE7DQotCX0N Ci0NCi0Jc2Nhbi5jaCA9IGtjYWxsb2Moc2Nhbi5zY2FuX3JlcS5udW1fb2ZfY2hhbm5lbHMsDQot CQkJICBzaXplb2YodTgpLCBHRlBfS0VSTkVMKTsNCi0NCi0JaWYgKCFzY2FuLmNoKSB7DQotCQl3 dmlmLT5zY2FuLnN0YXR1cyA9IC1FTk9NRU07DQotCQlnb3RvIGZhaWw7DQotCX0NCi0JZm9yIChp ID0gMDsgaSA8IHNjYW4uc2Nhbl9yZXEubnVtX29mX2NoYW5uZWxzOyArK2kpDQotCQlzY2FuLmNo W2ldID0gd3ZpZi0+c2Nhbi5jdXJyW2ldLT5od192YWx1ZTsNCi0NCi0JaWYgKHd2aWYtPnNjYW4u Y3VyclswXS0+ZmxhZ3MgJiBJRUVFODAyMTFfQ0hBTl9OT19JUikgew0KLQkJc2Nhbi5zY2FuX3Jl cS5taW5fY2hhbm5lbF90aW1lID0gNTA7DQotCQlzY2FuLnNjYW5fcmVxLm1heF9jaGFubmVsX3Rp bWUgPSAxNTA7DQotCX0gZWxzZSB7DQotCQlzY2FuLnNjYW5fcmVxLm1pbl9jaGFubmVsX3RpbWUg PSAxMDsNCi0JCXNjYW4uc2Nhbl9yZXEubWF4X2NoYW5uZWxfdGltZSA9IDUwOw0KLQl9DQogCWlm ICghKGZpcnN0LT5mbGFncyAmIElFRUU4MDIxMV9DSEFOX05PX0lSKSAmJg0KIAkgICAgd3ZpZi0+ c2Nhbi5vdXRwdXRfcG93ZXIgIT0gZmlyc3QtPm1heF9wb3dlcikgew0KIAkJd3ZpZi0+c2Nhbi5v dXRwdXRfcG93ZXIgPSBmaXJzdC0+bWF4X3Bvd2VyOw0KIAkJaGlmX3NldF9vdXRwdXRfcG93ZXIo d3ZpZiwgd3ZpZi0+c2Nhbi5vdXRwdXRfcG93ZXIgKiAxMCk7DQogCX0NCi0Jd3ZpZi0+c2Nhbi5z dGF0dXMgPSB3Znhfc2Nhbl9zdGFydCh3dmlmLCAmc2Nhbik7DQotCWtmcmVlKHNjYW4uY2gpOw0K Kwl3dmlmLT5zY2FuLnN0YXR1cyA9IHdmeF9zY2FuX3N0YXJ0KHd2aWYsDQorCQkJCQkgICB3dmlm LT5zY2FuLmN1cnIgLSB3dmlmLT5zY2FuLmJlZ2luLA0KKwkJCQkJICAgaXQgLSB3dmlmLT5zY2Fu LmN1cnIpOw0KIAlpZiAod3ZpZi0+c2Nhbi5zdGF0dXMpDQogCQlnb3RvIGZhaWw7DQogCXd2aWYt PnNjYW4uY3VyciA9IGl0Ow0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvc3RhZ2luZy93Zngvd2Z4Lmgg Yi9kcml2ZXJzL3N0YWdpbmcvd2Z4L3dmeC5oDQppbmRleCA5NzM3M2QwNDdmNTguLjM1ZjVkZGMy ZWViMyAxMDA2NDQNCi0tLSBhL2RyaXZlcnMvc3RhZ2luZy93Zngvd2Z4LmgNCisrKyBiL2RyaXZl cnMvc3RhZ2luZy93Zngvd2Z4LmgNCkBAIC0yNyw2ICsyNyw3IEBADQogI2luY2x1ZGUgImhpZl9h cGlfZ2VuZXJhbC5oIg0KIA0KICNkZWZpbmUgVVNFQ19QRVJfVFhPUCAzMiAvLyBzZWUgc3RydWN0 IGllZWU4MDIxMV90eF9xdWV1ZV9wYXJhbXMNCisjZGVmaW5lIFVTRUNfUEVSX1RVIDEwMjQNCiAN CiBzdHJ1Y3QgaHdidXNfb3BzOw0KIA0KLS0gDQoyLjIwLjENCg==