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 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 50800C433F5 for ; Tue, 23 Nov 2021 19:11:40 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id BB0CE6B0072; Tue, 23 Nov 2021 14:11:24 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id B5FCD6B0074; Tue, 23 Nov 2021 14:11:24 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 9B2456B0075; Tue, 23 Nov 2021 14:11:24 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0002.hostedemail.com [216.40.44.2]) by kanga.kvack.org (Postfix) with ESMTP id 8B90A6B0072 for ; Tue, 23 Nov 2021 14:11:24 -0500 (EST) Received: from smtpin04.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay03.hostedemail.com (Postfix) with ESMTP id 4BD43821EAE8 for ; Tue, 23 Nov 2021 19:11:14 +0000 (UTC) X-FDA: 78841138068.04.92E375C Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by imf05.hostedemail.com (Postfix) with ESMTP id 358FB508BB9A for ; Tue, 23 Nov 2021 19:11:08 +0000 (UTC) Received: from pps.filterd (m0246630.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.16.1.2/8.16.1.2) with SMTP id 1ANImt1Y008367; Tue, 23 Nov 2021 19:11:11 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-id : content-transfer-encoding : mime-version; s=corp-2021-07-09; bh=3Kd09BEoGVRaESmyJp9o3lx1ZVhPuf774ZPGUaEDWYw=; b=ho4SaraO2QV7nFRvO7eU+/s4k5QrJ03PCzgePzjH6voevxQEpvZDyW6WvCj+ouWpdKBI BEtdnLYoNG8JYGjo15t5y7zZQbNec6ukL2Z/RmBREYgNgCIyLm92M+YF5nKNIMzW41KY 3QEXR7GvBkTe2s4OWGoR9sv+99p96P2xecwhdiynYxy8pahK03UJbNGWJTDaivUlrXrh qInCZTQE4zCxOvCCaRxcgjfc6060wtkFdibMQyn9WDNJ8iHCJ0IlnKHXhU6plTFm+Zjc 9LabKpfjd6a5CqR+6GMSMzBdY7rMofkl/0Ts7aTgYKqaQhGaDReRq+BQApWSwG1f3k5Z vA== Received: from userp3030.oracle.com (userp3030.oracle.com [156.151.31.80]) by mx0b-00069f02.pphosted.com with ESMTP id 3cg461kbw7-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 23 Nov 2021 19:11:08 +0000 Received: from pps.filterd (userp3030.oracle.com [127.0.0.1]) by userp3030.oracle.com (8.16.1.2/8.16.1.2) with SMTP id 1ANJ6bGn080980; Tue, 23 Nov 2021 19:11:04 GMT Received: from nam10-dm6-obe.outbound.protection.outlook.com (mail-dm6nam10lp2108.outbound.protection.outlook.com [104.47.58.108]) by userp3030.oracle.com with ESMTP id 3cep5011bc-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 23 Nov 2021 19:11:04 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Wf7W+fQ3hMEFQWude2Fe+tqfkJTbtsyO3ygGkzXXOOQlCoPnR3wcIk9Bi5I15VmAdPjcyaMGEANJlRV++FzDoYQ9VO9E6zpOW7HyR/mL4fTm2+8ruhSIX1831ezGpfb4zZdMNbY77t3yv7WfetzQneLtO8p4TLsqKYNOlHxe3LetfiY6xHot4bx6F82OmAuhWlx0XMfwcl8LOgP8KYf52vM4BmodKeHw2qQ3qa/BJaeXcETglkA2JHOwN2VYQlLaIFmQsXTEpAtccGrhHsJR+O0yQAEYbhFemfFiKHNSNGjbRWtyjc62qpwrik6tDh6ij+iQgk8jqjPDIVhaIqKA8g== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=3Kd09BEoGVRaESmyJp9o3lx1ZVhPuf774ZPGUaEDWYw=; b=FL+4wYkJyKdBlpRZIRTBspf+xeOxpUE2Hef4pdIDjNtrg5WIdyZJogYBslkn4+/ly+PjHjhbHfjc1q6Z/7JF/X4fPoaz1wvgLE+s6dOwTxoxu4ZUhv64KjMKLvdNWhf0VpqxAqT2Wz1ZGRzjgdfG7bppyNjlXIOlzBQGnltK8VTHevS6F8aXoDDpidYjWvGUOw5XrjX0x/1ZYuVCXFvlMDnqHjCYI7bB1Fv2xHoMM77lpINE6XtCHCBRAhTpHjdi7+2lGJRI/H3vzd//NFSK7gXRyPYN1HCZgxBMicZcOmByDxHMnAH0KctfT/S12gGLTbSvqqSZFe5vvexcqI4RNA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=3Kd09BEoGVRaESmyJp9o3lx1ZVhPuf774ZPGUaEDWYw=; b=cn5xT67/C3YsuU7Tq97mmhxIfQzQDedrjOOlpwJARtS4ughaUYBm995o+c1sjlhT5xOOVk9Q2QrmKt0G1EiizMlryxg2spL7ooShjwEDb1DPQpdpYpVMYifKOldv5PygK1kzisn2fWPYCazlFonxo7V0ZdfNmQJDbA7jbKu8voU= Received: from SJ0PR10MB4429.namprd10.prod.outlook.com (2603:10b6:a03:2d1::14) by BY5PR10MB3858.namprd10.prod.outlook.com (2603:10b6:a03:1b2::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4734.20; Tue, 23 Nov 2021 19:11:01 +0000 Received: from SJ0PR10MB4429.namprd10.prod.outlook.com ([fe80::418c:dfe4:f3ee:feaa]) by SJ0PR10MB4429.namprd10.prod.outlook.com ([fe80::418c:dfe4:f3ee:feaa%7]) with mapi id 15.20.4713.025; Tue, 23 Nov 2021 19:11:01 +0000 From: Jane Chu To: Dan Williams , "nvdimm@lists.linux.dev" CC: Ira Weiny , Dave Jiang , Vishal Verma , Dave Hansen , "linux-mm@kvack.org" Subject: Re: [PATCH v2] dax: Kill DEV_DAX_PMEM_COMPAT Thread-Topic: [PATCH v2] dax: Kill DEV_DAX_PMEM_COMPAT Thread-Index: AQHX2mayOMvcG2EFhUyKb5CMWbTMfqwRhuYA Date: Tue, 23 Nov 2021 19:11:01 +0000 Message-ID: References: <163543595723.2281838.11942022992765100714.stgit@dwillia2-desk3.amr.corp.intel.com> <163701116195.3784476.726128179293466337.stgit@dwillia2-desk3.amr.corp.intel.com> In-Reply-To: <163701116195.3784476.726128179293466337.stgit@dwillia2-desk3.amr.corp.intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.3.1 x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: b0d1b37c-bf67-470d-cca8-08d9aeb4fd37 x-ms-traffictypediagnostic: BY5PR10MB3858: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:6108; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 0Txn/FqciCwcs2irBjzSkwnmDXjrKTN+JJDJWzhLZQb332VJ3PBRy5oORTGGEaL9ZAwsvaGvsF4MfR2sp8aEKPzxInIBkeKk+qy946IwIM6cyHmkRwn6Rj2I3JQpMfiJmU3Ut53l2IAO9sOjYQEx7XytFEEl2k1Ea4+vWMAB23zBR5gFDVW6FxKBNqFKCXm+YzsUgF6UT1fesxK2K8RX+1eVX4rH5Ls1BKt2CrANmJtyl/bSl0qFNN8igOgjxrfjmDH5CWMT9QoU837ZiKMserTUe+sAYRThwD4Hs+fkYtV8LlSBKgVc/w9q9r1G8q8GTluvJNEK4X+5bcl05sayqFA1hydvEIScG3dOUjqikDqOKMGu3WVq8RLRryds229zIzP2IQTCDbxjqn+q2n50KWetTBF2aNqpYUfAMu07e03GTGBxyCoA6H2MzBeHsnoR4GNZPvTodQgj1DAXoGT+q3TVpNcsRzCePPIpKtPYlWDNtGeJG+c9YA0+p76eUGwBrz8NQAirWEFOI5+CgZDEniHv7k/Lw4EDqadCJ/I0T58oar3XDyqmaOiUU/opjtQEGzf82gllHSPyhazoaqfyfNDlokX8Ix190Q6wAaCTxonq6++6LFt95lZt9zBEj34zyCR7Mh/qn5rS4Wvf61iuqhuZXzK7iP3S1L8GUqJ/oLF/NEXBXVj6HTwzSqrp9QLbzsZzD66PwaqkuWvPFjzjvpEKxJ+thBNYmZJ5LZCvz1txb0ZUVPWB2Z6zt8c39MgokDoUf9GubW23wu9sm6+UHQ== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR10MB4429.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(366004)(76116006)(6486002)(36756003)(38070700005)(91956017)(66556008)(30864003)(6506007)(83380400001)(4326008)(8936002)(122000001)(508600001)(186003)(66476007)(6512007)(53546011)(316002)(31696002)(66946007)(38100700002)(2906002)(31686004)(26005)(2616005)(54906003)(8676002)(5660300002)(110136005)(44832011)(86362001)(71200400001)(64756008)(66446008)(45980500001)(43740500002);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?MWRIcUU0NVQ3eVAraFMwaWk3a3F6QWdIb2haV2JEeTNVK3YxYTgxOFJsRlZl?= =?utf-8?B?VWVHa002dmx6YTF1UC9XdzV5aW1qaFVZcTB2TFNremV4VGNya2ZsZloyZlpw?= =?utf-8?B?T21OeEY0KzRMOHZrYzg5L1lYbGpFWmZTK1NQOWV1b2hoazBwTFB2RG9SWWpV?= =?utf-8?B?eWtaYkRVekRZODVzQk5vRHRlOHRWQnVoc3MvNEZ6ODZLVzNTU3pzcExEK1NV?= =?utf-8?B?UlM5MnBEMFcwbjJwb1dWemcxT2RxaDFrUmU4WEVOa2d6ODJOOHY1L2tGTTFW?= =?utf-8?B?ZG9xYmFmQWhabkZ4YWpKdXUzQnVoOUJHZml5YzhLTlh1UDNEbWo5eGFGK0Qv?= =?utf-8?B?bnVNNW0yWnBhMWpnTUN0c0p3SWFYYTJjaWN5MG8yM0V4ZUs3N1ZtRnRDeUMw?= =?utf-8?B?NklNaFJZcWRSdFBZNElEZ0YvUHBDVlFXc25xMm5Xc1ZDVjlMUit2NytUVlZL?= =?utf-8?B?eDh4bVQ5NVpkaVdGTGZVOGdZSnpvVGxjMVlvUjZ0M3JUSW9EY2IrejhUMjBt?= =?utf-8?B?dllOYjU0THVlbEN1aEp3N0RYRElPQzExb1FPNk9wYlFLakZ0ZW5zYWgyYkNj?= =?utf-8?B?aThWSUdHMHRRRmh1VUZHYkVRN2pvZlZQZ1hnTVR3SWxxVkM5bDZkZlVVMjFq?= =?utf-8?B?cEpEVDhjbWN2azBpSWZJbk9DNFB1dnVQNTgwUEdtUUw3VE1YL0J6YS9rRW9r?= =?utf-8?B?eGRkYUozRkhTZUpzVnhyTE1yRytTSSttQmMwT0ZCWDBxZE5jaDlZSklJZVRC?= =?utf-8?B?M3N6YTNaK25YaC9SZnNtT2RXZFFBSjUxQ0NhckdYNHdCMTJQQ2Nib1F1dTUx?= =?utf-8?B?cGVacEg2TzUyVFRVdGc5UlJCU2E5MEdTaStnZGpGUEZMNFFmOC9NbFFJeGR2?= =?utf-8?B?QnR2Z2NoMWk4ckZoVFdLY3FwYUhpVDF1Z2llb09OdDIvYUVieEVzaVZIUlZy?= =?utf-8?B?dzZOZ0lmRi9LcFlRZFhia2t6UzFScjJhdjNmV3QwM09jS0RIdFEvOEJISjly?= =?utf-8?B?WkhkaVlpVEJ4NGRiT1hWSlJFUkpyUmdtRE9NRkIvVjM0ZTZhSGttWUxlZnlp?= =?utf-8?B?dE9GVlk1TjFFS2ZndEx3Snp5TllramtxTWlLWHlXNXBMQisva1pyK2Ivcm12?= =?utf-8?B?QnJzSTlwcERycnpWelpxWUlsT2t0WmhHanhwQmlMa2J3ckVET1o1bUpLYktx?= =?utf-8?B?cU1NR2s5ZS9ObTVWREhlQ2xYa1ZQQ2d2V3dITUlXd0ZFcnZUQktENE8ra0hj?= =?utf-8?B?bkNBQU5acHRmczgrM1pIeURFZDNBMlJldjJYNnJ1UnFzZ2k3Z2pTVW55Y0Uv?= =?utf-8?B?R1k5KzBhZFloaENuOWFQL1lVSjJaVEgvNzVrRUFhNlJPMEw5Wm9QajNaTWRM?= =?utf-8?B?dTdZRW5sd0FsT3F2NE8rbmJ5Wlk0S3hJakpmMy82NVhzYmF5KzNTbFUxdXBk?= =?utf-8?B?SmpUNlREOFJjYUtyamRPbUs0SGZRelVLaVNRVmYvbTRtcCtEUjF3V0xkc3l3?= =?utf-8?B?TDh2aVFOTUZCMjE2czJzbTNmOUxaamdqcnl4NUx1TkxXR0VVWndDNkNOb3p6?= =?utf-8?B?aTJyRWZ5aTlUS0wxbkF4S3BVWURKMC8xV3VxQ3BXMURianMyaU1RYmRUVWlX?= =?utf-8?B?VlNkeGRBZUtPbERSeWNac1VoQTFoRjk5OEI0c2JXdXl5M0NOVCtCTVVnaCtY?= =?utf-8?B?YXJyVTdBL3R5MW9lVG5pOXNTTllFNXpXc0ZOanplSnczcnNuYkFVbWlqc0RP?= =?utf-8?B?eXhEQ0VNY0JZSHVCZ3dyb0h3UjVkNkpHTnNKYWw4Nndvb29nL0ZjKzZaMThY?= =?utf-8?B?S2NoWGV3QlpYNWxpUkx6SDF0b0NRTkdRQ0lsc1Q3djRzb2FRNmF5ckJ5WmZh?= =?utf-8?B?Q01OTWhzaml0NHVTcXlsNHdNUzlrVW1VVXMrb0VzaE5JVXFzdkh6WHh5aGU4?= =?utf-8?B?K3dIQWNmcEZ6ZjFFMitGSUVGeU1oZ3ZNUWJoczNFQlVBczJnUkRwOU1GRE5v?= =?utf-8?B?cXk1eXB2UERLMURReVZtelZsRDNxNW5nUUxOaGQrcEl5bGtreEZLNGFCajRY?= =?utf-8?B?V2pGSlJOUk85S21XQ1BaK210bmlLWjJDcDMycUFDUUZrbmNxYTJiNDNjV043?= =?utf-8?B?K1Jqd1c1UjJtRnA4bkQ4QWpXM3VYM1RTcGxSQWxZbStla3NDZzdWTUpnT2c5?= =?utf-8?B?MVE9PQ==?= Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SJ0PR10MB4429.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: b0d1b37c-bf67-470d-cca8-08d9aeb4fd37 X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Nov 2021 19:11:01.4727 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: l/HxnEG8cWg+qYHjAQ9qp4Bf+ViNXMqsKE/lK6AxneYIGieU+KxjYkW6Ivx7W1rNGU30td/Vw5d3P0MxcBtxGA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR10MB3858 X-Proofpoint-Virus-Version: vendor=nai engine=6300 definitions=10177 signatures=668683 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 phishscore=0 malwarescore=0 mlxlogscore=999 bulkscore=0 mlxscore=0 suspectscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2110150000 definitions=main-2111230093 X-Proofpoint-GUID: CjxqvRGca7QQmk348-fEj2raZe4q35G4 X-Proofpoint-ORIG-GUID: CjxqvRGca7QQmk348-fEj2raZe4q35G4 X-Rspamd-Server: rspam01 X-Rspamd-Queue-Id: 358FB508BB9A X-Stat-Signature: 5iyq5z5s87xs471fota71ky4xqjirhj8 Authentication-Results: imf05.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2021-07-09 header.b=ho4SaraO; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b="cn5xT67/"; spf=none (imf05.hostedemail.com: domain of jane.chu@oracle.com has no SPF policy when checking 205.220.177.32) smtp.mailfrom=jane.chu@oracle.com; dmarc=pass (policy=none) header.from=oracle.com X-HE-Tag: 1637694668-727296 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: T24gMTEvMTUvMjAyMSAxOjIwIFBNLCBEYW4gV2lsbGlhbXMgd3JvdGU6DQo+IFRoZSAvc3lzL2Ns YXNzL2RheCBjb21wYXRpYmlsaXR5IG9wdGlvbiBoYXMgc2hpcHBlZCBpbiB0aGUga2VybmVsIGZv ciA0DQo+IHllYXJzIG5vdyB3aGljaCBzaG91bGQgYmUgc3VmZmljaWVudCB0aW1lIGZvciB0b29s cyB0byBhYmFuZG9uIHRoZSBvbGQNCj4gQUJJIGluIGZhdm9yIG9mIHRoZSAvc3lzL2J1cy9kYXgg ZGV2aWNlLW1vZGVsLiBEZWxldGUgaXQgbm93IGFuZCBzZWUgaWYNCj4gYW55b25lIHNjcmVhbXMu DQo+IA0KPiBTaW5jZSB0aGlzIGNvbXBhdGliaWxpdHkgb3B0aW9uIHNoaXBwZWQgdGhlcmUgaGFz IGJlZW4gbW9yZSByZXBvcnRzIG9mDQo+IHVzZXJzIGJlaW5nIHN1cnByaXNlZCBieSB0aGUgY29t cGF0IEFCSSB0aGFuIHN1cnByaXNlZCBieSB0aGUgIm5ldyIsIHNvDQo+IHRoZSBjb21wYXQgaW5m cmFzdHJ1Y3R1cmUgaGFzIG91dGxpdmVkIGl0cyB1c2VmdWxuZXNzLiBSZWNhbGwgdGhhdA0KPiAv c3lzL2J1cy9kYXggZGV2aWNlLW1vZGVsIGlzIHJlcXVpcmVkIGZvciB0aGUgZGF4IGttZW0gZHJp dmVyIHdoaWNoDQo+IGFsbG93cyBQTUVNIHRvIGJlIHVzZWQgYXMgIlN5c3RlbSBSQU0iLg0KPiAN Cj4gVGhlIGZvbGxvd2luZyBwcm9qZWN0cyB3ZXJlIGtub3duIHRvIGhhdmUgYSBkZXBlbmRlbmN5 IG9uIC9zeXMvY2xhc3MvZGF4DQo+IGFuZCBoYXZlIGRyb3BwZWQgdGhlaXIgZGVwZW5kZW5jeSBh cyBvZiB0aGUgbGlzdGVkIHZlcnNpb246DQo+IA0KPiAtIG5kY3RsIChpbmNsdWRpbmcgbGlibmRj dGwsIGRheGN0bCwgYW5kIGxpYmRheGN0bCk6IHY2NCsNCj4gLSBmaW86IHYzLjEzKw0KPiAtIHBt ZGs6IHYxLjUuMisNCj4gDQo+IEFzIGZ1cnRoZXIgZXZpZGVuY2UgdGhpcyBvcHRpb24gaXMgbm8g bG9uZ2VyIG5lZWRlZCBzb21lIGRpc3RyaWJ1dGlvbnMNCj4gaGF2ZSBhbHJlYWR5IHN0b3BwZWQg ZW5hYmxpbmcgQ09ORklHX0RFVl9EQVhfUE1FTV9DT01QQVQuDQoNCkxvb2tzIGdvb2QuDQpZb3Ug bWF5IGFkZCBSZXZpZXdlZC1ieTogSmFuZSBDaHUgPGphbmUuY2h1QG9yYWNsZS5jb20+DQoNCnRo YW5rcywNCi1qYW5lDQoNCj4gDQo+IENjOiBJcmEgV2VpbnkgPGlyYS53ZWlueUBpbnRlbC5jb20+ DQo+IENjOiBEYXZlIEppYW5nIDxkYXZlLmppYW5nQGludGVsLmNvbT4NCj4gQ2M6IEphbmUgQ2h1 IDxqYW5lLmNodUBvcmFjbGUuY29tPg0KPiBSZXBvcnRlZC1ieTogVmlzaGFsIFZlcm1hIDx2aXNo YWwubC52ZXJtYUBpbnRlbC5jb20+DQo+IEFja2VkLWJ5OiBEYXZlIEhhbnNlbiA8ZGF2ZS5oYW5z ZW5AbGludXguaW50ZWwuY29tPg0KPiBTaWduZWQtb2ZmLWJ5OiBEYW4gV2lsbGlhbXMgPGRhbi5q LndpbGxpYW1zQGludGVsLmNvbT4NCj4gLS0tDQo+IENoYW5nZXMgaW4gdjI6DQo+IA0KPiAtIFVw ZGF0ZSB0aGUgY2hhbmdlbG9nIHRvIGxpc3QgdXNlcnNwYWNlIHBhY2thZ2VzIHRoYXQgaGF2ZSBk cm9wcGVkDQo+ICAgIHRoZWlyIGRlcGVuZGVuY3kgYW5kIG5vdGUgdGhhdCBzb21lIGRpc3RyaWJ1 dGlvbnMgaGF2ZSBhbHJlYWR5IGRyb3BwZWQNCj4gICAgdGhpcyBvcHRpb24uDQo+IA0KPiAtIERl bGV0ZSB0aGUgc3lzZnMtY2xhc3MtZGF4IEFCSSBlbnRyeS4NCj4gDQo+ICAgRG9jdW1lbnRhdGlv bi9BQkkvb2Jzb2xldGUvc3lzZnMtY2xhc3MtZGF4ICB8ICAgMjIgLS0tLS0tLS0NCj4gICBkcml2 ZXJzL2RheC9LY29uZmlnICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgOSAtLS0NCj4gICBk cml2ZXJzL2RheC9NYWtlZmlsZSAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMyArDQo+ICAg ZHJpdmVycy9kYXgvYnVzLmMgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMjEgKy0tLS0t LS0NCj4gICBkcml2ZXJzL2RheC9idXMuaCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAx MyAtLS0tLQ0KPiAgIGRyaXZlcnMvZGF4L2RldmljZS5jICAgICAgICAgICAgICAgICAgICAgICAg fCAgICA2IC0tDQo+ICAgZHJpdmVycy9kYXgvcG1lbS5jICAgICAgICAgICAgICAgICAgICAgICAg ICB8ICAgMzYgKysrKysrKysrKystLS0NCj4gICBkcml2ZXJzL2RheC9wbWVtL01ha2VmaWxlICAg ICAgICAgICAgICAgICAgIHwgICAgMQ0KPiAgIGRyaXZlcnMvZGF4L3BtZW0vY29tcGF0LmMgICAg ICAgICAgICAgICAgICAgfCAgIDcyIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiAgIGRy aXZlcnMvZGF4L3BtZW0vcG1lbS5jICAgICAgICAgICAgICAgICAgICAgfCAgIDMwIC0tLS0tLS0t LS0tDQo+ICAgdG9vbHMvdGVzdGluZy9udmRpbW0vS2J1aWxkICAgICAgICAgICAgICAgICB8ICAg IDggLS0tDQo+ICAgdG9vbHMvdGVzdGluZy9udmRpbW0vZGF4X3BtZW1fY29tcGF0X3Rlc3QuYyB8 ICAgIDggLS0tDQo+ICAgdG9vbHMvdGVzdGluZy9udmRpbW0vZGF4X3BtZW1fY29yZV90ZXN0LmMg ICB8ICAgIDggLS0tDQo+ICAgdG9vbHMvdGVzdGluZy9udmRpbW0vdGVzdC9uZHRlc3QuYyAgICAg ICAgICB8ICAgIDQgLS0NCj4gICB0b29scy90ZXN0aW5nL252ZGltbS90ZXN0L25maXQuYyAgICAg ICAgICAgIHwgICAgNCAtLQ0KPiAgIDE1IGZpbGVzIGNoYW5nZWQsIDM2IGluc2VydGlvbnMoKyks IDIwOSBkZWxldGlvbnMoLSkNCj4gICBkZWxldGUgbW9kZSAxMDA2NDQgRG9jdW1lbnRhdGlvbi9B Qkkvb2Jzb2xldGUvc3lzZnMtY2xhc3MtZGF4DQo+ICAgcmVuYW1lIGRyaXZlcnMvZGF4L3twbWVt L2NvcmUuYyA9PiBwbWVtLmN9ICg3NSUpDQo+ICAgZGVsZXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMv ZGF4L3BtZW0vY29tcGF0LmMNCj4gICBkZWxldGUgbW9kZSAxMDA2NDQgdG9vbHMvdGVzdGluZy9u dmRpbW0vZGF4X3BtZW1fY29tcGF0X3Rlc3QuYw0KPiAgIGRlbGV0ZSBtb2RlIDEwMDY0NCB0b29s cy90ZXN0aW5nL252ZGltbS9kYXhfcG1lbV9jb3JlX3Rlc3QuYw0KPiANCj4gZGlmZiAtLWdpdCBh L0RvY3VtZW50YXRpb24vQUJJL29ic29sZXRlL3N5c2ZzLWNsYXNzLWRheCBiL0RvY3VtZW50YXRp b24vQUJJL29ic29sZXRlL3N5c2ZzLWNsYXNzLWRheA0KPiBkZWxldGVkIGZpbGUgbW9kZSAxMDA2 NDQNCj4gaW5kZXggNWJjY2UyNzQ1OGUzLi4wMDAwMDAwMDAwMDANCj4gLS0tIGEvRG9jdW1lbnRh dGlvbi9BQkkvb2Jzb2xldGUvc3lzZnMtY2xhc3MtZGF4DQo+ICsrKyAvZGV2L251bGwNCj4gQEAg LTEsMjIgKzAsMCBAQA0KPiAtV2hhdDogICAgICAgICAgIC9zeXMvY2xhc3MvZGF4Lw0KPiAtRGF0 ZTogICAgICAgICAgIE1heSwgMjAxNg0KPiAtS2VybmVsVmVyc2lvbjogIHY0LjcNCj4gLUNvbnRh Y3Q6ICAgICAgICBudmRpbW1AbGlzdHMubGludXguZGV2DQo+IC1EZXNjcmlwdGlvbjoJRGV2aWNl IERBWCBpcyB0aGUgZGV2aWNlLWNlbnRyaWMgYW5hbG9ndWUgb2YgRmlsZXN5c3RlbQ0KPiAtCQlE QVggKENPTkZJR19GU19EQVgpLiAgSXQgYWxsb3dzIG1lbW9yeSByYW5nZXMgdG8gYmUNCj4gLQkJ YWxsb2NhdGVkIGFuZCBtYXBwZWQgd2l0aG91dCBuZWVkIG9mIGFuIGludGVydmVuaW5nIGZpbGUN Cj4gLQkJc3lzdGVtLiAgRGV2aWNlIERBWCBpcyBzdHJpY3QsIHByZWNpc2UgYW5kIHByZWRpY3Rh YmxlLg0KPiAtCQlTcGVjaWZpY2FsbHkgdGhpcyBpbnRlcmZhY2U6DQo+IC0NCj4gLQkJMS4gR3Vh cmFudGVlcyBmYXVsdCBncmFudWxhcml0eSB3aXRoIHJlc3BlY3QgdG8gYSBnaXZlbg0KPiAtCQkg ICBwYWdlIHNpemUgKHB0ZSwgcG1kLCBvciBwdWQpIHNldCBhdCBjb25maWd1cmF0aW9uIHRpbWUu DQo+IC0NCj4gLQkJMi4gRW5mb3JjZXMgZGV0ZXJtaW5pc3RpYyBiZWhhdmlvciBieSBiZWluZyBz dHJpY3QgYWJvdXQNCj4gLQkJICAgd2hhdCBmYXVsdCBzY2VuYXJpb3MgYXJlIHN1cHBvcnRlZC4N Cj4gLQ0KPiAtCQlUaGUgL3N5cy9jbGFzcy9kYXgvIGludGVyZmFjZSBlbnVtZXJhdGVzIGFsbCB0 aGUNCj4gLQkJZGV2aWNlLWRheCBpbnN0YW5jZXMgaW4gdGhlIHN5c3RlbS4gVGhlIEFCSSBpcw0K PiAtCQlkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQgYWZ0ZXIgMjAyMC4gSXQgaXMNCj4g LQkJcmVwbGFjZWQgd2l0aCB0aGUgREFYIGJ1cyBpbnRlcmZhY2UgL3N5cy9idXMvZGF4LyB3aGVy ZQ0KPiAtCQlkZXZpY2UtZGF4IGluc3RhbmNlcyBjYW4gYmUgZm91bmQgdW5kZXINCj4gLQkJL3N5 cy9idXMvZGF4L2RldmljZXMvDQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2RheC9LY29uZmlnIGIv ZHJpdmVycy9kYXgvS2NvbmZpZw0KPiBpbmRleCBkMjgzNGMyY2ZhMTAuLjE1YjQ0MmVmN2I5MyAx MDA2NDQNCj4gLS0tIGEvZHJpdmVycy9kYXgvS2NvbmZpZw0KPiArKysgYi9kcml2ZXJzL2RheC9L Y29uZmlnDQo+IEBAIC03MCwxMyArNzAsNCBAQCBjb25maWcgREVWX0RBWF9LTUVNDQo+ICAgDQo+ ICAgCSAgU2F5IE4gaWYgdW5zdXJlLg0KPiAgIA0KPiAtY29uZmlnIERFVl9EQVhfUE1FTV9DT01Q QVQNCj4gLQl0cmlzdGF0ZSAiUE1FTSBEQVg6IHN1cHBvcnQgdGhlIGRlcHJlY2F0ZWQgL3N5cy9j bGFzcy9kYXggaW50ZXJmYWNlIg0KPiAtCWRlcGVuZHMgb24gbSAmJiBERVZfREFYX1BNRU09bQ0K PiAtCWRlZmF1bHQgREVWX0RBWF9QTUVNDQo+IC0JaGVscA0KPiAtCSAgT2xkZXIgdmVyc2lvbnMg b2YgdGhlIGxpYmRheGN0bCBsaWJyYXJ5IGV4cGVjdCB0byBmaW5kIGFsbA0KPiAtCSAgZGV2aWNl LWRheCBpbnN0YW5jZXMgdW5kZXIgL3N5cy9jbGFzcy9kYXguIElmIGxpYmRheGN0bCBpbg0KPiAt CSAgeW91ciBkaXN0cmlidXRpb24gaXMgb2xkZXIgdGhhbiB2NTggc2F5IE0sIG90aGVyd2lzZSBz YXkgTi4NCj4gLQ0KPiAgIGVuZGlmDQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2RheC9NYWtlZmls ZSBiL2RyaXZlcnMvZGF4L01ha2VmaWxlDQo+IGluZGV4IDlkNGJhNjcyZDMwNS4uOTBhNTZjYTNi MzQ1IDEwMDY0NA0KPiAtLS0gYS9kcml2ZXJzL2RheC9NYWtlZmlsZQ0KPiArKysgYi9kcml2ZXJz L2RheC9NYWtlZmlsZQ0KPiBAQCAtMiwxMCArMiwxMSBAQA0KPiAgIG9iai0kKENPTkZJR19EQVgp ICs9IGRheC5vDQo+ICAgb2JqLSQoQ09ORklHX0RFVl9EQVgpICs9IGRldmljZV9kYXgubw0KPiAg IG9iai0kKENPTkZJR19ERVZfREFYX0tNRU0pICs9IGttZW0ubw0KPiArb2JqLSQoQ09ORklHX0RF Vl9EQVhfUE1FTSkgKz0gZGF4X3BtZW0ubw0KPiAgIA0KPiAgIGRheC15IDo9IHN1cGVyLm8NCj4g ICBkYXgteSArPSBidXMubw0KPiAgIGRldmljZV9kYXgteSA6PSBkZXZpY2Uubw0KPiArZGF4X3Bt ZW0teSA6PSBwbWVtLm8NCj4gICANCj4gLW9iai15ICs9IHBtZW0vDQo+ICAgb2JqLXkgKz0gaG1l bS8NCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZGF4L2J1cy5jIGIvZHJpdmVycy9kYXgvYnVzLmMN Cj4gaW5kZXggNmNjNGRhNGM3MTNkLi40NTJjZjc4NjA5MjYgMTAwNjQ0DQo+IC0tLSBhL2RyaXZl cnMvZGF4L2J1cy5jDQo+ICsrKyBiL2RyaXZlcnMvZGF4L2J1cy5jDQo+IEBAIC0xMCw4ICsxMCw2 IEBADQo+ICAgI2luY2x1ZGUgImRheC1wcml2YXRlLmgiDQo+ICAgI2luY2x1ZGUgImJ1cy5oIg0K PiAgIA0KPiAtc3RhdGljIHN0cnVjdCBjbGFzcyAqZGF4X2NsYXNzOw0KPiAtDQo+ICAgc3RhdGlj IERFRklORV9NVVRFWChkYXhfYnVzX2xvY2spOw0KPiAgIA0KPiAgICNkZWZpbmUgREFYX05BTUVf TEVOIDMwDQo+IEBAIC0xMzQzLDEwICsxMzQxLDcgQEAgc3RydWN0IGRldl9kYXggKmRldm1fY3Jl YXRlX2Rldl9kYXgoc3RydWN0IGRldl9kYXhfZGF0YSAqZGF0YSkNCj4gICANCj4gICAJaW5vZGUg PSBkYXhfaW5vZGUoZGF4X2Rldik7DQo+ICAgCWRldi0+ZGV2dCA9IGlub2RlLT5pX3JkZXY7DQo+ IC0JaWYgKGRhdGEtPnN1YnN5cyA9PSBERVZfREFYX0JVUykNCj4gLQkJZGV2LT5idXMgPSAmZGF4 X2J1c190eXBlOw0KPiAtCWVsc2UNCj4gLQkJZGV2LT5jbGFzcyA9IGRheF9jbGFzczsNCj4gKwlk ZXYtPmJ1cyA9ICZkYXhfYnVzX3R5cGU7DQo+ICAgCWRldi0+cGFyZW50ID0gcGFyZW50Ow0KPiAg IAlkZXYtPnR5cGUgPSAmZGV2X2RheF90eXBlOw0KPiAgIA0KPiBAQCAtMTQ0NSwyMiArMTQ0MCwx MCBAQCBFWFBPUlRfU1lNQk9MX0dQTChkYXhfZHJpdmVyX3VucmVnaXN0ZXIpOw0KPiAgIA0KPiAg IGludCBfX2luaXQgZGF4X2J1c19pbml0KHZvaWQpDQo+ICAgew0KPiAtCWludCByYzsNCj4gLQ0K PiAtCWlmIChJU19FTkFCTEVEKENPTkZJR19ERVZfREFYX1BNRU1fQ09NUEFUKSkgew0KPiAtCQlk YXhfY2xhc3MgPSBjbGFzc19jcmVhdGUoVEhJU19NT0RVTEUsICJkYXgiKTsNCj4gLQkJaWYgKElT X0VSUihkYXhfY2xhc3MpKQ0KPiAtCQkJcmV0dXJuIFBUUl9FUlIoZGF4X2NsYXNzKTsNCj4gLQl9 DQo+IC0NCj4gLQlyYyA9IGJ1c19yZWdpc3RlcigmZGF4X2J1c190eXBlKTsNCj4gLQlpZiAocmMp DQo+IC0JCWNsYXNzX2Rlc3Ryb3koZGF4X2NsYXNzKTsNCj4gLQlyZXR1cm4gcmM7DQo+ICsJcmV0 dXJuIGJ1c19yZWdpc3RlcigmZGF4X2J1c190eXBlKTsNCj4gICB9DQo+ICAgDQo+ICAgdm9pZCBf X2V4aXQgZGF4X2J1c19leGl0KHZvaWQpDQo+ICAgew0KPiAgIAlidXNfdW5yZWdpc3RlcigmZGF4 X2J1c190eXBlKTsNCj4gLQljbGFzc19kZXN0cm95KGRheF9jbGFzcyk7DQo+ICAgfQ0KPiBkaWZm IC0tZ2l0IGEvZHJpdmVycy9kYXgvYnVzLmggYi9kcml2ZXJzL2RheC9idXMuaA0KPiBpbmRleCAx ZTk0NmFkNzc4MGEuLjM4MWNlYzlmZjA1YyAxMDA2NDQNCj4gLS0tIGEvZHJpdmVycy9kYXgvYnVz LmgNCj4gKysrIGIvZHJpdmVycy9kYXgvYnVzLmgNCj4gQEAgLTE2LDI0ICsxNiwxNSBAQCBzdHJ1 Y3QgZGF4X3JlZ2lvbiAqYWxsb2NfZGF4X3JlZ2lvbihzdHJ1Y3QgZGV2aWNlICpwYXJlbnQsIGlu dCByZWdpb25faWQsDQo+ICAgCQlzdHJ1Y3QgcmFuZ2UgKnJhbmdlLCBpbnQgdGFyZ2V0X25vZGUs IHVuc2lnbmVkIGludCBhbGlnbiwNCj4gICAJCXVuc2lnbmVkIGxvbmcgZmxhZ3MpOw0KPiAgIA0K PiAtZW51bSBkZXZfZGF4X3N1YnN5cyB7DQo+IC0JREVWX0RBWF9CVVMgPSAwLCAvKiB6ZXJvZWQg ZGV2X2RheF9kYXRhIHBpY2tzIHRoaXMgYnkgZGVmYXVsdCAqLw0KPiAtCURFVl9EQVhfQ0xBU1Ms DQo+IC19Ow0KPiAtDQo+ICAgc3RydWN0IGRldl9kYXhfZGF0YSB7DQo+ICAgCXN0cnVjdCBkYXhf cmVnaW9uICpkYXhfcmVnaW9uOw0KPiAgIAlzdHJ1Y3QgZGV2X3BhZ2VtYXAgKnBnbWFwOw0KPiAt CWVudW0gZGV2X2RheF9zdWJzeXMgc3Vic3lzOw0KPiAgIAlyZXNvdXJjZV9zaXplX3Qgc2l6ZTsN Cj4gICAJaW50IGlkOw0KPiAgIH07DQo+ICAgDQo+ICAgc3RydWN0IGRldl9kYXggKmRldm1fY3Jl YXRlX2Rldl9kYXgoc3RydWN0IGRldl9kYXhfZGF0YSAqZGF0YSk7DQo+ICAgDQo+IC0vKiB0byBi ZSBkZWxldGVkIHdoZW4gREVWX0RBWF9DTEFTUyBpcyByZW1vdmVkICovDQo+IC1zdHJ1Y3QgZGV2 X2RheCAqX19kYXhfcG1lbV9wcm9iZShzdHJ1Y3QgZGV2aWNlICpkZXYsIGVudW0gZGV2X2RheF9z dWJzeXMgc3Vic3lzKTsNCj4gLQ0KPiAgIHN0cnVjdCBkYXhfZGV2aWNlX2RyaXZlciB7DQo+ICAg CXN0cnVjdCBkZXZpY2VfZHJpdmVyIGRydjsNCj4gICAJc3RydWN0IGxpc3RfaGVhZCBpZHM7DQo+ IEBAIC00OSwxMCArNDAsNiBAQCBpbnQgX19kYXhfZHJpdmVyX3JlZ2lzdGVyKHN0cnVjdCBkYXhf ZGV2aWNlX2RyaXZlciAqZGF4X2RydiwNCj4gICB2b2lkIGRheF9kcml2ZXJfdW5yZWdpc3Rlcihz dHJ1Y3QgZGF4X2RldmljZV9kcml2ZXIgKmRheF9kcnYpOw0KPiAgIHZvaWQga2lsbF9kZXZfZGF4 KHN0cnVjdCBkZXZfZGF4ICpkZXZfZGF4KTsNCj4gICANCj4gLSNpZiBJU19FTkFCTEVEKENPTkZJ R19ERVZfREFYX1BNRU1fQ09NUEFUKQ0KPiAtaW50IGRldl9kYXhfcHJvYmUoc3RydWN0IGRldl9k YXggKmRldl9kYXgpOw0KPiAtI2VuZGlmDQo+IC0NCj4gICAvKg0KPiAgICAqIFdoaWxlIHJ1bl9k YXgoKSBpcyBwb3RlbnRpYWxseSBhIGdlbmVyaWMgb3BlcmF0aW9uIHRoYXQgY291bGQgYmUNCj4g ICAgKiBkZWZpbmVkIGluIGluY2x1ZGUvbGludXgvZGF4Lmggd2UgZG9uJ3Qgd2FudCB0byBncm93 IGFueSB1c2Vycw0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9kYXgvZGV2aWNlLmMgYi9kcml2ZXJz L2RheC9kZXZpY2UuYw0KPiBpbmRleCBkZDgyMjJhNDI4MDguLmU1OGQ1OTdmMDQxNSAxMDA2NDQN Cj4gLS0tIGEvZHJpdmVycy9kYXgvZGV2aWNlLmMNCj4gKysrIGIvZHJpdmVycy9kYXgvZGV2aWNl LmMNCj4gQEAgLTQzMywxMSArNDMzLDcgQEAgaW50IGRldl9kYXhfcHJvYmUoc3RydWN0IGRldl9k YXggKmRldl9kYXgpDQo+ICAgCWlub2RlID0gZGF4X2lub2RlKGRheF9kZXYpOw0KPiAgIAljZGV2 ID0gaW5vZGUtPmlfY2RldjsNCj4gICAJY2Rldl9pbml0KGNkZXYsICZkYXhfZm9wcyk7DQo+IC0J aWYgKGRldi0+Y2xhc3MpIHsNCj4gLQkJLyogZm9yIHRoZSBDT05GSUdfREVWX0RBWF9QTUVNX0NP TVBBVCBjYXNlICovDQo+IC0JCWNkZXYtPm93bmVyID0gZGV2LT5wYXJlbnQtPmRyaXZlci0+b3du ZXI7DQo+IC0JfSBlbHNlDQo+IC0JCWNkZXYtPm93bmVyID0gZGV2LT5kcml2ZXItPm93bmVyOw0K PiArCWNkZXYtPm93bmVyID0gZGV2LT5kcml2ZXItPm93bmVyOw0KPiAgIAljZGV2X3NldF9wYXJl bnQoY2RldiwgJmRldi0+a29iaik7DQo+ICAgCXJjID0gY2Rldl9hZGQoY2RldiwgZGV2LT5kZXZ0 LCAxKTsNCj4gICAJaWYgKHJjKQ0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9kYXgvcG1lbS9jb3Jl LmMgYi9kcml2ZXJzL2RheC9wbWVtLmMNCj4gc2ltaWxhcml0eSBpbmRleCA3NSUNCj4gcmVuYW1l IGZyb20gZHJpdmVycy9kYXgvcG1lbS9jb3JlLmMNCj4gcmVuYW1lIHRvIGRyaXZlcnMvZGF4L3Bt ZW0uYw0KPiBpbmRleCAwNjJlOGJjMTQyMjMuLmYwNTBlYTc4YmI4MyAxMDA2NDQNCj4gLS0tIGEv ZHJpdmVycy9kYXgvcG1lbS9jb3JlLmMNCj4gKysrIGIvZHJpdmVycy9kYXgvcG1lbS5jDQo+IEBA IC0zLDExICszLDExIEBADQo+ICAgI2luY2x1ZGUgPGxpbnV4L21lbXJlbWFwLmg+DQo+ICAgI2lu Y2x1ZGUgPGxpbnV4L21vZHVsZS5oPg0KPiAgICNpbmNsdWRlIDxsaW51eC9wZm5fdC5oPg0KPiAt I2luY2x1ZGUgIi4uLy4uL252ZGltbS9wZm4uaCINCj4gLSNpbmNsdWRlICIuLi8uLi9udmRpbW0v bmQuaCINCj4gLSNpbmNsdWRlICIuLi9idXMuaCINCj4gKyNpbmNsdWRlICIuLi9udmRpbW0vcGZu LmgiDQo+ICsjaW5jbHVkZSAiLi4vbnZkaW1tL25kLmgiDQo+ICsjaW5jbHVkZSAiYnVzLmgiDQo+ ICAgDQo+IC1zdHJ1Y3QgZGV2X2RheCAqX19kYXhfcG1lbV9wcm9iZShzdHJ1Y3QgZGV2aWNlICpk ZXYsIGVudW0gZGV2X2RheF9zdWJzeXMgc3Vic3lzKQ0KPiArc3RhdGljIHN0cnVjdCBkZXZfZGF4 ICpfX2RheF9wbWVtX3Byb2JlKHN0cnVjdCBkZXZpY2UgKmRldikNCj4gICB7DQo+ICAgCXN0cnVj dCByYW5nZSByYW5nZTsNCj4gICAJaW50IHJjLCBpZCwgcmVnaW9uX2lkOw0KPiBAQCAtNjMsNyAr NjMsNiBAQCBzdHJ1Y3QgZGV2X2RheCAqX19kYXhfcG1lbV9wcm9iZShzdHJ1Y3QgZGV2aWNlICpk ZXYsIGVudW0gZGV2X2RheF9zdWJzeXMgc3Vic3lzKQ0KPiAgIAkJLmRheF9yZWdpb24gPSBkYXhf cmVnaW9uLA0KPiAgIAkJLmlkID0gaWQsDQo+ICAgCQkucGdtYXAgPSAmcGdtYXAsDQo+IC0JCS5z dWJzeXMgPSBzdWJzeXMsDQo+ICAgCQkuc2l6ZSA9IHJhbmdlX2xlbigmcmFuZ2UpLA0KPiAgIAl9 Ow0KPiAgIAlkZXZfZGF4ID0gZGV2bV9jcmVhdGVfZGV2X2RheCgmZGF0YSk7DQo+IEBAIC03Myw3 ICs3MiwzMiBAQCBzdHJ1Y3QgZGV2X2RheCAqX19kYXhfcG1lbV9wcm9iZShzdHJ1Y3QgZGV2aWNl ICpkZXYsIGVudW0gZGV2X2RheF9zdWJzeXMgc3Vic3lzKQ0KPiAgIA0KPiAgIAlyZXR1cm4gZGV2 X2RheDsNCj4gICB9DQo+IC1FWFBPUlRfU1lNQk9MX0dQTChfX2RheF9wbWVtX3Byb2JlKTsNCj4g Kw0KPiArc3RhdGljIGludCBkYXhfcG1lbV9wcm9iZShzdHJ1Y3QgZGV2aWNlICpkZXYpDQo+ICt7 DQo+ICsJcmV0dXJuIFBUUl9FUlJfT1JfWkVSTyhfX2RheF9wbWVtX3Byb2JlKGRldikpOw0KPiAr fQ0KPiArDQo+ICtzdGF0aWMgc3RydWN0IG5kX2RldmljZV9kcml2ZXIgZGF4X3BtZW1fZHJpdmVy ID0gew0KPiArCS5wcm9iZSA9IGRheF9wbWVtX3Byb2JlLA0KPiArCS5kcnYgPSB7DQo+ICsJCS5u YW1lID0gImRheF9wbWVtIiwNCj4gKwl9LA0KPiArCS50eXBlID0gTkRfRFJJVkVSX0RBWF9QTUVN LA0KPiArfTsNCj4gKw0KPiArc3RhdGljIGludCBfX2luaXQgZGF4X3BtZW1faW5pdCh2b2lkKQ0K PiArew0KPiArCXJldHVybiBuZF9kcml2ZXJfcmVnaXN0ZXIoJmRheF9wbWVtX2RyaXZlcik7DQo+ ICt9DQo+ICttb2R1bGVfaW5pdChkYXhfcG1lbV9pbml0KTsNCj4gKw0KPiArc3RhdGljIHZvaWQg X19leGl0IGRheF9wbWVtX2V4aXQodm9pZCkNCj4gK3sNCj4gKwlkcml2ZXJfdW5yZWdpc3Rlcigm ZGF4X3BtZW1fZHJpdmVyLmRydik7DQo+ICt9DQo+ICttb2R1bGVfZXhpdChkYXhfcG1lbV9leGl0 KTsNCj4gICANCj4gICBNT0RVTEVfTElDRU5TRSgiR1BMIHYyIik7DQo+ICAgTU9EVUxFX0FVVEhP UigiSW50ZWwgQ29ycG9yYXRpb24iKTsNCj4gK01PRFVMRV9BTElBU19ORF9ERVZJQ0UoTkRfREVW SUNFX0RBWF9QTUVNKTsNCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZGF4L3BtZW0vTWFrZWZpbGUg Yi9kcml2ZXJzL2RheC9wbWVtL01ha2VmaWxlDQo+IGluZGV4IDAxMDI2OWY2MWQ0MS4uMTkxYzMx ZjBkNGYwIDEwMDY0NA0KPiAtLS0gYS9kcml2ZXJzL2RheC9wbWVtL01ha2VmaWxlDQo+ICsrKyBi L2RyaXZlcnMvZGF4L3BtZW0vTWFrZWZpbGUNCj4gQEAgLTEsNyArMSw2IEBADQo+ICAgIyBTUERY LUxpY2Vuc2UtSWRlbnRpZmllcjogR1BMLTIuMC1vbmx5DQo+ICAgb2JqLSQoQ09ORklHX0RFVl9E QVhfUE1FTSkgKz0gZGF4X3BtZW0ubw0KPiAgIG9iai0kKENPTkZJR19ERVZfREFYX1BNRU0pICs9 IGRheF9wbWVtX2NvcmUubw0KPiAtb2JqLSQoQ09ORklHX0RFVl9EQVhfUE1FTV9DT01QQVQpICs9 IGRheF9wbWVtX2NvbXBhdC5vDQo+ICAgDQo+ICAgZGF4X3BtZW0teSA6PSBwbWVtLm8NCj4gICBk YXhfcG1lbV9jb3JlLXkgOj0gY29yZS5vDQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2RheC9wbWVt L2NvbXBhdC5jIGIvZHJpdmVycy9kYXgvcG1lbS9jb21wYXQuYw0KPiBkZWxldGVkIGZpbGUgbW9k ZSAxMDA2NDQNCj4gaW5kZXggZDgxZGMzNWZkNjVkLi4wMDAwMDAwMDAwMDANCj4gLS0tIGEvZHJp dmVycy9kYXgvcG1lbS9jb21wYXQuYw0KPiArKysgL2Rldi9udWxsDQo+IEBAIC0xLDcyICswLDAg QEANCj4gLS8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBHUEwtMi4wDQo+IC0vKiBDb3B5cmln aHQoYykgMjAxNiAtIDIwMTggSW50ZWwgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQu ICovDQo+IC0jaW5jbHVkZSA8bGludXgvcGVyY3B1LXJlZmNvdW50Lmg+DQo+IC0jaW5jbHVkZSA8 bGludXgvbWVtcmVtYXAuaD4NCj4gLSNpbmNsdWRlIDxsaW51eC9tb2R1bGUuaD4NCj4gLSNpbmNs dWRlIDxsaW51eC9wZm5fdC5oPg0KPiAtI2luY2x1ZGUgPGxpbnV4L25kLmg+DQo+IC0jaW5jbHVk ZSAiLi4vYnVzLmgiDQo+IC0NCj4gLS8qIHdlIG5lZWQgdGhlIHByaXZhdGUgZGVmaW5pdGlvbnMg dG8gaW1wbGVtZW50IGNvbXBhdCBzdXBvcnQgKi8NCj4gLSNpbmNsdWRlICIuLi9kYXgtcHJpdmF0 ZS5oIg0KPiAtDQo+IC1zdGF0aWMgaW50IGRheF9wbWVtX2NvbXBhdF9wcm9iZShzdHJ1Y3QgZGV2 aWNlICpkZXYpDQo+IC17DQo+IC0Jc3RydWN0IGRldl9kYXggKmRldl9kYXggPSBfX2RheF9wbWVt X3Byb2JlKGRldiwgREVWX0RBWF9DTEFTUyk7DQo+IC0JaW50IHJjOw0KPiAtDQo+IC0JaWYgKElT X0VSUihkZXZfZGF4KSkNCj4gLQkJcmV0dXJuIFBUUl9FUlIoZGV2X2RheCk7DQo+IC0NCj4gLSAg ICAgICAgaWYgKCFkZXZyZXNfb3Blbl9ncm91cCgmZGV2X2RheC0+ZGV2LCBkZXZfZGF4LCBHRlBf S0VSTkVMKSkNCj4gLQkJcmV0dXJuIC1FTk9NRU07DQo+IC0NCj4gLQlkZXZpY2VfbG9jaygmZGV2 X2RheC0+ZGV2KTsNCj4gLQlyYyA9IGRldl9kYXhfcHJvYmUoZGV2X2RheCk7DQo+IC0JZGV2aWNl X3VubG9jaygmZGV2X2RheC0+ZGV2KTsNCj4gLQ0KPiAtCWRldnJlc19jbG9zZV9ncm91cCgmZGV2 X2RheC0+ZGV2LCBkZXZfZGF4KTsNCj4gLQlpZiAocmMpDQo+IC0JCWRldnJlc19yZWxlYXNlX2dy b3VwKCZkZXZfZGF4LT5kZXYsIGRldl9kYXgpOw0KPiAtDQo+IC0JcmV0dXJuIHJjOw0KPiAtfQ0K PiAtDQo+IC1zdGF0aWMgaW50IGRheF9wbWVtX2NvbXBhdF9yZWxlYXNlKHN0cnVjdCBkZXZpY2Ug KmRldiwgdm9pZCAqZGF0YSkNCj4gLXsNCj4gLQlkZXZpY2VfbG9jayhkZXYpOw0KPiAtCWRldnJl c19yZWxlYXNlX2dyb3VwKGRldiwgdG9fZGV2X2RheChkZXYpKTsNCj4gLQlkZXZpY2VfdW5sb2Nr KGRldik7DQo+IC0NCj4gLQlyZXR1cm4gMDsNCj4gLX0NCj4gLQ0KPiAtc3RhdGljIHZvaWQgZGF4 X3BtZW1fY29tcGF0X3JlbW92ZShzdHJ1Y3QgZGV2aWNlICpkZXYpDQo+IC17DQo+IC0JZGV2aWNl X2Zvcl9lYWNoX2NoaWxkKGRldiwgTlVMTCwgZGF4X3BtZW1fY29tcGF0X3JlbGVhc2UpOw0KPiAt fQ0KPiAtDQo+IC1zdGF0aWMgc3RydWN0IG5kX2RldmljZV9kcml2ZXIgZGF4X3BtZW1fY29tcGF0 X2RyaXZlciA9IHsNCj4gLQkucHJvYmUgPSBkYXhfcG1lbV9jb21wYXRfcHJvYmUsDQo+IC0JLnJl bW92ZSA9IGRheF9wbWVtX2NvbXBhdF9yZW1vdmUsDQo+IC0JLmRydiA9IHsNCj4gLQkJLm5hbWUg PSAiZGF4X3BtZW1fY29tcGF0IiwNCj4gLQl9LA0KPiAtCS50eXBlID0gTkRfRFJJVkVSX0RBWF9Q TUVNLA0KPiAtfTsNCj4gLQ0KPiAtc3RhdGljIGludCBfX2luaXQgZGF4X3BtZW1fY29tcGF0X2lu aXQodm9pZCkNCj4gLXsNCj4gLQlyZXR1cm4gbmRfZHJpdmVyX3JlZ2lzdGVyKCZkYXhfcG1lbV9j b21wYXRfZHJpdmVyKTsNCj4gLX0NCj4gLW1vZHVsZV9pbml0KGRheF9wbWVtX2NvbXBhdF9pbml0 KTsNCj4gLQ0KPiAtc3RhdGljIHZvaWQgX19leGl0IGRheF9wbWVtX2NvbXBhdF9leGl0KHZvaWQp DQo+IC17DQo+IC0JZHJpdmVyX3VucmVnaXN0ZXIoJmRheF9wbWVtX2NvbXBhdF9kcml2ZXIuZHJ2 KTsNCj4gLX0NCj4gLW1vZHVsZV9leGl0KGRheF9wbWVtX2NvbXBhdF9leGl0KTsNCj4gLQ0KPiAt TU9EVUxFX0xJQ0VOU0UoIkdQTCB2MiIpOw0KPiAtTU9EVUxFX0FVVEhPUigiSW50ZWwgQ29ycG9y YXRpb24iKTsNCj4gLU1PRFVMRV9BTElBU19ORF9ERVZJQ0UoTkRfREVWSUNFX0RBWF9QTUVNKTsN Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZGF4L3BtZW0vcG1lbS5jIGIvZHJpdmVycy9kYXgvcG1l bS9wbWVtLmMNCj4gaW5kZXggMGFlNDIzOGEwZWY4Li5kZmU5MWEyOTkwZmUgMTAwNjQ0DQo+IC0t LSBhL2RyaXZlcnMvZGF4L3BtZW0vcG1lbS5jDQo+ICsrKyBiL2RyaXZlcnMvZGF4L3BtZW0vcG1l bS5jDQo+IEBAIC03LDM0ICs3LDQgQEANCj4gICAjaW5jbHVkZSA8bGludXgvbmQuaD4NCj4gICAj aW5jbHVkZSAiLi4vYnVzLmgiDQo+ICAgDQo+IC1zdGF0aWMgaW50IGRheF9wbWVtX3Byb2JlKHN0 cnVjdCBkZXZpY2UgKmRldikNCj4gLXsNCj4gLQlyZXR1cm4gUFRSX0VSUl9PUl9aRVJPKF9fZGF4 X3BtZW1fcHJvYmUoZGV2LCBERVZfREFYX0JVUykpOw0KPiAtfQ0KPiAgIA0KPiAtc3RhdGljIHN0 cnVjdCBuZF9kZXZpY2VfZHJpdmVyIGRheF9wbWVtX2RyaXZlciA9IHsNCj4gLQkucHJvYmUgPSBk YXhfcG1lbV9wcm9iZSwNCj4gLQkuZHJ2ID0gew0KPiAtCQkubmFtZSA9ICJkYXhfcG1lbSIsDQo+ IC0JfSwNCj4gLQkudHlwZSA9IE5EX0RSSVZFUl9EQVhfUE1FTSwNCj4gLX07DQo+IC0NCj4gLXN0 YXRpYyBpbnQgX19pbml0IGRheF9wbWVtX2luaXQodm9pZCkNCj4gLXsNCj4gLQlyZXR1cm4gbmRf ZHJpdmVyX3JlZ2lzdGVyKCZkYXhfcG1lbV9kcml2ZXIpOw0KPiAtfQ0KPiAtbW9kdWxlX2luaXQo ZGF4X3BtZW1faW5pdCk7DQo+IC0NCj4gLXN0YXRpYyB2b2lkIF9fZXhpdCBkYXhfcG1lbV9leGl0 KHZvaWQpDQo+IC17DQo+IC0JZHJpdmVyX3VucmVnaXN0ZXIoJmRheF9wbWVtX2RyaXZlci5kcnYp Ow0KPiAtfQ0KPiAtbW9kdWxlX2V4aXQoZGF4X3BtZW1fZXhpdCk7DQo+IC0NCj4gLU1PRFVMRV9M SUNFTlNFKCJHUEwgdjIiKTsNCj4gLU1PRFVMRV9BVVRIT1IoIkludGVsIENvcnBvcmF0aW9uIik7 DQo+IC0jaWYgIUlTX0VOQUJMRUQoQ09ORklHX0RFVl9EQVhfUE1FTV9DT01QQVQpDQo+IC0vKiBG b3IgY29tcGF0IGJ1aWxkcywgZG9uJ3QgbG9hZCB0aGlzIG1vZHVsZSBieSBkZWZhdWx0ICovDQo+ IC1NT0RVTEVfQUxJQVNfTkRfREVWSUNFKE5EX0RFVklDRV9EQVhfUE1FTSk7DQo+IC0jZW5kaWYN Cj4gZGlmZiAtLWdpdCBhL3Rvb2xzL3Rlc3RpbmcvbnZkaW1tL0tidWlsZCBiL3Rvb2xzL3Rlc3Rp bmcvbnZkaW1tL0tidWlsZA0KPiBpbmRleCA0N2Y5Y2M5ZGNkOTQuLmM1N2Q5ZTlkNDQ4MCAxMDA2 NDQNCj4gLS0tIGEvdG9vbHMvdGVzdGluZy9udmRpbW0vS2J1aWxkDQo+ICsrKyBiL3Rvb2xzL3Rl c3RpbmcvbnZkaW1tL0tidWlsZA0KPiBAQCAtMzUsOCArMzUsNiBAQCBvYmotJChDT05GSUdfREFY KSArPSBkYXgubw0KPiAgIGVuZGlmDQo+ICAgb2JqLSQoQ09ORklHX0RFVl9EQVgpICs9IGRldmlj ZV9kYXgubw0KPiAgIG9iai0kKENPTkZJR19ERVZfREFYX1BNRU0pICs9IGRheF9wbWVtLm8NCj4g LW9iai0kKENPTkZJR19ERVZfREFYX1BNRU0pICs9IGRheF9wbWVtX2NvcmUubw0KPiAtb2JqLSQo Q09ORklHX0RFVl9EQVhfUE1FTV9DT01QQVQpICs9IGRheF9wbWVtX2NvbXBhdC5vDQo+ICAgDQo+ ICAgbmZpdC15IDo9ICQoQUNQSV9TUkMpL2NvcmUubw0KPiAgIG5maXQteSArPSAkKEFDUElfU1JD KS9pbnRlbC5vDQo+IEBAIC02NywxMiArNjUsOCBAQCBkZXZpY2VfZGF4LXkgKz0gZGF4LWRldi5v DQo+ICAgZGV2aWNlX2RheC15ICs9IGRldmljZV9kYXhfdGVzdC5vDQo+ICAgZGV2aWNlX2RheC15 ICs9IGNvbmZpZ19jaGVjay5vDQo+ICAgDQo+IC1kYXhfcG1lbS15IDo9ICQoREFYX1NSQykvcG1l bS9wbWVtLm8NCj4gK2RheF9wbWVtLXkgOj0gJChEQVhfU1JDKS9wbWVtLm8NCj4gICBkYXhfcG1l bS15ICs9IGRheF9wbWVtX3Rlc3Qubw0KPiAtZGF4X3BtZW1fY29yZS15IDo9ICQoREFYX1NSQykv cG1lbS9jb3JlLm8NCj4gLWRheF9wbWVtX2NvcmUteSArPSBkYXhfcG1lbV9jb3JlX3Rlc3Qubw0K PiAtZGF4X3BtZW1fY29tcGF0LXkgOj0gJChEQVhfU1JDKS9wbWVtL2NvbXBhdC5vDQo+IC1kYXhf cG1lbV9jb21wYXQteSArPSBkYXhfcG1lbV9jb21wYXRfdGVzdC5vDQo+ICAgZGF4X3BtZW0teSAr PSBjb25maWdfY2hlY2subw0KPiAgIA0KPiAgIGxpYm52ZGltbS15IDo9ICQoTlZESU1NX1NSQykv Y29yZS5vDQo+IGRpZmYgLS1naXQgYS90b29scy90ZXN0aW5nL252ZGltbS9kYXhfcG1lbV9jb21w YXRfdGVzdC5jIGIvdG9vbHMvdGVzdGluZy9udmRpbW0vZGF4X3BtZW1fY29tcGF0X3Rlc3QuYw0K PiBkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQNCj4gaW5kZXggN2NkMTg3N2YzNzY1Li4wMDAwMDAw MDAwMDANCj4gLS0tIGEvdG9vbHMvdGVzdGluZy9udmRpbW0vZGF4X3BtZW1fY29tcGF0X3Rlc3Qu Yw0KPiArKysgL2Rldi9udWxsDQo+IEBAIC0xLDggKzAsMCBAQA0KPiAtLy8gU1BEWC1MaWNlbnNl LUlkZW50aWZpZXI6IEdQTC0yLjANCj4gLS8vIENvcHlyaWdodChjKSAyMDE5IEludGVsIENvcnBv cmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLg0KPiAtDQo+IC0jaW5jbHVkZSA8bGludXgvbW9k dWxlLmg+DQo+IC0jaW5jbHVkZSA8bGludXgvcHJpbnRrLmg+DQo+IC0jaW5jbHVkZSAid2F0ZXJt YXJrLmgiDQo+IC0NCj4gLW5maXRfdGVzdF93YXRlcm1hcmsoZGF4X3BtZW1fY29tcGF0KTsNCj4g ZGlmZiAtLWdpdCBhL3Rvb2xzL3Rlc3RpbmcvbnZkaW1tL2RheF9wbWVtX2NvcmVfdGVzdC5jIGIv dG9vbHMvdGVzdGluZy9udmRpbW0vZGF4X3BtZW1fY29yZV90ZXN0LmMNCj4gZGVsZXRlZCBmaWxl IG1vZGUgMTAwNjQ0DQo+IGluZGV4IGE0MjQ5Y2RiZWVjMS4uMDAwMDAwMDAwMDAwDQo+IC0tLSBh L3Rvb2xzL3Rlc3RpbmcvbnZkaW1tL2RheF9wbWVtX2NvcmVfdGVzdC5jDQo+ICsrKyAvZGV2L251 bGwNCj4gQEAgLTEsOCArMCwwIEBADQo+IC0vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogR1BM LTIuMA0KPiAtLy8gQ29weXJpZ2h0KGMpIDIwMTkgSW50ZWwgQ29ycG9yYXRpb24uIEFsbCByaWdo dHMgcmVzZXJ2ZWQuDQo+IC0NCj4gLSNpbmNsdWRlIDxsaW51eC9tb2R1bGUuaD4NCj4gLSNpbmNs dWRlIDxsaW51eC9wcmludGsuaD4NCj4gLSNpbmNsdWRlICJ3YXRlcm1hcmsuaCINCj4gLQ0KPiAt bmZpdF90ZXN0X3dhdGVybWFyayhkYXhfcG1lbV9jb3JlKTsNCj4gZGlmZiAtLWdpdCBhL3Rvb2xz L3Rlc3RpbmcvbnZkaW1tL3Rlc3QvbmR0ZXN0LmMgYi90b29scy90ZXN0aW5nL252ZGltbS90ZXN0 L25kdGVzdC5jDQo+IGluZGV4IDY4NjI5MTVmMWZiMC4uM2NhN2MzMmU5MzYyIDEwMDY0NA0KPiAt LS0gYS90b29scy90ZXN0aW5nL252ZGltbS90ZXN0L25kdGVzdC5jDQo+ICsrKyBiL3Rvb2xzL3Rl c3RpbmcvbnZkaW1tL3Rlc3QvbmR0ZXN0LmMNCj4gQEAgLTEwNTQsMTAgKzEwNTQsNiBAQCBzdGF0 aWMgX19pbml0IGludCBuZHRlc3RfaW5pdCh2b2lkKQ0KPiAgIAlsaWJudmRpbW1fdGVzdCgpOw0K PiAgIAlkZXZpY2VfZGF4X3Rlc3QoKTsNCj4gICAJZGF4X3BtZW1fdGVzdCgpOw0KPiAtCWRheF9w bWVtX2NvcmVfdGVzdCgpOw0KPiAtI2lmZGVmIENPTkZJR19ERVZfREFYX1BNRU1fQ09NUEFUDQo+ IC0JZGF4X3BtZW1fY29tcGF0X3Rlc3QoKTsNCj4gLSNlbmRpZg0KPiAgIA0KPiAgIAluZml0X3Rl c3Rfc2V0dXAobmR0ZXN0X3Jlc291cmNlX2xvb2t1cCwgTlVMTCk7DQo+ICAgDQo+IGRpZmYgLS1n aXQgYS90b29scy90ZXN0aW5nL252ZGltbS90ZXN0L25maXQuYyBiL3Rvb2xzL3Rlc3RpbmcvbnZk aW1tL3Rlc3QvbmZpdC5jDQo+IGluZGV4IGIxYmZmNWZiMGY2NS4uMGJjOTFmZmVlMjU3IDEwMDY0 NA0KPiAtLS0gYS90b29scy90ZXN0aW5nL252ZGltbS90ZXN0L25maXQuYw0KPiArKysgYi90b29s cy90ZXN0aW5nL252ZGltbS90ZXN0L25maXQuYw0KPiBAQCAtMzMwMCwxMCArMzMwMCw2IEBAIHN0 YXRpYyBfX2luaXQgaW50IG5maXRfdGVzdF9pbml0KHZvaWQpDQo+ICAgCWFjcGlfbmZpdF90ZXN0 KCk7DQo+ICAgCWRldmljZV9kYXhfdGVzdCgpOw0KPiAgIAlkYXhfcG1lbV90ZXN0KCk7DQo+IC0J ZGF4X3BtZW1fY29yZV90ZXN0KCk7DQo+IC0jaWZkZWYgQ09ORklHX0RFVl9EQVhfUE1FTV9DT01Q QVQNCj4gLQlkYXhfcG1lbV9jb21wYXRfdGVzdCgpOw0KPiAtI2VuZGlmDQo+ICAgDQo+ICAgCW5m aXRfdGVzdF9zZXR1cChuZml0X3Rlc3RfbG9va3VwLCBuZml0X3Rlc3RfZXZhbHVhdGVfZHNtKTsN Cj4gICANCj4gDQoNCg==