Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp1241024imu; Wed, 28 Nov 2018 06:45:54 -0800 (PST) X-Google-Smtp-Source: AFSGD/WSZ4s6KDtk73PHme4ye1y9YpvmcYUNTcWeMVyLkAFVQZ1l5dQvSsKmj6+gUDCOFouEOVzq X-Received: by 2002:a17:902:2c03:: with SMTP id m3mr37779202plb.125.1543416354285; Wed, 28 Nov 2018 06:45:54 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1543416354; cv=none; d=google.com; s=arc-20160816; b=lq+UuQ3Jl0E+wmL0rPgymnd6kbzwZ6V6Fe/L8PfoQfgn/4/oY4tbijHdEreZ7pLZoR Q9juKYVgHOiN1PFALPVSS4OnvBwhWVGMVhc5gK5e2BAUm/8HlZSkpnQLh6P7ZHhwhJCx TVN3/pc36ZRDgMf4Fs7FT8PWNDeFfFBCkbHLSXBffH3vXoBCNqfdZajZAPTcMUk+IpOz TKH3VX06BxZxWG2DrOfxxlHcugG7lxH4b/18lZzy07QhyzT1qOgd/aISSIQdLhQn2cMS Yos6MyJ5LLhvz/zH+bc4VBh6zA2hm6N9hyLc6nm7gjE9g8qKdoCVE9qRT1XTFhuY8eFp XICQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:content-transfer-encoding :content-id:spamdiagnosticmetadata:spamdiagnosticoutput :content-language:accept-language:in-reply-to:references:message-id :date:thread-index:thread-topic:subject:cc:to:from:dkim-signature; bh=TYHCRlEizg5103RwzZTClabwWKofx1bNw4wZzNMVTmg=; b=YLHWQL0uH2hXBfhqWKNWQzeseVrytFzh5u1FXIOXyUqo+t16dv5NsKkw+WVCMDFzZv 3OwCWePc4D20a3OaYdWd/yKxe2BTSmv3CZpksYSQ7wu7C/AI9HdfC7g3gka2j7XX8xw+ hAxWytmk5wshkV+MR54s9fvNqpuHQj1vGi3UtLRxTlD5ElMnuTEC426B73QgG/caMwtO W5vyNjTzZJkbx26SrVC+qM8dVcGhtNctlNvVHeGPPb+sGwNwdobZAUtzsq/m/djdTUjV 2Zk28AyZmri58kUdPpoUpUwGls3wJ/lmBr8sVROsOIhx6VNct3Gm0e3NBVTMDTKXhjuN bMUg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@CAVIUMNETWORKS.onmicrosoft.com header.s=selector1-cavium-com header.b=JXVsLaDj; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id c15si6717362pgg.446.2018.11.28.06.45.35; Wed, 28 Nov 2018 06:45:54 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@CAVIUMNETWORKS.onmicrosoft.com header.s=selector1-cavium-com header.b=JXVsLaDj; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728787AbeK2BpF (ORCPT + 99 others); Wed, 28 Nov 2018 20:45:05 -0500 Received: from mail-eopbgr800078.outbound.protection.outlook.com ([40.107.80.78]:26739 "EHLO NAM03-DM3-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1728031AbeK2BpE (ORCPT ); Wed, 28 Nov 2018 20:45:04 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=CAVIUMNETWORKS.onmicrosoft.com; s=selector1-cavium-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=TYHCRlEizg5103RwzZTClabwWKofx1bNw4wZzNMVTmg=; b=JXVsLaDjZlwfoXiZv1LWuv8rJI9MsrvdU74w7LNSqqLAk2zJyOX83plUJZw2LFW5mn+RoTQg0toHjvxQ8hCHrQFeYIopkvl6FRCy2kskuYkiuzmM+TTmwO8hdm9yUG9OBltw3R3ij8mIiWCXjOtzbEXdJhxGubdyIEU0/ej7y7A= Received: from SN6PR07MB5326.namprd07.prod.outlook.com (52.135.105.33) by SN6PR07MB5182.namprd07.prod.outlook.com (52.135.101.143) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1361.16; Wed, 28 Nov 2018 14:43:07 +0000 Received: from SN6PR07MB5326.namprd07.prod.outlook.com ([fe80::ccc7:d111:7f3d:667d]) by SN6PR07MB5326.namprd07.prod.outlook.com ([fe80::ccc7:d111:7f3d:667d%4]) with mapi id 15.20.1361.018; Wed, 28 Nov 2018 14:43:07 +0000 From: Robert Richter To: Marc Zyngier , Thomas Gleixner , Jason Cooper CC: "linux-arm-kernel@lists.infradead.org" , "linux-kernel@vger.kernel.org" , Stuart Yoder , Laurentiu Tudor , Matthias Brugger , Will Deacon , Lorenzo Pieralisi , "Richter, Robert" , Julien Thierry Subject: [PATCH v2 01/10] irqdomain: Add interface to request an irq domain Thread-Topic: [PATCH v2 01/10] irqdomain: Add interface to request an irq domain Thread-Index: AQHUhyisHG0MwjEfWkSkFCadyWhX5A== Date: Wed, 28 Nov 2018 14:43:06 +0000 Message-ID: <20181128144240.28727-2-rrichter@cavium.com> References: <20181128144240.28727-1-rrichter@cavium.com> In-Reply-To: <20181128144240.28727-1-rrichter@cavium.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: AM6P194CA0042.EURP194.PROD.OUTLOOK.COM (2603:10a6:209:84::19) To SN6PR07MB5326.namprd07.prod.outlook.com (2603:10b6:805:73::33) x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [77.14.124.106] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1;SN6PR07MB5182;6:EH/OMymsIvzSsDqGmPwyZwwURgLiSQddk1TVBQF+I5RxrbJu8PwP9dIM/SLXtB1U1SZzjOl+B+BvmUM4dX8FAzA3zTvV8Az/TAdtJ4y5Xe7Gh8GjNLYonITX97Wy0GdTIk5s5d82npjJIjfuRbvUIbkPAa4Q4IBvDvYbT5kyiifUE8nXuIQLM/XkiXQ/B+YtuvW2jjVWRP5q5AHBI2ALN1zj7MxE3JVBsr0LFakvFxuUWv1c/vQTvaoR49bXPBeooJyXNzajX55uloer664xMpgbPnWW4flOZGO6iQGv4+jgQGEpPJQzoLDljywnXGj1kXt6075tq3+vPi97pn8D5dEpp3jAUikrtGPqlUcoJhlHxz5PVity24kRyofmxjz9Svf2vV3NHQXLWsKrlyR03Em3o90kv+xtYZVtQrJJOVCPeILWGabV4TacADV1QXvFa+bl7EUylEnstX65qfKVeg==;5:S1+93suEWh9Z/WtWzzx2VeE3ECFv5odH3O5kEMK9HCM1Lqh/WwNlFJzWQF6Bpja4eP0tFFdq+kJ09c1B5RuDYnF57mmgluUz+H9al9l7XVsIgNz3tCHE//vN3oe88nzlipd9des/rxv8khmYbyz5MBrSo/mkNtL4M/vslYtDDnE=;7:iL0z23IiXqXlFRzYnM5+WrijMEcXtb6WAMyoKAe9UErhXJQBa2E8OZeAzFrk2dBlXdxVe/vmAb51zJRiqm0V5U9xa9FEygz24KlGFzQLGre0ODUMlc9Zx7ew3opgfmNouNP4i07eI8DV96DyBWQGMg== x-ms-office365-filtering-correlation-id: 279c8a19-fca7-49d6-55f9-08d6553fcebd x-microsoft-antispam: BCL:0;PCL:0;RULEID:(2390098)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600074)(711020)(2017052603328)(7153060)(7193020);SRVR:SN6PR07MB5182; x-ms-traffictypediagnostic: SN6PR07MB5182: authentication-results: spf=none (sender IP is ) smtp.mailfrom=Robert.Richter@cavium.com; x-microsoft-antispam-prvs: x-ms-exchange-senderadcheck: 1 x-exchange-antispam-report-cfa-test: BCL:0;PCL:0;RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93001095)(3002001)(10201501046)(3231443)(999002)(944501410)(52105112)(148016)(149066)(150057)(6041310)(20161123560045)(20161123562045)(20161123558120)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(201708071742011)(7699051)(76991095);SRVR:SN6PR07MB5182;BCL:0;PCL:0;RULEID:;SRVR:SN6PR07MB5182; x-forefront-prvs: 0870212862 x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(346002)(136003)(376002)(39860400002)(396003)(366004)(189003)(199004)(7416002)(5660300001)(6436002)(36756003)(54906003)(39060400002)(110136005)(446003)(11346002)(6116002)(3846002)(53936002)(97736004)(52116002)(76176011)(102836004)(4326008)(476003)(316002)(14454004)(2616005)(71190400001)(71200400001)(6512007)(1076002)(6506007)(7736002)(305945005)(486006)(81156014)(81166006)(386003)(72206003)(2906002)(575784001)(99286004)(68736007)(8936002)(478600001)(106356001)(186003)(105586002)(6486002)(14444005)(66066001)(26005)(25786009)(256004)(8676002);DIR:OUT;SFP:1101;SCL:1;SRVR:SN6PR07MB5182;H:SN6PR07MB5326.namprd07.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;MX:1;A:1; received-spf: None (protection.outlook.com: cavium.com does not designate permitted sender hosts) x-microsoft-antispam-message-info: 46ao3zkoKEoLH0zt/8JVxpIK+4+PVZg5NH1SmkaI6rhG+WgU0UMRAyTAlmZPLPSD6XQytD0hlqza0mXVrMzHnuexaNX5XohyVXpP0vj2UkooplXm7uFoD1F8iDfk8G7er/KsRFIFlr7BOXMIH9nI0sD/Xl1hNEtvMDTagYeQg15tOi2ZZa5IBgx5EpTYWzSBZMpT4FTEqDbgqXgyEV+Ve4HnfTFb8mGtTWWAbtHq1PSDACcBIRpY9KRAs5U1O3i8mk3/aqS5sD7e26Edo5UZmJb4VEnLQ3IKdKobP+uV7tSgXcSMtRDpIMuqjmE1T6muabQuacefRsmfJ0ktVIUfJfEJa00yGL8On/LnytCejZY= spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: cavium.com X-MS-Exchange-CrossTenant-Network-Message-Id: 279c8a19-fca7-49d6-55f9-08d6553fcebd X-MS-Exchange-CrossTenant-originalarrivaltime: 28 Nov 2018 14:43:06.5569 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 711e4ccf-2e9b-4bcf-a551-4094005b6194 X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR07MB5182 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org VGhpcyBwYXRjaCBpbnRyb2R1Y2VzIGEgbmV3IGludGVyZmFjZSB0byBhbGxvdyBpcnEgZG9tYWlu DQppbml0aWFsaXphdGlvbiByZWdhcmRsZXNzIG9mIG9yZGVyIGRlcGVuZGVuY2llcy4gVGhpcyBp cyBkb25lIGJ5DQpyZXF1ZXN0aW5nIGEgZG9tYWluIGFuZCByZWdpc3RlcmluZyBhIGNhbGxiYWNr IGZ1bmN0aW9uIHRoYXQgaXMgY2FsbGVkDQphcyBzb29uIGFzIGEgZG9tYWluIGJlY29tZXMgYXZh aWxhYmxlLg0KDQpBIHR5cGljYWwgaXJxIGRvbWFpbiBpbml0aWFsaXphdGlvbiBjb2RlIGlzIHRo ZSBmb2xsb3dpbmc6DQoNClBhcmVudCBpbml0aWFsaXphdGlvbjoNCg0KCS4uLg0KCWRvbWFpbiA9 IG1zaV9jcmVhdGVfaXJxX2RvbWFpbihmd25vZGUsIGluZm8sIHBhcmVudCk7DQoJaWYgKGRvbWFp bikNCgkJaXJxX2RvbWFpbl91cGRhdGVfYnVzX3Rva2VuKGRvbWFpbiwgYnVzX3Rva2VuKTsNCgku Li4NCg0KQ2hpbGQgaW5pdGlhbGl6YXRpb246DQoNCgkuLi4NCglwYXJlbnQgPSBpcnFfZmluZF9t YXRjaGluZ19md25vZGUoZndub2RlLCBidXNfdG9rZW4pOw0KCWlmICghcGFyZW50KQ0KCQkuLi4N CgljcmVhdGVfaXJxX2RvbWFpbihwYXJlbnQsIC4uLik7DQoJLi4uDQoNCkluIGNhc2UgdGhlIHBh cmVudCBpcyBub3QgeWV0IGF2YWlsYWJsZSwgdGhlIGNoaWxkIGluaXRpYWxpemF0aW9uDQpmYWls cy4gVGh1cywgdGhlIGN1cnJlbnQgaW1wbGVtZW50YXRpb24gcmVxdWlyZXMgdGhlIHBhcmVudCBk b21haW4NCmJlaW5nIGluaXRpYWxpemVkIGJlZm9yZSB0aGUgY2hpbGQgZG9tYWluLiBXaXRoIGEg Y29tcGxleCBpcnEgZG9tYWluDQpoaWVyYXJjaHkgaXQgYmVjb21lcyBtb3JlIGFuZCBtb3JlIGRp ZmZpY3VsdCB0byBncmFudCB0aGF0IG9yZGVyIGFzDQppcnEgZG9tYWlucyBhcmUgZW5hYmxlZCBp biBzZXBhcmF0ZSBzdWJzeXN0ZW1zLiBDYXJlIG11c3QgYmUgdGFrZW4NCndoZW4gaW5pdGlhbGl6 aW5nIHBhcmVudCBhbmQgY2hpbGQgZG9tYWlucyBpbiB0aGUgc2FtZSBpbml0Y2FsbA0KbGV2ZWwu IEUuZy4gQXJtJ3MgZ2ljLXYzLWl0cyBpbXBsZW1lbnRhdGlvbiBtaWdodCBoYXZlIHRoZSBmb2xs b3dpbmcNCnRyZWUgYW5kIGRlcGVuZGVuY2llczoNCg0KCWdpYy12Mw0KCeKUnOKUgOKUgCBpdHMt bm9kZS0wDQoJ4pSCICAg4pSc4pSA4pSAIHBjaS1ob3N0LTANCgnilIIgICDilJzilIDilIAgcGxh dGZvcm0tYnVzDQoJ4pSCICAgLi4uDQoJ4pSc4pSA4pSAIGl0cy1ub2RlLTENCgnilIIgICDilJzi lIDilIAgcGNpLWhvc3QtMQ0KCS4uLg0KDQpBbGwgZG9tYWlucyBtdXN0IGJlIGluaXRpYWxpemVk IGluIHRvcC1kb3duIG9yZGVyIG9mIHRoZSB0cmVlLg0KDQpUaGlzIHBhdGNoIGludHJvZHVjZXMg YW4gaW50ZXJmYWNlIHRoYXQgYWxsb3dzIGRvbWFpbiBpbml0aWFsaXphdGlvbg0Kd2l0aG91dCBh bnkgb3JkZXIgcmVxdWlyZW1lbnRzLCBlLmcuIHRvIGJlIGFibGUgdG8gaW5pdGlhbGl6ZSB0aGUg aXJxDQpkb21haW5zIGluIHRoZSBzYW1lIGluaXRjYWxsIGxldmVsLiBUaGUgZm9sbG93aW5nIGZ1 bmN0aW9ucyBoYXZlIGJlZW4NCmludHJvZHVjZWQgdG8gYWxsb3cgdGhlIHJlZ2lzdHJhdGlvbiBv ZiBhIGNhbGxiYWNrIGhhbmRsZXI6DQoNCglpcnFfZG9tYWluX3JlcXVlc3RfZndub2RlKCkNCglp cnFfZG9tYWluX3JlcXVlc3RfaG9zdCgpDQoNCkluc3RlYWQgb2YgdXNpbmcgdGhlIGlycV9maW5k X21hdGNoaW5nX2Z3bm9kZSgpIGZ1bmN0aW9uIGFuZCBpdCdzDQp2YXJpYW50cyB0aGUgY2hpbGQg Y29kZSByZXBsYWNlcyB0aGVtIHdpdGggdGhlIG5ldyBmdW5jdGlvbnMgYW5kDQpsb29rcyBlLmcu IGxpa2UgdGhlIGZvbGxvd2luZzoNCg0KCS4uLg0KCWlycV9kb21haW5fcmVxdWVzdF9md25vZGUo Zndub2RlLCBidXNfdG9rZW4sDQoJCQkJY3JlYXRlX2lycV9kb21haW4sIG5hbWUsIHByaXYpOw0K CS4uLg0KDQpIZXJlLCB0aGUgY2FsbGJhY2sgZnVuY3Rpb24gY3JlYXRlX2lycV9kb21haW4oKSBp cyBjYWxsZWQgYXMgc29vbiBhcw0KdGhlIHBhcmVudCBiZWNvbWVzIGF2YWlsYWJsZS4gQWxsIHJl Z2lzdGVyZWQgaGFuZGxlcnMgYXJlIHN0b3JlZCBpbiBhDQpsaXN0LiBXaXRoIGVhY2ggdXBkYXRl IG9mIHRoZSBidXMgdG9rZW4gdXNpbmcgaXJxX2RvbWFpbl91cGRhdGVfYnVzXw0KdG9rZW4oKSwg dGhlIGxpc3QgaXMgY2hlY2tlZCBpZiB0aGF0IGRvbWFpbiBpcyByZXF1ZXN0ZWQgYnkgYSBoYW5k bGVyDQphbmQgaWYgdGhhdCBpcyB0aGUgY2FzZSBpdCdzIGNhbGxiYWNrIGZ1bmN0aW9uIGlzIGNh bGxlZCBhbmQgdGhlDQpyZXF1ZXN0IHJlbW92ZWQgZnJvbSB0aGUgbGlzdC4NCg0KV2l0aCBhIGxh dGVfaW5pdGNhbGwgYWxsIHJlcXVlc3RzIGZyb20gdGhlIGxpc3Qgc2hvdWxkIGFscmVhZHkgaGF2 ZQ0KYmVlbiBoYW5kbGVkLCBvdGhlcndpc2UgYWxsIHJlbWFpbmluZyByZXF1ZXN0cyBhcmUgcmVt b3ZlZCB3aXRoIGFuDQplcnJvciByZXBvcnRlZC4NCg0KU2lnbmVkLW9mZi1ieTogUm9iZXJ0IFJp Y2h0ZXIgPHJyaWNodGVyQGNhdml1bS5jb20+DQotLS0NCiBpbmNsdWRlL2xpbnV4L2lycWRvbWFp bi5oIHwgIDE1ICsrKysrDQoga2VybmVsL2lycS9pcnFkb21haW4uYyAgICB8IDE2MyArKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrDQogMiBmaWxlcyBjaGFuZ2Vk LCAxNzggaW5zZXJ0aW9ucygrKQ0KDQpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9saW51eC9pcnFkb21h aW4uaCBiL2luY2x1ZGUvbGludXgvaXJxZG9tYWluLmgNCmluZGV4IDA2OGFhNDZmMGQ1NS4uMjdl ODM4MDM2MjdkIDEwMDY0NA0KLS0tIGEvaW5jbHVkZS9saW51eC9pcnFkb21haW4uaA0KKysrIGIv aW5jbHVkZS9saW51eC9pcnFkb21haW4uaA0KQEAgLTMxMSw2ICszMTEsMjEgQEAgc3RhdGljIGlu bGluZSBzdHJ1Y3QgaXJxX2RvbWFpbiAqaXJxX2ZpbmRfaG9zdChzdHJ1Y3QgZGV2aWNlX25vZGUg Km5vZGUpDQogCXJldHVybiBkOw0KIH0NCiANCit0eXBlZGVmIGludCAoKmlycV9kb21haW5fY2Fs bGJhY2tfdCkoc3RydWN0IGlycV9kb21haW4gKiwgdm9pZCAqKTsNCitpbnQgaXJxX2RvbWFpbl9y ZXF1ZXN0X2Z3bm9kZShzdHJ1Y3QgZndub2RlX2hhbmRsZSAqZndub2RlLA0KKwkJCWVudW0gaXJx X2RvbWFpbl9idXNfdG9rZW4gYnVzX3Rva2VuLA0KKwkJCWlycV9kb21haW5fY2FsbGJhY2tfdCBj YWxsYmFjaywNCisJCQljb25zdCBjaGFyICpuYW1lLCB2b2lkICpwcml2KTsNCisNCitzdGF0aWMg aW5saW5lIGludCBpcnFfZG9tYWluX3JlcXVlc3RfaG9zdChzdHJ1Y3QgZGV2aWNlX25vZGUgKm5v ZGUsDQorCQkJCQllbnVtIGlycV9kb21haW5fYnVzX3Rva2VuIGJ1c190b2tlbiwNCisJCQkJCWly cV9kb21haW5fY2FsbGJhY2tfdCBjYWxsYmFjaywNCisJCQkJCXZvaWQgKnByaXYpDQorew0KKwly ZXR1cm4gaXJxX2RvbWFpbl9yZXF1ZXN0X2Z3bm9kZShvZl9ub2RlX3RvX2Z3bm9kZShub2RlKSwg YnVzX3Rva2VuLA0KKwkJCQkJY2FsbGJhY2ssIG5vZGUtPmZ1bGxfbmFtZSwgcHJpdik7DQorfQ0K Kw0KIC8qKg0KICAqIGlycV9kb21haW5fYWRkX2xpbmVhcigpIC0gQWxsb2NhdGUgYW5kIHJlZ2lz dGVyIGEgbGluZWFyIHJldm1hcCBpcnFfZG9tYWluLg0KICAqIEBvZl9ub2RlOiBwb2ludGVyIHRv IGludGVycnVwdCBjb250cm9sbGVyJ3MgZGV2aWNlIHRyZWUgbm9kZS4NCmRpZmYgLS1naXQgYS9r ZXJuZWwvaXJxL2lycWRvbWFpbi5jIGIva2VybmVsL2lycS9pcnFkb21haW4uYw0KaW5kZXggMzM2 NmQxMWMzZTAyLi5lYmU2MjhkYWQ1NjggMTAwNjQ0DQotLS0gYS9rZXJuZWwvaXJxL2lycWRvbWFp bi5jDQorKysgYi9rZXJuZWwvaXJxL2lycWRvbWFpbi5jDQpAQCAtMjEsNiArMjEsNyBAQA0KICNp bmNsdWRlIDxsaW51eC9mcy5oPg0KIA0KIHN0YXRpYyBMSVNUX0hFQUQoaXJxX2RvbWFpbl9saXN0 KTsNCitzdGF0aWMgTElTVF9IRUFEKGlycV9kb21haW5fcmVxdWVzdHMpOw0KIHN0YXRpYyBERUZJ TkVfTVVURVgoaXJxX2RvbWFpbl9tdXRleCk7DQogDQogc3RhdGljIHN0cnVjdCBpcnFfZG9tYWlu ICppcnFfZGVmYXVsdF9kb21haW47DQpAQCAtNDUsNiArNDYsMTExIEBAIHN0YXRpYyBpbmxpbmUg dm9pZCBkZWJ1Z2ZzX3JlbW92ZV9kb21haW5fZGlyKHN0cnVjdCBpcnFfZG9tYWluICpkKSB7IH0N CiBjb25zdCBzdHJ1Y3QgZndub2RlX29wZXJhdGlvbnMgaXJxY2hpcF9md25vZGVfb3BzOw0KIEVY UE9SVF9TWU1CT0xfR1BMKGlycWNoaXBfZndub2RlX29wcyk7DQogDQorc3RydWN0IGlycV9kb21h aW5fcmVxdWVzdCB7DQorCXN0cnVjdCBsaXN0X2hlYWQJCWxpc3Q7DQorCXN0cnVjdCBmd25vZGVf aGFuZGxlCQkqZndub2RlOw0KKwllbnVtIGlycV9kb21haW5fYnVzX3Rva2VuCWJ1c190b2tlbjsN CisJaXJxX2RvbWFpbl9jYWxsYmFja190CQljYWxsYmFjazsNCisJY2hhcgkJCQkqbmFtZTsNCisJ dm9pZAkJCQkqcHJpdjsNCit9Ow0KKw0KK3N0YXRpYyB2b2lkIGlycV9kb21haW5fY2FsbF9oYW5k bGVyKHN0cnVjdCBpcnFfZG9tYWluICpkb21haW4sDQorCQlpcnFfZG9tYWluX2NhbGxiYWNrX3Qg Y2FsbGJhY2ssIGNvbnN0IGNoYXIgKm5hbWUsIHZvaWQgKnByaXYpDQorew0KKwlpbnQgcmV0Ow0K Kw0KKwlyZXQgPSBjYWxsYmFjayhkb21haW4sIHByaXYpOw0KKwlpZiAocmV0KQ0KKwkJcHJfZXJy KCIlczogRG9tYWluIHJlcXVlc3QgaGFuZGxlciBmYWlsZWQ6ICVkXG4iLA0KKwkJCW5hbWUsIHJl dCk7DQorDQorCW9mX25vZGVfcHV0KGlycV9kb21haW5fZ2V0X29mX25vZGUoZG9tYWluKSk7DQor fQ0KKw0KK3N0YXRpYyB2b2lkIGlycV9kb21haW5fZnJlZV9yZXF1ZXN0KHN0cnVjdCBpcnFfZG9t YWluX3JlcXVlc3QgKnJlcXVlc3QpDQorew0KKwlrZnJlZShyZXF1ZXN0LT5uYW1lKTsNCisJa2Zy ZWUocmVxdWVzdCk7DQorfQ0KKw0KK3N0YXRpYyB2b2lkIGlycV9kb21haW5faGFuZGxlX3JlcXVl c3RzKHN0cnVjdCBmd25vZGVfaGFuZGxlICpmd25vZGUsDQorICAgICAgICAgICAgICAgICAgICAg ICAgZW51bSBpcnFfZG9tYWluX2J1c190b2tlbiBidXNfdG9rZW4pDQorew0KKwlzdHJ1Y3QgaXJx X2RvbWFpbiAqZG9tYWluOw0KKwlzdHJ1Y3QgaXJxX2RvbWFpbl9yZXF1ZXN0ICpyZXF1ZXN0Ow0K Kw0KKwlpZiAoIWZ3bm9kZSkNCisJCXJldHVybjsNCityZWRvOg0KKwlkb21haW4gPSBpcnFfZmlu ZF9tYXRjaGluZ19md25vZGUoZndub2RlLCBidXNfdG9rZW4pOw0KKwlpZiAoIWRvbWFpbikNCisJ CXJldHVybjsNCisNCisJbXV0ZXhfbG9jaygmaXJxX2RvbWFpbl9tdXRleCk7DQorDQorCS8qDQor CSAqIEZvciBzZXJpYWxpemF0aW9uIG9mIGlycSBkb21haW4gdXBkYXRlcyBtYWtlIHN1cmUgdG8g aGFuZGxlDQorCSAqIChhbmQgcmVtb3ZlKSB0aGUgcmVxdWVzdCBvbmx5IGlmIHRoZSBkb21haW4g c3RpbGwgbWF0Y2hlcw0KKwkgKiB0aGUgcmVxdWVzdC4NCisJICovDQorCWlmICgoZG9tYWluLT5m d25vZGUgIT0gZndub2RlKSB8fCAoZG9tYWluLT5idXNfdG9rZW4gIT0gYnVzX3Rva2VuKSkgew0K KwkJbXV0ZXhfdW5sb2NrKCZpcnFfZG9tYWluX211dGV4KTsNCisJCWdvdG8gcmVkbzsNCisJfQ0K Kw0KKwlsaXN0X2Zvcl9lYWNoX2VudHJ5KHJlcXVlc3QsICZpcnFfZG9tYWluX3JlcXVlc3RzLCBs aXN0KSB7DQorCQlpZiAocmVxdWVzdC0+Zndub2RlICE9IGZ3bm9kZSB8fA0KKwkJICAgIHJlcXVl c3QtPmJ1c190b2tlbiAhPSBidXNfdG9rZW4pDQorCQkJY29udGludWU7DQorDQorCQlsaXN0X2Rl bCgmcmVxdWVzdC0+bGlzdCk7DQorCQltdXRleF91bmxvY2soJmlycV9kb21haW5fbXV0ZXgpOw0K Kw0KKwkJaXJxX2RvbWFpbl9jYWxsX2hhbmRsZXIoZG9tYWluLCByZXF1ZXN0LT5jYWxsYmFjaywN CisJCQkJCXJlcXVlc3QtPm5hbWUsIHJlcXVlc3QtPnByaXYpOw0KKwkJaXJxX2RvbWFpbl9mcmVl X3JlcXVlc3QocmVxdWVzdCk7DQorDQorCQlnb3RvIHJlZG87DQorCX0NCisNCisJbXV0ZXhfdW5s b2NrKCZpcnFfZG9tYWluX211dGV4KTsNCit9DQorDQorc3RhdGljIGludCBfX2luaXQgaXJxX2Rv bWFpbl9kcmFpbl9yZXF1ZXN0cyh2b2lkKQ0KK3sNCisJc3RydWN0IGlycV9kb21haW5fcmVxdWVz dCAqcmVxdWVzdDsNCisJc3RydWN0IGlycV9kb21haW4gKmRvbWFpbjsNCisJaW50IHJldCA9IDA7 DQorcmVkbzoNCisJbXV0ZXhfbG9jaygmaXJxX2RvbWFpbl9tdXRleCk7DQorDQorCWxpc3RfZm9y X2VhY2hfZW50cnkocmVxdWVzdCwgJmlycV9kb21haW5fcmVxdWVzdHMsIGxpc3QpIHsNCisJCWxp c3RfZGVsKCZyZXF1ZXN0LT5saXN0KTsNCisJCW11dGV4X3VubG9jaygmaXJxX2RvbWFpbl9tdXRl eCk7DQorDQorCQlkb21haW4gPSBpcnFfZmluZF9tYXRjaGluZ19md25vZGUocmVxdWVzdC0+Zndu b2RlLA0KKwkJCQkJCXJlcXVlc3QtPmJ1c190b2tlbik7DQorCQlpZiAoZG9tYWluKSB7DQorCQkJ aXJxX2RvbWFpbl9jYWxsX2hhbmRsZXIoZG9tYWluLCByZXF1ZXN0LT5jYWxsYmFjaywNCisJCQkJ CQlyZXF1ZXN0LT5uYW1lLCByZXF1ZXN0LT5wcml2KTsNCisJCX0gZWxzZSB7DQorCQkJcmV0ID0g LUVOT0RFVjsNCisJCQlwcl9lcnIoIiVzLSVkOiBVbmhhbmRsZWQgZG9tYWluIHJlcXVlc3RcbiIs DQorCQkJCXJlcXVlc3QtPm5hbWUsIHJlcXVlc3QtPmJ1c190b2tlbik7DQorCQl9DQorDQorCQlp cnFfZG9tYWluX2ZyZWVfcmVxdWVzdChyZXF1ZXN0KTsNCisNCisJCWdvdG8gcmVkbzsNCisJfQ0K Kw0KKwltdXRleF91bmxvY2soJmlycV9kb21haW5fbXV0ZXgpOw0KKw0KKwlyZXR1cm4gcmV0Ow0K K30NCitsYXRlX2luaXRjYWxsKGlycV9kb21haW5fZHJhaW5fcmVxdWVzdHMpOw0KKw0KIC8qKg0K ICAqIGlycV9kb21haW5fYWxsb2NfZndub2RlIC0gQWxsb2NhdGUgYSBmd25vZGVfaGFuZGxlIHN1 aXRhYmxlIGZvcg0KICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgaWRlbnRpZnlpbmcgYW4g aXJxIGRvbWFpbg0KQEAgLTI5Myw2ICszOTksOCBAQCB2b2lkIGlycV9kb21haW5fdXBkYXRlX2J1 c190b2tlbihzdHJ1Y3QgaXJxX2RvbWFpbiAqZG9tYWluLA0KIAlkZWJ1Z2ZzX2FkZF9kb21haW5f ZGlyKGRvbWFpbik7DQogDQogCW11dGV4X3VubG9jaygmaXJxX2RvbWFpbl9tdXRleCk7DQorDQor CWlycV9kb21haW5faGFuZGxlX3JlcXVlc3RzKGRvbWFpbi0+Zndub2RlLCBidXNfdG9rZW4pOw0K IH0NCiANCiAvKioNCkBAIC00MTcsNiArNTI1LDYxIEBAIHN0cnVjdCBpcnFfZG9tYWluICppcnFf ZmluZF9tYXRjaGluZ19md3NwZWMoc3RydWN0IGlycV9md3NwZWMgKmZ3c3BlYywNCiBFWFBPUlRf U1lNQk9MX0dQTChpcnFfZmluZF9tYXRjaGluZ19md3NwZWMpOw0KIA0KIC8qKg0KKyAqIGlycV9k b21haW5fcmVxdWVzdF9md25vZGUoKSAtIFJlcXVlc3RzIGEgZG9tYWluIGZvciBhIGdpdmVuIGZ3 c3BlYw0KKyAqIEBmd3NwZWM6IEZXIHNwZWNpZmllciBmb3IgYW4gaW50ZXJydXB0DQorICogQGJ1 c190b2tlbjogZG9tYWluLXNwZWNpZmljIGRhdGENCisgKiBAY2FsbGJhY2s6IGZ1bmN0aW9uIHRv IGJlIGNhbGxlZCBvbmNlIGRvbWFpbiBiZWNvbWVzIGF2YWlsYWJsZQ0KKyAqIEBuYW1lOiBuYW1l IHRvIGJlIHVzZWQgZm9yIGZ3bm9kZQ0KKyAqIEBwcml2OiBwcml2YXRlIGRhdGEgdG8gYmUgcGFz c2VkIHRvIGNhbGxiYWNrDQorICoNCisgKiBUaGUgY2FsbGJhY2sgZnVuY3Rpb24gaXMgY2FsbGVk IGFzIHNvb24gYXMgdGhlIGRvbWFpbiBpcyBhdmFpbGFibGUuDQorICovDQoraW50IGlycV9kb21h aW5fcmVxdWVzdF9md25vZGUoc3RydWN0IGZ3bm9kZV9oYW5kbGUgKmZ3bm9kZSwNCisJCQllbnVt IGlycV9kb21haW5fYnVzX3Rva2VuIGJ1c190b2tlbiwNCisJCQlpcnFfZG9tYWluX2NhbGxiYWNr X3QgY2FsbGJhY2ssDQorCQkJY29uc3QgY2hhciAqbmFtZSwgdm9pZCAqcHJpdikNCit7DQorCXN0 cnVjdCBpcnFfZG9tYWluICpwYXJlbnQ7DQorCXN0cnVjdCBpcnFfZG9tYWluX3JlcXVlc3QgKnJl cXVlc3Q7DQorDQorCWlmICghZndub2RlIHx8IGJ1c190b2tlbiA9PSBET01BSU5fQlVTX0FOWSB8 fCAhY2FsbGJhY2sgfHwgIW5hbWUpDQorCQlyZXR1cm4gLUVJTlZBTDsNCisNCisJcGFyZW50ID0g aXJxX2ZpbmRfbWF0Y2hpbmdfZndub2RlKGZ3bm9kZSwgYnVzX3Rva2VuKTsNCisJaWYgKHBhcmVu dCkgew0KKwkJaXJxX2RvbWFpbl9jYWxsX2hhbmRsZXIocGFyZW50LCBjYWxsYmFjaywgbmFtZSwg cHJpdik7DQorCQlyZXR1cm4gMDsNCisJfQ0KKw0KKwlyZXF1ZXN0ID0ga3phbGxvYyhzaXplb2Yo KnJlcXVlc3QpLCBHRlBfS0VSTkVMKTsNCisJaWYgKCFyZXF1ZXN0KQ0KKwkJcmV0dXJuIC1FTk9N RU07DQorDQorCXJlcXVlc3QtPmZ3bm9kZSA9IGZ3bm9kZTsNCisJcmVxdWVzdC0+YnVzX3Rva2Vu ID0gYnVzX3Rva2VuOw0KKwlyZXF1ZXN0LT5jYWxsYmFjayA9IGNhbGxiYWNrOw0KKwlyZXF1ZXN0 LT5uYW1lID0ga3N0cmR1cChuYW1lLCBHRlBfS0VSTkVMKTsNCisJcmVxdWVzdC0+cHJpdiA9IHBy aXY7DQorCUlOSVRfTElTVF9IRUFEKCZyZXF1ZXN0LT5saXN0KTsNCisNCisJaWYgKCFyZXF1ZXN0 LT5uYW1lKSB7DQorCQlrZnJlZShyZXF1ZXN0KTsNCisJCXJldHVybiAtRU5PTUVNOw0KKwl9DQor DQorCW9mX25vZGVfZ2V0KHRvX29mX25vZGUoZndub2RlKSk7DQorDQorCW11dGV4X2xvY2soJmly cV9kb21haW5fbXV0ZXgpOw0KKwlsaXN0X2FkZF90YWlsKCZyZXF1ZXN0LT5saXN0LCAmaXJxX2Rv bWFpbl9yZXF1ZXN0cyk7DQorCW11dGV4X3VubG9jaygmaXJxX2RvbWFpbl9tdXRleCk7DQorDQor CS8qIHJlY2hlY2sgaW4gY2FzZSBsaXN0IGNoYW5nZWQgKi8NCisJaXJxX2RvbWFpbl9oYW5kbGVf cmVxdWVzdHMoZndub2RlLCBidXNfdG9rZW4pOw0KKw0KKwlyZXR1cm4gMDsNCit9DQorDQorLyoq DQogICogaXJxX2RvbWFpbl9jaGVja19tc2lfcmVtYXAgLSBDaGVjayB3aGV0aGVyIGFsbCBNU0kg aXJxIGRvbWFpbnMgaW1wbGVtZW50DQogICogSVJRIHJlbWFwcGluZw0KICAqDQotLSANCjIuMTEu MA0KDQo=