From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: smtp.subspace.kernel.org; arc=pass header.oldest-pass=0 smtp.remote-ip=52.103.13.32 ARC-Seal: i=2; d=subspace.kernel.org; s=arc20261015; a=rsa-sha256; cv=pass; t=1794045062; b=xGZJrGFpSUHvySV7vmv+Wp0MMbvzbWNQw1FTF/UwBg1WB9sw4FqwWj1F15u7LzoRYt7F AJ213vAoAJlkovD/uqXCbQEkbClASupoTjSLDKY1uSgQiQUVTNBtX9U4HoCV7qMm4o6qr IdO/eQEzkTCebAq8gB+26d6aa5Qz6ZTGyF6TCVqD3GkdFk1YEeL5Laeu3Q9v2yBpQLhXV 2HOSuGnpWmS+5tNn4hp2x7blwXVemAs/SVk1bEnCFe8YmSs0ks/cnpdkyYM0ttj5FLILh B/ydbeH2tVww5RA3QWtq5Md4XwbvTBs+6sjqATvd9WEyCrBpBd2n732IuBSOrL1TyGQ== ARC-Message-Signature: i=2; d=subspace.kernel.org; s=arc20261015; a=rsa-sha256; c=relaxed/relaxed; t=1794045062; h=DMARC-Filter:DKIM-Signature:Received:Received:From:To:CC:Subject: Thread-Topic:Thread-Index:Date:Message-ID:References:In-Reply-To: Accept-Language:Content-Language:X-MS-Has-Attach:X-MS-TNEF-Correlator: x-ms-publictraffictype:x-ms-traffictypediagnostic: x-ms-office365-filtering-correlation-id:x-microsoft-antispam: x-microsoft-antispam-message-info: x-ms-exchange-antispam-messagedata-chunkcount: x-ms-exchange-antispam-messagedata-0:Content-Type: Content-Transfer-Encoding:MIME-Version:X-OriginatorOrg: X-MS-Exchange-CrossTenant-AuthAs:X-MS-Exchange-CrossTenant-AuthSource: X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: X-MS-Exchange-CrossTenant-Network-Message-Id: X-MS-Exchange-CrossTenant-originalarrivaltime: X-MS-Exchange-CrossTenant-fromentityheader: X-MS-Exchange-CrossTenant-id: X-MS-Exchange-CrossTenant-rms-persistedconsumerorg: X-MS-Exchange-Transport-CrossTenantHeadersStamped; bh=zBwvQuwcj0mfl8EBnu6QvKvCWUMEU9O0GdKwg08JCAY=; b=NzJtF5lk3tuMc6lk+O81KvfUkm3puU9JQF8qq4dMaHjgoQGK/xeSZcXSHfbzQBQALjlD tD0Vjp6lT40Pp7751SHlDgVzF39qBuQ3kgPBFHadf2ny72tnsFtRzQylQvCrPE/1t+eNG XJpcg5IYgmAVUu1O7bIaRzNHxNAv0r/fQWxGnkyRGdSt4DZiDBeHoQv5DiYrbNmxwpB3Z Hn49W4LHTVNnW7GUPDHR3e5zIZ0OtfQ9FqHtEwms4NYpWMgN35x7hcD/H2PsbB3XIaa9F 2qs5wvALovQo2RFZScJOtCTdL7Um4MW1gMW+Fb5M5MY9WtFX9j/JhJV/Y0hLYG0UMJg== ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass header.from=outlook.com; spf=pass smtp.mailfrom=outlook.com; dkim=pass header.d=outlook.com header.i=@outlook.com header.a=rsa-sha256 header.s=selector1 header.b=F4hTaEJZ; arc=pass header.oldest-pass=0 smtp.remote-ip=52.103.13.32 Received: from DM5PR21CU001.outbound.protection.outlook.com (mail-centralusazolkn19011032.outbound.protection.outlook.com [52.103.13.32]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (secp384r1) server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 003A4606D804; Sat, 7 Nov 2026 09:51:01 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.2 smtp.subspace.kernel.org 003A4606D804 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=outlook.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=outlook.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key, unprotected) header.d=outlook.com header.i=@outlook.com header.a=rsa-sha256 header.s=selector1 header.b=F4hTaEJZ ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=uMEpm0X3i0fWLGSEkP/acB0nDIPkhSGWGEQWkZzS6x9j/kgXP+m/eZ+rbaNhGX3ptM9sNPPvQHG/qstdvksD06KwdifdfQJ6AsSyoDTgnEvp3Jh/D6cDlR12sZzucpT0q3+/agRq4EEJylA95LJUkzxCTMP5fq1TO8esWBauPR+1TIvbXgyGLkS8+adJpyFzIk+1XZ2LFssOgmvqJ3C9S8yCD99VwGhNNyaGXWUkoufGrcSZnRRT9q4ZuwZJg5jO1WleTY5pqHeSOogLYW7hnEjJ4gr0PxXdp9Rq6Ek3ONBBbGYy2MxxRQ0iqfMaTaSKkXXVl6glnvcN1LbvVcc5zA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:MIME-Version; bh=zBwvQuwcj0mfl8EBnu6QvKvCWUMEU9O0GdKwg08JCAY=; b=PfEVJfHwH8Pz+ajB0VSTQGX+HSNd5tZfHGlsMgFzgzXQWVwZYGyVCXnj6GFn0d5FC9Pms2/k+Oo0saKfece/lgdCD//WEAPOFs9X1KXYcaL5AyX53f2N6ogOJBYZT7iDs7klDyiMQGFK1Hd0H1nXGGzSXatsGiugQ3nnjnJKimLfLk/577vBtaC0XKk79mo0/jVhwJdRWud/HPYnKO2kQJdPYYbULapKKVG+o+9vFYFQYNE1U98z1rqEFUBRR4ECB3bO9bP6cLNXtY4mlaTxvmJXwI4CBjtAvlM42AN4Yv/gRniN5q205FNE+A/NKQ7h8XPFNMw67RO48wVRDJBGTg== 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=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=zBwvQuwcj0mfl8EBnu6QvKvCWUMEU9O0GdKwg08JCAY=; b=F4hTaEJZiaCsSmrG6tivroZvSlskBbYpZOMLYEL9okhpPe1qW3js9WDjmlqucUie8yXiN3ihTEIiKiRPUe6dR+6HPb/rydbrk72u/+C/VxY4BJWaZXuchqtFeqpHo63eTWPpLrDW63XZi9Sj5nIr3C67pu8Sy014fb0n6o2t6mrWgDxEtfOTvy9YJWaKBgXDdQ5MTTjgHjCtL+ubLg5PTHIG/WTR/KqY5ngoeKkv+Fo0M3LIz7DMXl12Hk9V1cvX3/vKOrUob05H+QZk+qK5OD2Xcqo/tDwXDKdDOcxlSmzxbbUpZ3C3TQAbowUOQi+l5pfsizl8UIRWv8I88yM9hg== Received: from SA3PR05MB10385.namprd05.prod.outlook.com (2603:10b6:806:39d::17) by SA6PR05MB10700.namprd05.prod.outlook.com (2603:10b6:806:409::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.592.11; Sat, 7 Nov 2026 09:50:30 +0000 Received: from SA3PR05MB10385.namprd05.prod.outlook.com ([fe80::e22f:a0f5:fcb0:9b0d]) by SA3PR05MB10385.namprd05.prod.outlook.com ([fe80::e22f:a0f5:fcb0:9b0d%6]) with mapi id 15.21.0592.010; Sat, 7 Nov 2026 09:50:30 +0000 From: Yingjie Wang To: "Martin K . Petersen" , "James E . J . Bottomley" , Jens Axboe CC: Yingjie Wang , "linux-scsi@vger.kernel.org" , Bart Van Assche , Yang Xiuwei , James Houghton , Pavel Begunkov , "io-uring@vger.kernel.org" , "linux-kernel@vger.kernel.org" Subject: [RFC PATCH v3 6/6] scsi: bsg: release io_uring requests from end-I/O Thread-Topic: [RFC PATCH v3 6/6] scsi: bsg: release io_uring requests from end-I/O Thread-Index: AQHdbp1sj7mt/bXLgkqLdFaNrIfuDg== Date: Sat, 7 Nov 2026 09:50:30 +0000 Message-ID: <40c9297f2f2d3bb758837863bf002b1ac04fddc3.1794045010.git.x-professor@outlook.com> References: In-Reply-To: Accept-Language: en-US, zh-CN Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SA3PR05MB10385:EE_|SA6PR05MB10700:EE_ x-ms-office365-filtering-correlation-id: 5c3db53d-a55c-433b-e21f-08df3cb48f59 x-microsoft-antispam: BCL:0;ARA:14566002|8060799015|19110799012|24021099003|41001999006|31061999003|22091999003|24121999003|15080799012|16051099003|8062599012|12121999013|38102599003|4140399003|25010399006|10035399007|12091999003|1602099012|40105399003|53005399003|102099032|3412199025|440099028|4302099013|26121999007|1710799026; x-microsoft-antispam-message-info: =?utf-8?B?UU5CS3E0Y3h5RG4vUEJHeU9JTFRsdXVPK2NZaTM1Z3dxVGJ0TDIyQ1k3OEpa?= =?utf-8?B?aG1xVnpsb1Z2UWZrTmRnSVhSR3VRM3RmZi85UmovNmI4TEhlM3ZwdUdxV3dO?= =?utf-8?B?UFBlSEkweFIyeTRSRE1RQk03ZzVySkhuT0QxV1dtUnlRblRFMEk5WEQ4R3Zy?= =?utf-8?B?UzlERkxiMTRlazQ4OWhlWnZmdi9aUVJOSVFaV3liYU91bDJLZnlpaTk5aWwv?= =?utf-8?B?d3JvT25GNHdnNmROOHpIUitBdFRXcnkyRkNrc2l3dWlrZ3BQM2MyckJmSWNG?= =?utf-8?B?NUFHdFRMbU1OOTM1N2NQUmpoSkE4TnBldXJhTlhZNFFZZG1iRmFxZThJYkM3?= =?utf-8?B?T1p4c2ZhbHhnczMydGZ2b21PRHQydXA1eEFTSDluaWxPMDc0L3FKK2VVWllO?= =?utf-8?B?aXVtdmhWdm94TFRLNTNnbG51dlZLQUNEWnpQTHArQW9ycTVQVTI4cjFzUnFU?= =?utf-8?B?OFM0bTFjbENQbGVudlZIUkhYT2pLUkFVK0NVa2o1L3g5NWdaU0xocml5R0NW?= =?utf-8?B?THcvVXVRd0ZFc0QwWHIxMXVPUlRZNzlSL0JNMC9Zd1k3UEJkUG8zdllLcXhm?= =?utf-8?B?V0hKYjM3Tkd6bytXdll0NU5pM0R6bm9jZlphY2lKV3ovVDJ4REdTbmdqUmg3?= =?utf-8?B?b3BkTzE1bVpSSjNkck0rWEpJQlhWd2xmN0NVVkhZU3MrNWJaZTh5QmcwbG9E?= =?utf-8?B?d0VPV0lTZmJZR0tDbDFFWm9aRTM5T3NPWHo2K1NTN0JhT0VFYUVVdHlISWov?= =?utf-8?B?UjlFL1djNitYZ1pDWkplZmJiSU9GTHJ4WWtsbEZoVUtJZ1AxR2ZuQWNrelhM?= =?utf-8?B?YmRKR2ZzNUc1ejY1UWFndExyWFZMTjVyTzdkLysxOTBMUEtXNjRUZWNCSHQx?= =?utf-8?B?NU5MVmU3QzYxRE5NK1V0S1RyTXh1VHR0V2tMSEIyZ3cvd2JIR0V0bXBVbktw?= =?utf-8?B?L2taVmZhdXRCNFJPd2ZZMUJjT2VmZE16ckRuTDhrRFBIZTE3K3ZLRm0rbTN4?= =?utf-8?B?a0tJSlV6bDc1K1RFekR6b2xzam1JMDlGMkR5eHdrblh5L0Q3YmhtWlgxcE01?= =?utf-8?B?dlJkc1M4T1lNQlRsZGdVWkxZN0NrY0swa24xclJpSDZvMEZiOStSbHhXa0FO?= =?utf-8?B?VHVPMkd5STZLZXQySjJTdmNQcEhkaTd5MkxUU0NhcXhxcFg5T21mc1BhWjNJ?= =?utf-8?B?OHFzVEl6QVZhYlI1TEtEMGpGcloxT0FhNlZQZ0lYRGVTcjRrVUoySG9sSkZo?= =?utf-8?B?NW11QzdsZWN4TitXQi85bnBQSVN6SnpmMmxad3g2UXhJbmY3emhEVG0rR3VS?= =?utf-8?B?dGRodGpuWUI2M29hbU9BVk9JUy9CVlU3Tm5uZjdtWUEwNTIvY2l1Mlg4WnB0?= =?utf-8?B?Q0R2V1Vua3hmOURlYmtCRDdRVmgyckRYN0NjZUNXQVh0SlNKcnhRRjBGTm5V?= =?utf-8?B?WEdxbGFWWXlHUG1jOTBCQ3VQRlgxdWJKYTh1U1pSRUVkUGFYUmFuS25ndWxS?= =?utf-8?B?QlNFUitWZnU4RmpwMlpmc2VUVjBRdU8weXJoWGZhQ2F5SlJTZHZSYlBBTjVp?= =?utf-8?B?MUhLbnRYWktoeFBvNGxHeGk5dFBCUmRRSnVMWEdLc3lQdUV0T3dYZFV1MmY0?= =?utf-8?B?RzB4cSt1c2EzSGFaQmwvM1J5dEVRQUlNK3NWamN2cWZwVkJnK0xpQ0lzTGVD?= =?utf-8?Q?X7k5WPZgBt8EXv+QQ4LN?= x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?RUVrNlR2ZGNkVkpuMTI1K0FTbURjRW9TWkx5TERGOGVTaUlGalF0MTNvTE1z?= =?utf-8?B?UXFCVDNxZW1NRzZvRTAvNHVLNHBhNXdpaUVGNVFFaThicjh2WUV5cjM1ZTZV?= =?utf-8?B?RU9Ocm1Qc3dtMXRXQVNtSGVocmkremllczd1M3hxcTFBZUNTUjZjeEtyTGlh?= =?utf-8?B?bzRvRGpsY240Y0YxUGt2WCsrZkdNT1ZLOElaOVZ4ajFBY3Q4L2xUSFdLcG96?= =?utf-8?B?cS9uMmhpN1lyd2gzVFNZNEwxMWpqanp4NnFHTTlWNVJLNURIRCtvT0gxczZu?= =?utf-8?B?K2ozV29XcXJKYmJ2bUtZaGJZUmg3Q200WlU3aUhYeDYyYnpjUVdhZFVJRXli?= =?utf-8?B?OEJYeE9MdWVSeEFsdEc5WnZEQ1QydHdKaCtOMmR2U1IrbWFNTXRDcXVKd1lC?= =?utf-8?B?VDNvT0FIZ2pCWlpFTjROam9KUUlIbEhHdkRKejZIMFpHUXJsbmw5UkxxTC9u?= =?utf-8?B?WWltUTR5Yzd6QlFyZnVWU1hSeDc3U2Z3ZEtqZ1AzR3pCYndVeEF3L2dyMnJV?= =?utf-8?B?RkF0djZDRXZWcnRTV25qcjdRQ0F4TmZSSUhSK0NzbTVqd000MHFWVVVhL0pL?= =?utf-8?B?cUFtc2FFT29veW5xcFhwOEpaU3NMR2FHYlVaRFJIbHZmbk1RVzNZYUFRaG1Z?= =?utf-8?B?dEJ4SmM5b3Q1RFNUbWFPeXJEUnNQalNKckdqK2wwSjlWV2JZcW8yOFZ5eGFy?= =?utf-8?B?ZkdkMjJDL0FvTG9GU0FXcVlyMjFSWWFyd0lMY2dMalRpU1UvOG5yVi9za0dZ?= =?utf-8?B?YXI0c0FyQndjdFR5U2NtWjcwb3EwR3JiVzdhVkZndU9hazgzRmRRaExEL0tU?= =?utf-8?B?WVJjazBrNWFOSVBub2dwWitzYWU4UjdDc2dMRjIxTkhtMUROZlQ3TUF2eXhO?= =?utf-8?B?U3BqRHBXTExxNEV2dXRlWEtHT3pQU1YvVTJtZlcvd2pyd1p4MlA3UHl1a1Yy?= =?utf-8?B?SnpMcTFKM3laTklNTWJOWGdXWjdjaVFiaGxXSCt6d0ltdjJ0Q1owYXU3Uk5w?= =?utf-8?B?NHBUWGhVRVdwVzM0VWhid3ZhV0tmNlY1WVpWdGt5Ukp3eEptWGVIQjRkQ1Iw?= =?utf-8?B?V0oyV3c3VVAyUm1obWNtMDZqRnI1NDVjWGtaUmlaUDd1eHErRGtvdzlRaXBw?= =?utf-8?B?RWY0U0JyTStnQjBtVS9IMXB5cWxYOHdQT0RxNGsyVmJvUGNNcUlOVm4ycXVa?= =?utf-8?B?WG14UzJ5RzA3K1B1R1Nya3dIdGw0Zjg0Ymxnb1V0UjJybktGUWo5Sm54eUpU?= =?utf-8?B?TVBpS1ZlbDBqYXd3YkhlV3NPVDFzSlFwcDdLQVFCTjhHVFNONGdPV0o5OU5B?= =?utf-8?B?VXd4WWtlREQ4K1NVMU4zelFiK3FhRGowWjNVa3B1WVBZc3VXNWtDT2dnL2No?= =?utf-8?B?ZkZsLysydVVORmZ6VkNhdndsRjQrcmdKRE9WSDN2dE1VZzR4WEFRL0Q2U2dK?= =?utf-8?B?aEZaczFTZGVzYmRvNUlPVXFySXpjYStjaHlseTRObHRwVElad29STnRLdmty?= =?utf-8?B?V2w2RURFN1JadmdOMXFqbHdQVm1SSGcrUnhRZ25PR2o5MkpwK1BiWG5zeFZa?= =?utf-8?B?OFdkdWVTYk9YQ0pYNERrU242eDFJSmliNGZleUlvNHA3bExtUGNFQVl2b1Zl?= =?utf-8?B?aXFKMnNTakUxYmF6TDJFVEZieElnYmRvR0M4K2h0RVNVU1FTTVNjd3JVdVVJ?= =?utf-8?B?YmVsMkUwSmVIMjQ1NnpYS2JtelhWTXI5Sk5kRXRUeUh4YWxqNGZIWHI2NVZ1?= =?utf-8?B?Q0FMZ0Q4bHkzdXJXMUE5UHA4TWRxL0UyNWN0d0VEZkE1bEtUWCs4V20wallH?= =?utf-8?B?YlFNalN1OTJOQTdxTmgxWGtaWTVVNU9GRVhrbXVEOEpBQjFGamxWK09tRXdz?= =?utf-8?Q?2w7djjeBCF+Pp?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list MIME-Version: 1.0 X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SA3PR05MB10385.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-Network-Message-Id: 5c3db53d-a55c-433b-e21f-08df3cb48f59 X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Nov 2026 09:50:30.1997 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-rms-persistedconsumerorg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA6PR05MB10700 RnJvbTogWWluZ2ppZSBXYW5nIDx4LXByb2Zlc3NvckBvdXRsb29rLmNvbT4KClRoZSBCU0cgaW9f dXJpbmcgZW5kLUkvTyBjYWxsYmFjayBsZWF2ZXMgY29tcGxldGVkIHJlcXVlc3RzIGZvciB0YXNr IHdvcmsKdG8gcmVsZWFzZS4gVGhlIHJlcXVlc3Qga2VlcHMgaXRzIHRhZyB1bnRpbCB0aGF0IHdv cmsgcnVucy4gSWYgdGhlCnN1Ym1pdHRpbmcgdGFzayBmaXJzdCBmYXVsdHMgb24gbWVtb3J5IGJh Y2tlZCBieSB0aGUgc2FtZSBxdWV1ZSwgaXQgY2FuCmJsb2NrIHdhaXRpbmcgZm9yIHRoZSByZXRh aW5lZCB0YWcgYW5kIG5ldmVyIHJ1biB0aGUgdGFzayB3b3JrIHRoYXQgZnJlZXMKaXQuCgpTbmFw c2hvdCB0aGUgU0NTSSByZXN1bHQgYW5kIGJvdW5kZWQgc2Vuc2UgZGF0YSBpbiBlbmQtSS9PLCBx dWV1ZSB0YXNrCndvcmssIGFuZCByZXR1cm4gUlFfRU5EX0lPX0ZSRUUgZm9yIGV2ZXJ5IGNvbXBs ZXRpb24uIFRhc2sgd29yayBub3cgb25seQp1bm1hcHMgdGhlIHNhdmVkIEJJTywgY29waWVzIHRo ZSBzYXZlZCBzZW5zZSBkYXRhLCBhbmQgcG9zdHMgdGhlIENRRTsgaXQKbmV2ZXIgZGVyZWZlcmVu Y2VzIHRoZSByZXF1ZXN0IG9yIHNjc2lfY21uZC4KClN0b3JlIHRoZSBzZW5zZSBzbmFwc2hvdCBp biBpb191cmluZyBjb21wbGV0aW9uIGRhdGEgdGhhdCB3YXMgYWxyZWFkeQphbGxvY2F0ZWQgZm9y IHRoZSBjb21tYW5kIFNRRSBjb3B5LiBUaGlzIGFkZHMgbm8gcGVyLWNvbW1hbmQgYWxsb2NhdGlv bgphbmQgZG9lcyBub3QgZ3JvdyB0aGUgcmVxdWVzdC4gSWYgdGFzayB3b3JrIGlzIGNhbmNlbGVk IG9yIHRoZSBzZW5zZSBjb3B5CmZhaWxzLCBjbGVhciB0aGUgcmVwb3J0ZWQgc2Vuc2UgbGVuZ3Ro IGJlY2F1c2Ugbm8gYnl0ZXMgcmVhY2hlZCB1c2VyCnNwYWNlLgoKRml4ZXM6IDdiNmQzMjU1ZTdm OCAoInNjc2k6IGJzZzogYWRkIGlvX3VyaW5nIHBhc3N0aHJvdWdoIGhhbmRsZXIiKQpMaW5rOiBo dHRwczovL2xvcmUua2VybmVsLm9yZy9yLzIwMjYxMDIyLnNjc2ktY29weWJhY2stcmV2aWV3LjMx YjhkNmE3MGY0Y0BvdXRsb29rLmNvbQpDYzogc3RhYmxlQHZnZXIua2VybmVsLm9yZwpTaWduZWQt b2ZmLWJ5OiBZaW5namllIFdhbmcgPHgtcHJvZmVzc29yQG91dGxvb2suY29tPgotLS0KIGRyaXZl cnMvc2NzaS9zY3NpX2JzZy5jIHwgOTQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0t LS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA2NCBpbnNlcnRpb25zKCspLCAzMCBkZWxldGlvbnMo LSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL3Njc2kvc2NzaV9ic2cuYyBiL2RyaXZlcnMvc2NzaS9z Y3NpX2JzZy5jCmluZGV4IDVmZmJkMTg0Mzg2MS4uNDc5NDI3ODM3NGIxIDEwMDY0NAotLS0gYS9k cml2ZXJzL3Njc2kvc2NzaV9ic2cuYworKysgYi9kcml2ZXJzL3Njc2kvc2NzaV9ic2cuYwpAQCAt MTYsOSArMTYsMTMgQEAKICAqLwogc3RydWN0IHNjc2lfYnNnX3VyaW5nX2NtZF9wZHUgewogCXN0 cnVjdCBiaW8gKmJpbzsJCS8qIG1hcHBlZCB1c2VyIGJ1ZmZlciwgdW5tYXAgaW4gdGFzayB3b3Jr ICovCi0Jc3RydWN0IHJlcXVlc3QgKnJlcTsJCS8qIGJsb2NrIHJlcXVlc3QsIGZyZWVkIGluIHRh c2sgd29yayAqLworCXU4ICpzZW5zZV9idWZmZXI7CQkvKiBjb21wbGV0aW9uIHN0b3JhZ2Ugb3du ZWQgYnkgaW9fdXJpbmcgKi8KIAl1NjQgcmVzcG9uc2VfYWRkcjsJCS8qIHVzZXIgc3BhY2UgcmVz cG9uc2UgYnVmZmVyIGFkZHJlc3MgKi8KLQl1MzIgbWF4X3Jlc3BvbnNlX2xlbjsJCS8qIHVzZXIg cmVzcG9uc2UgYnVmZmVyIHNpemUgKi8KKwkvKiBtYXhfcmVzcG9uc2VfbGVuIGlzIHJlcGxhY2Vk IGJ5IHJlczIgYWZ0ZXIgdGhlIGVuZC1JL08gc25hcHNob3QuICovCisJdW5pb24geworCQl1MzIg bWF4X3Jlc3BvbnNlX2xlbjsJLyogbWF4aW11bSBzZW5zZSBzbmFwc2hvdCBzaXplICovCisJCXU2 NCByZXMyOwkJLyogc2F2ZWQgY29tcGxldGlvbiByZXN1bHQgKi8KKwl9OwogfTsKIHN0YXRpY19h c3NlcnQoc2l6ZW9mKHN0cnVjdCBzY3NpX2JzZ191cmluZ19jbWRfcGR1KSA8PSBzaXplb2ZfZmll bGQoc3RydWN0IGlvX3VyaW5nX2NtZCwgcGR1KSk7CiAKQEAgLTI4LDE3ICszMiwyMiBAQCBzdGF0 aWMgaW5saW5lIHN0cnVjdCBzY3NpX2JzZ191cmluZ19jbWRfcGR1ICpzY3NpX2JzZ191cmluZ19j bWRfcGR1KAogCXJldHVybiBpb191cmluZ19jbWRfdG9fcGR1KGlvdWNtZCwgc3RydWN0IHNjc2lf YnNnX3VyaW5nX2NtZF9wZHUpOwogfQogCi0vKiBUYXNrIHdvcms6IGJ1aWxkIHJlczIgKGxheW91 dCBpbiB1YXBpL2xpbnV4L2JzZy5oKSBhbmQgY29weSBzZW5zZSB0byB1c2VyLiAqLworc3RhdGlj IHU2NCBzY3NpX2JzZ19yZXMyX2NsZWFyX3NlbnNlX2xlbih1NjQgcmVzMikKK3sKKwlyZXR1cm4g YnNnX3Njc2lfcmVzMl9idWlsZChic2dfc2NzaV9yZXMyX2RldmljZV9zdGF0dXMocmVzMiksCisJ CQkJICAgYnNnX3Njc2lfcmVzMl9kcml2ZXJfc3RhdHVzKHJlczIpLAorCQkJCSAgIGJzZ19zY3Np X3JlczJfaG9zdF9zdGF0dXMocmVzMiksIDAsCisJCQkJICAgYnNnX3Njc2lfcmVzMl9yZXNpZF9s ZW4ocmVzMikpOworfQorCisvKiBUYXNrIHdvcms6IHVubWFwIHRoZSBzYXZlZCBCSU8gYW5kIGNv cHkgc2Vuc2UgdG8gdXNlciBzcGFjZS4gKi8KIHN0YXRpYyB2b2lkIHNjc2lfYnNnX3VyaW5nX3Rh c2tfY2Ioc3RydWN0IGlvX3R3X3JlcSB0d19yZXEsIGlvX3R3X3Rva2VuX3QgdHcpCiB7CiAJc3Ry dWN0IGlvX3VyaW5nX2NtZCAqaW91Y21kID0gaW9fdXJpbmdfY21kX2Zyb21fdHcodHdfcmVxKTsK IAlzdHJ1Y3Qgc2NzaV9ic2dfdXJpbmdfY21kX3BkdSAqcGR1ID0gc2NzaV9ic2dfdXJpbmdfY21k X3BkdShpb3VjbWQpOwotCXN0cnVjdCByZXF1ZXN0ICpycSA9IHBkdS0+cmVxOwotCXN0cnVjdCBz Y3NpX2NtbmQgKnNjbWQgPSBibGtfbXFfcnFfdG9fcGR1KHJxKTsKLQl1NjQgcmVzMjsKKwl1NjQg cmVzMiA9IHBkdS0+cmVzMjsKKwl1OCBzZW5zZV9sZW4gPSBic2dfc2NzaV9yZXMyX3NlbnNlX2xl bihyZXMyKTsKIAlpbnQgcmV0ID0gMDsKLQl1OCBkcml2ZXJfc3RhdHVzID0gMDsKLQl1OCBzZW5z ZV9sZW5fd3IgPSAwOwogCiAJaWYgKHBkdS0+YmlvKQogCQlyZXQgPSBibGtfcnFfdW5tYXBfdXNl cihwZHUtPmJpbyk7CkBAIC00OCwyNyArNTcsMjAgQEAgc3RhdGljIHZvaWQgc2NzaV9ic2dfdXJp bmdfdGFza19jYihzdHJ1Y3QgaW9fdHdfcmVxIHR3X3JlcSwgaW9fdHdfdG9rZW5fdCB0dykKIAkg KiBoYXMgZXhpdGVkLCB0aGlzIG1heSBydW4gZnJvbSBhIGt3b3JrZXIgb3IgaW4gYSBkaWZmZXJl bnQgdGFzaywgc28KIAkgKiBkb24ndCBjb3B5IHRoZSBzZW5zZSBkYXRhIHRvIHRoZSBzdWJtaXR0 ZXIncyBhZGRyZXNzLgogCSAqLwotCWlmICh1bmxpa2VseSh0dy5jYW5jZWwpKQorCWlmICh1bmxp a2VseSh0dy5jYW5jZWwpKSB7CiAJCXJldCA9IC1FQ0FOQ0VMRUQ7Ci0KLQlpZiAoc2NzaV9zdGF0 dXNfaXNfY2hlY2tfY29uZGl0aW9uKHNjbWQtPnJlc3VsdCkpIHsKLQkJZHJpdmVyX3N0YXR1cyA9 IERSSVZFUl9TRU5TRTsKLQkJaWYgKHBkdS0+cmVzcG9uc2VfYWRkciAmJiAhdHcuY2FuY2VsKQot CQkJc2Vuc2VfbGVuX3dyID0gbWluX3QodW5zaWduZWQgaW50LCBwZHUtPm1heF9yZXNwb25zZV9s ZW4sCi0JCQkJCSAgICAgc2NtZC0+c2Vuc2VfbGVuKTsKLQl9Ci0KLQlpZiAoc2Vuc2VfbGVuX3dy KSB7Ci0JCWlmIChjb3B5X3RvX3VzZXIodXB0cjY0KHBkdS0+cmVzcG9uc2VfYWRkciksIHNjbWQt PnNlbnNlX2J1ZmZlciwKLQkJCQkgc2Vuc2VfbGVuX3dyKSkKKwkJc2Vuc2VfbGVuID0gMDsKKwl9 IGVsc2UgaWYgKHNlbnNlX2xlbikgeworCQlpZiAoY29weV90b191c2VyKHVwdHI2NChwZHUtPnJl c3BvbnNlX2FkZHIpLCBwZHUtPnNlbnNlX2J1ZmZlciwKKwkJCQkgc2Vuc2VfbGVuKSkgewogCQkJ cmV0ID0gLUVGQVVMVDsKKwkJCXNlbnNlX2xlbiA9IDA7CisJCX0KIAl9CiAKLQlyZXMyID0gYnNn X3Njc2lfcmVzMl9idWlsZChzdGF0dXNfYnl0ZShzY21kLT5yZXN1bHQpLCBkcml2ZXJfc3RhdHVz LAotCQkJCSAgaG9zdF9ieXRlKHNjbWQtPnJlc3VsdCksIHNlbnNlX2xlbl93ciwKLQkJCQkgIHNj bWQtPnJlc2lkX2xlbik7CisJaWYgKCFzZW5zZV9sZW4pCisJCXJlczIgPSBzY3NpX2JzZ19yZXMy X2NsZWFyX3NlbnNlX2xlbihyZXMyKTsKIAotCWJsa19tcV9mcmVlX3JlcXVlc3QocnEpOwogCWlv X3VyaW5nX2NtZF9kb25lMzIoaW91Y21kLCByZXQsIHJlczIsCiAJCQkgICAgSU9fVVJJTkdfQ01E X1RBU0tfV09SS19JU1NVRV9GTEFHUyk7CiB9CkBAIC03OCw5ICs4MCwyNSBAQCBzdGF0aWMgZW51 bSBycV9lbmRfaW9fcmV0IHNjc2lfYnNnX3VyaW5nX2NtZF9kb25lKHN0cnVjdCByZXF1ZXN0ICpy ZXEsCiAJCQkJCQkgIGNvbnN0IHN0cnVjdCBpb19jb21wX2JhdGNoICppb2NiKQogewogCXN0cnVj dCBpb191cmluZ19jbWQgKmlvdWNtZCA9IHJlcS0+ZW5kX2lvX2RhdGE7CisJc3RydWN0IHNjc2lf YnNnX3VyaW5nX2NtZF9wZHUgKnBkdSA9IHNjc2lfYnNnX3VyaW5nX2NtZF9wZHUoaW91Y21kKTsK KwlzdHJ1Y3Qgc2NzaV9jbW5kICpzY21kID0gYmxrX21xX3JxX3RvX3BkdShyZXEpOworCXU4IGRy aXZlcl9zdGF0dXMgPSAwOworCXU4IHNlbnNlX2xlbiA9IDA7CiAKKwlpZiAoc2NzaV9zdGF0dXNf aXNfY2hlY2tfY29uZGl0aW9uKHNjbWQtPnJlc3VsdCkpIHsKKwkJZHJpdmVyX3N0YXR1cyA9IERS SVZFUl9TRU5TRTsKKwkJaWYgKHBkdS0+cmVzcG9uc2VfYWRkcikgeworCQkJc2Vuc2VfbGVuID0g bWluX3QodW5zaWduZWQgaW50LCBwZHUtPm1heF9yZXNwb25zZV9sZW4sCisJCQkJCSAgc2NtZC0+ c2Vuc2VfbGVuKTsKKwkJCW1lbWNweShwZHUtPnNlbnNlX2J1ZmZlciwgc2NtZC0+c2Vuc2VfYnVm ZmVyLAorCQkJICAgICAgIHNlbnNlX2xlbik7CisJCX0KKwl9CisJcGR1LT5yZXMyID0gYnNnX3Nj c2lfcmVzMl9idWlsZChzdGF0dXNfYnl0ZShzY21kLT5yZXN1bHQpLAorCQkJCQlkcml2ZXJfc3Rh dHVzLCBob3N0X2J5dGUoc2NtZC0+cmVzdWx0KSwKKwkJCQkJc2Vuc2VfbGVuLCBzY21kLT5yZXNp ZF9sZW4pOwogCWlvX3VyaW5nX2NtZF9kb19pbl90YXNrX2xhenkoaW91Y21kLCBzY3NpX2JzZ191 cmluZ190YXNrX2NiKTsKLQlyZXR1cm4gUlFfRU5EX0lPX05PTkU7CisJcmV0dXJuIFJRX0VORF9J T19GUkVFOwogfQogCiBzdGF0aWMgaW50IHNjc2lfYnNnX21hcF91c2VyX2J1ZmZlcihzdHJ1Y3Qg cmVxdWVzdCAqcmVxLApAQCAtMTIzLDggKzE0MSwxNSBAQCBzdGF0aWMgaW50IHNjc2lfYnNnX3Vy aW5nX2NtZChzdHJ1Y3QgcmVxdWVzdF9xdWV1ZSAqcSwgc3RydWN0IGlvX3VyaW5nX2NtZCAqaW91 YwogCXUzMiBkb3V0X3hmZXJfbGVuID0gUkVBRF9PTkNFKGNtZC0+ZG91dF94ZmVyX2xlbik7CiAJ dTY0IGRpbl94ZmVycCA9IFJFQURfT05DRShjbWQtPmRpbl94ZmVycCk7CiAJdTMyIGRpbl94ZmVy X2xlbiA9IFJFQURfT05DRShjbWQtPmRpbl94ZmVyX2xlbik7CisJdTY0IHJlc3BvbnNlX2FkZHIg PSBSRUFEX09OQ0UoY21kLT5yZXNwb25zZSk7CisJdTMyIG1heF9yZXNwb25zZV9sZW4gPSBtaW5f dCh1MzIsIFJFQURfT05DRShjbWQtPm1heF9yZXNwb25zZV9sZW4pLAorCQkJCSAgICAgU0NTSV9T RU5TRV9CVUZGRVJTSVpFKTsKKwl1MzIgdGltZW91dF9tcyA9IFJFQURfT05DRShjbWQtPnRpbWVv dXRfbXMpOwogCWludCByZXQ7CiAKKwlpZiAoaW91Y21kLT5mbGFncyAmIElPUklOR19VUklOR19D TURfTVVMVElTSE9UKQorCQlyZXR1cm4gLUVPUE5PVFNVUFA7CisKIAlpZiAoY21kLT5wcm90b2Nv bCAhPSBCU0dfUFJPVE9DT0xfU0NTSSB8fAogCSAgICBjbWQtPnN1YnByb3RvY29sICE9IEJTR19T VUJfUFJPVE9DT0xfU0NTSV9DTUQpCiAJCXJldHVybiAtRUlOVkFMOwpAQCAtMTY4LDggKzE5Myw4 IEBAIHN0YXRpYyBpbnQgc2NzaV9ic2dfdXJpbmdfY21kKHN0cnVjdCByZXF1ZXN0X3F1ZXVlICpx LCBzdHJ1Y3QgaW9fdXJpbmdfY21kICppb3VjCiAJCWdvdG8gb3V0X2ZyZWVfcmVxOwogCX0KIAot CXBkdS0+cmVzcG9uc2VfYWRkciA9IGNtZC0+cmVzcG9uc2U7Ci0JcGR1LT5tYXhfcmVzcG9uc2Vf bGVuID0gY21kLT5tYXhfcmVzcG9uc2VfbGVuOworCXBkdS0+cmVzcG9uc2VfYWRkciA9IHJlc3Bv bnNlX2FkZHI7CisJcGR1LT5tYXhfcmVzcG9uc2VfbGVuID0gbWF4X3Jlc3BvbnNlX2xlbjsKIAog CWlmIChkb3V0X3hmZXJfbGVuIHx8IGRpbl94ZmVyX2xlbikgewogCQlib29sIGlzX3dyaXRlID0g ZG91dF94ZmVyX2xlbiA+IDA7CkBAIC0xODYsMTYgKzIxMSwyNSBAQCBzdGF0aWMgaW50IHNjc2lf YnNnX3VyaW5nX2NtZChzdHJ1Y3QgcmVxdWVzdF9xdWV1ZSAqcSwgc3RydWN0IGlvX3VyaW5nX2Nt ZCAqaW91YwogCQlwZHUtPmJpbyA9IE5VTEw7CiAJfQogCi0JcmVxLT50aW1lb3V0ID0gY21kLT50 aW1lb3V0X21zID8KLQkJbXNlY3NfdG9famlmZmllcyhjbWQtPnRpbWVvdXRfbXMpIDogQkxLX0RF RkFVTFRfU0dfVElNRU9VVDsKKwlyZXEtPnRpbWVvdXQgPSB0aW1lb3V0X21zID8gbXNlY3NfdG9f amlmZmllcyh0aW1lb3V0X21zKSA6CisJCQkJICAgQkxLX0RFRkFVTFRfU0dfVElNRU9VVDsKKwor CXBkdS0+c2Vuc2VfYnVmZmVyID0KKwkJaW9fdXJpbmdfY21kX2dldF9jb21wbGV0aW9uX2RhdGEo aW91Y21kLCBTQ1NJX1NFTlNFX0JVRkZFUlNJWkUpOworCWlmIChXQVJOX09OX09OQ0UoIXBkdS0+ c2Vuc2VfYnVmZmVyKSkgeworCQlyZXQgPSAtRUlPOworCQlnb3RvIG91dF91bm1hcF91c2VyOwor CX0KIAogCXJlcS0+ZW5kX2lvID0gc2NzaV9ic2dfdXJpbmdfY21kX2RvbmU7CiAJcmVxLT5lbmRf aW9fZGF0YSA9IGlvdWNtZDsKLQlwZHUtPnJlcSA9IHJlcTsKIAogCWJsa19leGVjdXRlX3JxX25v d2FpdChyZXEsIGZhbHNlKTsKIAlyZXR1cm4gLUVJT0NCUVVFVUVEOwogCitvdXRfdW5tYXBfdXNl cjoKKwlpZiAocGR1LT5iaW8pCisJCWJsa19ycV91bm1hcF91c2VyKHBkdS0+YmlvKTsKIG91dF9m cmVlX3JlcToKIAlibGtfbXFfZnJlZV9yZXF1ZXN0KHJlcSk7CiAJcmV0dXJuIHJldDsKLS0gCjIu NDMuMAoK