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 55A37C433EF for ; Tue, 1 Feb 2022 23:04:36 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 924FB8D0093; Tue, 1 Feb 2022 18:04:35 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 8D4A56B0178; Tue, 1 Feb 2022 18:04:35 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 74DB38D0093; Tue, 1 Feb 2022 18:04:35 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0072.hostedemail.com [216.40.44.72]) by kanga.kvack.org (Postfix) with ESMTP id 668C46B0177 for ; Tue, 1 Feb 2022 18:04:35 -0500 (EST) Received: from smtpin24.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay03.hostedemail.com (Postfix) with ESMTP id 2B0E8811BF8D for ; Tue, 1 Feb 2022 23:04:35 +0000 (UTC) X-FDA: 79095742110.24.7C6268E Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by imf09.hostedemail.com (Postfix) with ESMTP id 831FB140002 for ; Tue, 1 Feb 2022 23:04:34 +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 211KT7vq015804; Tue, 1 Feb 2022 23:04:28 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=0uXphIa6GUswXfCJ4JyWkJsadDuew5315dZT98nuPuo=; b=aNkJR3E2doD5u4W4l2oB2QAwv+Wei3KL0o6RA1Gl/Ln066CvXP+9pnNXUusnJb3M8j3F UQXQ5UTOy4CI+KO4elCfbyB6xj/gNqLLw18PtlNk8FWq5SZtcY/IVRmL9heSLY7mKOb5 jiEw9yOzcRd+EYs96WHguRB8kareIG8eQrCU2UvA9IkxPw1r+gxA+eAnsSW6D8ROMlMI y1hVoka56CpXJOwi5SaEySDUxsCCh2Ajz8CynTLwOjfOW6I9Zjxhig3HmhRk6V8tPBwE I5BlNiBXyVnYlfd2mUEQkFhJMfR9KT4Lk0bmeBlpTh937zFcTqzlXtINUTKwZFoN6Ms4 oA== Received: from aserp3020.oracle.com (aserp3020.oracle.com [141.146.126.70]) by mx0b-00069f02.pphosted.com with ESMTP id 3dxj9wcb03-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 01 Feb 2022 23:04:28 +0000 Received: from pps.filterd (aserp3020.oracle.com [127.0.0.1]) by aserp3020.oracle.com (8.16.1.2/8.16.1.2) with SMTP id 211N1DHr125556; Tue, 1 Feb 2022 23:04:27 GMT Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11lp2174.outbound.protection.outlook.com [104.47.57.174]) by aserp3020.oracle.com with ESMTP id 3dvwd724mk-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 01 Feb 2022 23:04:27 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VYCH86JMHkUCkIYLONfTs5rcfQ7WzMxosKGMFeNXVyMd+yI4cCFKqC8IzFI/ar7utP2+ih4xfXHy79TCkEJXhlL8KeZ8geeMkvRX8kJMfmvXvDmakrZKA6aTvjGSXhcIaJeWfC5ioAM30w5JA4nUKPM4LMRT2K5o6s4s6zAtieClaM4HvFfybyFolKwnEdjRLK/lC3Pb4MX1fZPeZ2KXHjJZSS6EEhueQ9cXTRlJct7xhUIzzfzG4nlbfmg02GwlisYQoqpj5Vg+1rYcX8hnkpNiX2SIGMXuOgeQat/DdnUmPH0x/QsE9caWmuA1BTESfxm2skLDh4qlAYsOusneCA== 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=0uXphIa6GUswXfCJ4JyWkJsadDuew5315dZT98nuPuo=; b=PqjX/ga8jYdX4eS7YXD205aEHX0gQN+304qNLYu6sniS4vsOfSYs3MwIUvSCH+aNauVLH7TYOp99+kWBamx6z6ggyXw4nnomo1hTQ/DWiJSDCoMi4iGhhx6EJ3OvvF0bF0kIY2vsNnH8xjls4ILA8sQXbMwZBzhkzBs/lJbJwJh21iPfgR06DHV9mZvJmMD/4w3/l1Wg0p+TbZSmENS+JFWL3MgRIMwGEf7A737/iKx559uDG8V7Man6XscVsOBDUh8dY7clbxyVG2jXID4ACAu928d0c++JznvV88mUaTRndWf5fVKlOpW0TU2XHbVDPQFWnAF+wRE0mZwNRjN4WA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; 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=0uXphIa6GUswXfCJ4JyWkJsadDuew5315dZT98nuPuo=; b=NcBkH707cKMu1wyddE1y38BCdR+rrQfSz35tcJ8LjZ/yyBry9Yb0loH6+rCoiamAyHReAQcvnOLLFdKgzeRby9iSS1yjdu5sNHlTOQpccpb4T/5E6gQerwn9uTJAl2t7vHUp7xYX3wO3PLF6caWNzKNNyKn/siZjNThSOJUil7I= Received: from SJ0PR10MB4429.namprd10.prod.outlook.com (2603:10b6:a03:2d1::14) by BYAPR10MB3398.namprd10.prod.outlook.com (2603:10b6:a03:15c::31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4930.20; Tue, 1 Feb 2022 23:04:25 +0000 Received: from SJ0PR10MB4429.namprd10.prod.outlook.com ([fe80::d034:a8db:9e32:acde]) by SJ0PR10MB4429.namprd10.prod.outlook.com ([fe80::d034:a8db:9e32:acde%5]) with mapi id 15.20.4930.022; Tue, 1 Feb 2022 23:04:25 +0000 From: Jane Chu To: Dan Williams , Joao Martins CC: Matthew Wilcox , Naoya Horiguchi , "linux-mm@kvack.org" , Andrew Morton Subject: Re: [RFC] Missing compound_head() in memory-failure Thread-Topic: [RFC] Missing compound_head() in memory-failure Thread-Index: AQHYFuE9TxpAiWmVQ0Gb0dG2fkYpaax9m8OAgAE8JwCAAFrJAIAADuOAgAAEjoCAAAw1AA== Date: Tue, 1 Feb 2022 23:04:25 +0000 Message-ID: <6263ee47-e5c6-4838-2288-fc1bbf4eeb16@oracle.com> References: <30a327fd-ae49-7412-ef77-9ec19480626e@oracle.com> <4786a41f-9048-e255-d48b-3922dd576255@oracle.com> <1a034e3d-3119-2947-843d-f9699af0d03a@oracle.com> In-Reply-To: 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.5.1 x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 662d47e9-a70d-4563-305d-08d9e5d7311a x-ms-traffictypediagnostic: BYAPR10MB3398:EE_ x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: wD2NiKTyVsVcaq24AD91OzR8DrpGnjXNkVoDKcdrFSCRYxsB20ncO54NvZn2gwQXWWaz7cvpzJShHQbe65OjtUwJu6QKuiw4d8x66fqzpvxYvKSTBExnCE8JK45cYOVfb2jYM19A+BZlprksR/IQf0nXLLdysVAXtvqj3pCAXTn3gKVCgR1ffNwf0YL9CysIyGRejEP0vf3eniJStZdH0HRwr2Z1UrnZGhOs18OdqtAVmVbDEKZbx2Q+3lkHJit4ZmulLhSpC0Br4bXn94Y5IG7+d7rTI4h+/zMBs7Kauttlv5cUPq14tkc+M/JT8DCep07G2BgZw+uam0Aoxd68dpmRctwpDsFwlcUImOCekb+CAtc8E+Q++8Tz+LiVvOY0Ss0bsM+8Z9XgeIsNFrJcbhlqL+Ubc2VbN9XlBioQtgKZk6fRAyoTs0OF+8aVMkQKHKXAVVNNgj97pStuc1NPAA1zT7Ptw3fEgK/6JKd37dOAJyOiEhwjGq07ygO4j5KXJumYl5viOjuODozlaEvssrJCOUieIlS1N/ONMA7jcvJ2hUrZ9WrmDwpwfEtL/SKSvilcTUnw9EHB+uVUGGO8xSDIvEOLolR7fQ5VPQ5/dXITFQXHh8sViI5wUmNt5J/JBSS2np4aw8lMvA4+vz4X+NT+wD8kDkafTGoh2UruBafmtRw5dj9z7CVTHZHBsZXKSKhEdY1du6XS3BguWW74/nAyNbq996rEFgxv4gQHdhrljgttDNGJ9JBxbAEis8ANxCRoQhjUWQQSZKiWSjjEBV44H23PC7R6gaULCUMmolALZxa1twjtf7Z4VQRL9ROZ/eURvfh+Ni5PdNbVu/NTwTDV6vY6RbB0nmgrA17v0tE= 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:(13230001)(366004)(44832011)(38070700005)(31686004)(966005)(5660300002)(4326008)(54906003)(38100700002)(31696002)(110136005)(6636002)(316002)(66476007)(8676002)(8936002)(83380400001)(26005)(6486002)(76116006)(36756003)(64756008)(66556008)(2906002)(2616005)(66946007)(66446008)(186003)(508600001)(86362001)(71200400001)(122000001)(6506007)(6512007)(53546011)(43740500002)(45980500001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?cldROFZscUFXbXpNbWhoaFZxb0s3emhnbk5CTTN1S2M1VFJSMlo3ZklnRk82?= =?utf-8?B?bjdpbHJJVml5dkxVUFpGa2hicUtQamdGdzNkemwydnYzeFg5dnBmS3Zjd2tq?= =?utf-8?B?VkpjekJiK0djL3hIcmU3SWE0TlNpdFJiaXE0Z0J3MmkwYXoxNnpRbkVMa05F?= =?utf-8?B?ZkwraWF0ay9qdm5EWUwwY3hXOXZQcE5CNHZYVmNCZHpoQ3JHTFl2ZVc1OWVG?= =?utf-8?B?d0wzRHc4cmI3ZW1UcHp5b2lYb3dFT05TSERTc2o5WGdTOHNYa051dU9uOUZy?= =?utf-8?B?MU9FSWtLenM5R2Y2YVV2c0FGUmhOMFFscVE5cGZCc1RDUkVJaDI5b3E5Vll1?= =?utf-8?B?azlZb2VBSUZXTVpHNjlhcnJ5MmZPY1lJSmhMT2hrSndzRmVTK0szSDZOSEhs?= =?utf-8?B?L3kvU0lxTVlhdUp6MVBpdWdlZmw0OEZFYlNTQXN6T0RjVjBnSjE5Qlp5U2ZL?= =?utf-8?B?VTlkWlRyL2tpYVluTmpvczNMY2UxVnBud093QmNSY1NvbkN2OHphOXViYTZ3?= =?utf-8?B?TXUxWENUY2tzS0cyeSttMDA3YXlZajFUd2VRQ25YRWpxamdVL1ZpWnJrV1Ay?= =?utf-8?B?UWdqaFVyV1JFYmtFOHlKTitYTEVIKzlTRTU3dmFZTVNBZkViM0M2YWpuVHZw?= =?utf-8?B?TndZOWhQNHcvaC9vRU9MNWFoKzZxUzQzbGlRMWVGRVN6K1ZjbXJWUHlyTUQw?= =?utf-8?B?WnRRNllDbnJ3eHBhV3hKWEdQOXNBYUFwTVRRUGtLZGZNVGVNTjNHR2NMbU8y?= =?utf-8?B?b2NzOTNKN0VWODlEWXRPRC84TnVPdWFyNFFJQ2NCWmlYQnAyUjBCK3MxN2xK?= =?utf-8?B?T3YvUmt5dXUrcU9DZEtkMlhSRkhDOFg3N2hQVUx4aHFzdEpiRUo3blNDTW5W?= =?utf-8?B?dnpqaVRiVjgvTkRKV0xxN2hySlF4TjNzT1JYU053WUI1cVJ5UGVPNHlFQTM4?= =?utf-8?B?VFoyQmdEZXJCdG1tYzlERUhLaG4zSEVLUVVRZGlPN1pQeXdKVmkycElqQjJR?= =?utf-8?B?OENqOTE3SE5WeDN3OGZ0QmxCaWYwK1JkYmFYZmtrWkhjWVFBeFhwUzBiZkRG?= =?utf-8?B?ZTd1a2NPWU5iWElaOFlhWHMvemx5cWlsenRXcGxmUUF1aEpxWmhrd3dlYk9C?= =?utf-8?B?eDdZMTh3RVBEVWFHV1UwSksxeGxzeHFqWGVGMjZsWlIyQ1k2U1ROOURjODdF?= =?utf-8?B?aXI3amRZNXZ4RlgzSDRHWENuZEhYdWxsR1l5clBsdmU3ZEt6c3pnMEZHU1dS?= =?utf-8?B?QzZVcjEzNHRpWFo5cXh0V0VoKzIrdnp3eW9OSC9tOXdvWG5rQjNMa2dJRGdT?= =?utf-8?B?T2ZlRm1qS3VWZnYvU20zRWVCZXIyWnpUeWxiT245RHFWUmFYcEFVYmFtQnIx?= =?utf-8?B?UHRmRDFPWW9sQXBhTFoyLzNpVG9QdzNrdEFaN1o1ZXllOGJ1NzVzckpVb295?= =?utf-8?B?cXQyV0xYcU9PdzdBbWxUNnFqZUJmM21xRkFrdm84VXpkNUVyV1hyR3dpQThv?= =?utf-8?B?ZEU2c21UZy9ZeFdzaGhtZThiQ0tZbXFIVUdOMVdaa1lianc0ejBDVmhZc3Fr?= =?utf-8?B?Y3puRmpBQlVTSENRUmNicTF1SnUrMWtGdkYzQUEyWTNPeGN5UldvYzd1bUUz?= =?utf-8?B?WWRPL3IxZmF1WlRzcnhuWG5PYXlaRUs4eStwSnJYd08xM2FJSlNrWS9id094?= =?utf-8?B?WnlmbHhyTW5DRmlpczZXSi96SkZQZ2V5eG1HY3NsSFpUL1UyNWx3d3pMQVhn?= =?utf-8?B?QjNLbHBGVHdEZXhFLytZVmVrcG43c1ZoRHdzTGY3MWFGNWNJNjFmSW5SS3Mv?= =?utf-8?B?QTJDWlRRWit1aGdhOHpzSXlPQThqU0N1US9WMyt1LzVvUElVQkZmcjlEN1J2?= =?utf-8?B?VjJwV3VqVUVKbkZVdGVjN1c2V1MwTGtlNHVrWklGNjVwaE14dDM3WEV6VjFu?= =?utf-8?B?b04zYjhZREEvWjdkdi9FcEVURkp0TFAvYnFnWHZkZ21qN3duL1pmTnA1Tk1p?= =?utf-8?B?OGdtNWRPcjlRL3pFZlhGNjVJNUYreXFIaTZlRkUvTjloOUdQeWhRbDl3ZDgz?= =?utf-8?B?a3dUeFp6TjJmOWVnM25TdzlYVGtwbFdyVkkwNzFrUGhtdndzN0p1K3RFcEt6?= =?utf-8?B?c3J1ODFudFVsSXhXR0RlVUVKeisySEh3WmhxQmEyT0V0TjJFSDZlNVNMUHlh?= =?utf-8?B?Z1E9PQ==?= 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: 662d47e9-a70d-4563-305d-08d9e5d7311a X-MS-Exchange-CrossTenant-originalarrivaltime: 01 Feb 2022 23:04:25.3071 (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: N2O/EdVHXHQdtU1Sbf52RFyxEH6FteD5lC16SHGB7+cAqlrIVf6RK/ARdNnCgw1/LokABbVZz/KK+vtZmsELbw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR10MB3398 X-Proofpoint-Virus-Version: vendor=nai engine=6300 definitions=10245 signatures=673430 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=974 adultscore=0 suspectscore=0 malwarescore=0 bulkscore=0 mlxscore=0 spamscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2201110000 definitions=main-2202010127 X-Proofpoint-ORIG-GUID: V3I09ItRg_7DupX_7xGo_0t4re-yOQqR X-Proofpoint-GUID: V3I09ItRg_7DupX_7xGo_0t4re-yOQqR X-Rspam-User: nil X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: 831FB140002 X-Stat-Signature: xh7u5o651hyczws5r68z9tfpkoby7u67 Authentication-Results: imf09.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2021-07-09 header.b=aNkJR3E2; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=NcBkH707; spf=none (imf09.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: 1643756674-972006 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000001, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: T24gMi8xLzIwMjIgMjoyMCBQTSwgRGFuIFdpbGxpYW1zIHdyb3RlOg0KPiBPbiBUdWUsIEZlYiAx LCAyMDIyIGF0IDI6MDUgUE0gSm9hbyBNYXJ0aW5zIDxqb2FvLm0ubWFydGluc0BvcmFjbGUuY29t PiB3cm90ZToNCj4+DQo+PiBPbiAyLzEvMjIgMjE6MTEsIEphbmUgQ2h1IHdyb3RlOg0KPj4+IE9u IDIvMS8yMDIyIDc6NDYgQU0sIE1hdHRoZXcgV2lsY294IHdyb3RlOg0KPj4+PiBPbiBNb24sIEph biAzMSwgMjAyMiBhdCAwODo1NDozOVBNICswMDAwLCBKb2FvIE1hcnRpbnMgd3JvdGU6DQo+Pj4+ PiBPbiAxLzMxLzIyIDIwOjI5LCBNYXR0aGV3IFdpbGNveCB3cm90ZToNCj4+Pj4+PiBVbmxlc3Mg SSBhbSBtaXN0YWtlbiwgeW91IGhhdmUgdG8gcGFzcyB0aGUgY29tcG91bmQgaGVhZCBvZiB0aGUg cGFnZQ0KPj4+Pj4+IHdoaWNoIGhhcyB0aGUgZXJyb3IgdG8gY29sbGVjdF9wcm9jcygpLiAgQW0g SSBtaXN0YWtlbj8NCj4+Pj4+Pg0KPj4+Pj4gLXJjMiBhbHJlYWR5IGhhcyBhIGZpeCBmb3IgaXQ6 DQo+Pj4+Pg0KPj4+Pj4gaHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvbGludXgtbW0vMjAyMjAxMjkw MjE0MjAuUGdCSVptLXE5JTI1YWtwbUBsaW51eC1mb3VuZGF0aW9uLm9yZy8NCj4+Pj4+DQo+Pj4+ PiBFYXJsaWVyIGluIHRoYXQgZnVuY3Rpb24gdGhlcmUncyBhOg0KPj4+Pj4NCj4+Pj4+ICAgICAg cGFnZSA9IGNvbXBvdW5kX2hlYWQocGFnZSk7DQo+Pj4+Pg0KPj4+Pj4gU28gdGhlIEBwYWdlIHBh c3NlZCB0byBjb2xsZWN0X3Byb2NzKCkgYWxyZWFkeSBpcyBhIGhlYWQgcGFnZS4NCj4+Pj4NCj4+ Pj4gSXQncyB3cm9uZyB0aG91Z2ggOy0oICBZb3Ugc2V0IHRoZSBIV1BvaXNvbiBiaXQgb24gdGhl IHBhZ2UgYWZ0ZXINCj4+Pj4gY2FsbGluZyBjb21wb3VuZF9oZWFkKCksIHNvIHlvdSBzZXQgdGhl IGJpdCBvbiB0aGUgaGVhZCBwYWdlIGluc3RlYWQNCj4+Pj4gb2YgdGhlIHByZWNpc2UgcGFnZSB0 aGF0IGhhZCB0aGUgcG9pc29uLg0KPj4+DQo+Pj4gSW5kZWVkLiBUaGUgcmVzdCBvZiB0aGUga2Vy bmVsIGluY2x1ZGluZyAgcG1lbSBkcml2ZXIgc3RpbGwgZGVhbCB3aXRoDQo+Pj4gYmFzZSBwYWdl IG9uIGNsZWFyaW5nIHBvaXNvbiwgYm9va2tlZXBpbmcgZXRjLiBTbyB0aGUgSFdwb2lzb24gYml0 IG5lZWRzDQo+Pj4gdG8gYmUgc2V0IHByZWNpc2VseSBvbiB0aGUgcG9pc29uZWQgYmFzZSBwYWdl IHN1Y2ggdGhhdCB3ZSBwYXNzIHRoZQ0KPj4+IGNvcnJlY3QgJ3BmbicgdG8gc2V0X21jZV9ub3Nw ZWMoKSB0byBkaXNjb3VyYWdlIHNwZWN1bGF0aXZlIGFjY2Vzcy4NCj4+Pg0KPj4gc2V0X21jZV9u b3NwZWMoKSBtYWNoaW5lcnkgbWFrZXMgbm8gdXNlIG9mIHRoZSBIV1BvaXNvbiBiaXQgYXMgZmFy IGFzDQo+PiBteSByZWFkaW5nIGdvZXMuIEFuZCB0aGUgUEZOIHRoYXQgaXMgcGFzc2VkIHRvIHNl dF9tY2Vfbm9zcGVjKCkgaXMgYWxyZWFkeQ0KPj4gdGhlIHN1YnBhZ2UgUEZOIHRoYXQgZXZlbnR1 YWxseSBsYW5kcyBvbiBzZXRfbWVtb3J5X25wKCkvc2V0X21lbW9yeV91YygpIHdoZW4NCj4+IGl0 IGNoYW5nZXMgdGhlIGtlcm5lbCBwYWdlIHRhYmxlcyBtYXBwaW5nICh3aGljaCBhbHNvIGRvbid0 IHVzZSB0aGUgcG9pc29uIGJpdCkuDQo+Pg0KPj4gSSBzdGlsbCBjYW4ndCBzZWUgaG93IGRldmlj ZS1kYXggbWFjaGluZXJ5IG1ha2VzIHVzZSBvZiB0aGF0IGJpdD8gQXQgbGVhc3QNCj4+IHRoZSBv bmUgd2hpY2ggY291bGQgdXNlIGl0IChjbGVhcl9tY2Vfbm9zcGVjKCkpIGRvZXNuJ3QgYWN0dWFs bHkgZ28gdGhyb3VnaA0KPj4gZGV2aWNlLWRheCBudmRpbW0tc3BlY2lmaWMgY29kZSBvbmx5IGZz ZGF4IHdoaWNoIEkgcmVpdGVyYXRlIHRoYXQgdGhlIHBhdGNoDQo+PiBkb2VzIG5vdCBjaGFuZ2Ug YXMgdGhlcmUncyBubyBjb21wb3VuZCBoZWFkIHRoZXJlLiBBbSBJIG1pc3Npbmcgc29tZXRoaW5n Pw0KPiANCj4gZGV2aWNlLWRheCBkb2VzIG5vdCB1c2UgdGhhdCBiaXQsIGJlY2F1c2UgdGhlcmUg aXMgbm8ga2VybmVsIG1lZGlhdGVkDQo+IGFjY2VzcyB0byB0aGUgYmFja2luZyByYW5nZS4gSW4g dGhlIGZzZGF4IGNhc2UgdGhhdCBiaXQgaXMgdXNlZCB0bw0KPiBkZXRlcm1pbmUgd2hlbiB0byBy dW4gY2xlYXJfbWNlX25vc3BlYygpLiBKYW5lIGlzIGluIHRoZSBwcm9jZXNzIG9mDQo+IHJld29y a2luZyB0aGlzIHBhdGguDQoNClRoYW5rcyBEYW4hICBTb3JyeSBmb3IgY29uZnVzaW5nIHNldF9t Y2Vfbm9zcGVjIHdpdGggUGFnZUhXcG9pc29uIGJpdCwNCmFub3RoZXIgbG9vayBhdCB0aGUgY29k ZSBsZWFkcyBtZSB0byByZWFsaXplIHRoYXQgcGVyaGFwcyBmb3IgZGV2ZGF4LA0KdGhlIFBhZ2VI V3BvaXNvbiBiaXQgaXMgbmV2ZXIgY2xlYXJlZCBkdXJpbmcgdGhlIGxpZmUgdGltZSBvZiB0aGUg cGFnZS4NCmFuZCB0aGF0IGlzIG9rYXkgc2luY2UgdGhlIGtlcm5lbCBwYXJ0cyB0aGF0IGRlYWwg d2l0aCBkZXZkYXggcGFnZXMgZG8gDQpub3QgY2FyZS4gIEFzIGZvciBmc2RheCwgZnNkYXggdXNl IGJhc2UgcGFnZXMgYW5kIEpvYW8ncyBjb2RlIGRvZXNuJ3QgDQpjaGFuZ2UgdGhhdCwgaGVuY2Ug dGhlIFBhZ2VIV3BvaXNvbiBiaXQgd291bGQgYmUgc2V0IHByZWNpc2VseSBpbiB0aGUgDQpwb2lz b25lZCBiYXNlIHBhZ2UuDQoNCnRoYW5rcyENCi1qYW5lDQoNCg==