Received: by 2002:a05:6358:53a8:b0:117:f937:c515 with SMTP id z40csp4494173rwe; Mon, 17 Apr 2023 13:37:32 -0700 (PDT) X-Google-Smtp-Source: AKy350Z9Bt+QzXPs4kaY/BLzIaek6086aJRtTwqrp43jAuWROiGEqmT3jRtirl3LJNLrhB25nWl1 X-Received: by 2002:a05:6a20:3d0d:b0:ef:70b:4305 with SMTP id y13-20020a056a203d0d00b000ef070b4305mr9894070pzi.36.1681763852305; Mon, 17 Apr 2023 13:37:32 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1681763852; cv=pass; d=google.com; s=arc-20160816; b=c1O3ANJIqANKJ3r6kFUuPN1Nk9qd+iWIFjBkYjQMBHrrnXYDTCU9IgwZ8k1tWvmwzw k8eMyoT0OUkLTbBiYcNj88V5fGGFMkug+EuqBMt5m6KdH8YCx0TknCGV/AxBtiawIlnx pswPa2I+Baj563eBQtPlHIBJU5+KHxpT6NJ/k4idaxd6rb77GREcvtWVmvHg9GLCiDtr N9dX0/9tTuizX6Q99dKKxe5N12ATFBmKsztVQDVq+Uu62BfzagZnRKeYnkipWM923dNG H6wZtpAuaRz64ZeiG3wyw2P5WPl5o+CTC761OiAfRVo/ZNbhRx4AohTKFZH+/XeYL+eh B2Ug== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:content-transfer-encoding :content-id:content-language:accept-language:in-reply-to:references :message-id:date:thread-index:thread-topic:subject:to:from :dkim-signature; bh=rChfnY8HMGn5iCwUOt4RlQNt4triVytdE7paixtJtiA=; b=onn6lycekG3LZVksK19BTECoyBIHLUIp6vO7lxSNjiok5vOq/lXXmEgmAv4dRtq6RP YYIiHQMip9AmiaLNHt5zOEQfkSNiDXo+BXJaaR7+EqsO+uEEHZvJ2EnMMd+FMN0gfCVJ b0cPFLa0sSDNFhde2e2Vmg7T48K8WTKV2TPWPjqwMzhLzu9RY0C37NHrh71rOnuY4REJ IKgyH8NP7c1coYaD/3lxf3bo5NCd5vnmLqT9Lhw7QrOVxrvFRIQ8jl7jB3y2gHiZJwjg kR72BhOeIBtZL0M6DkpQE5K70dH8QpMpshz6s48j4jxOM2qzDe3BRjn6ilIRHUNdmHHb y0eQ== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@hammerspace.com header.s=selector2 header.b=UUCCYqeF; arc=pass (i=1 spf=pass spfdomain=hammerspace.com dkim=pass dkdomain=hammerspace.com dmarc=pass fromdomain=hammerspace.com); spf=pass (google.com: domain of linux-nfs-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-nfs-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=hammerspace.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id s5-20020a17090a948500b0023fb17227f6si12023976pjo.154.2023.04.17.13.37.10; Mon, 17 Apr 2023 13:37:32 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-nfs-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@hammerspace.com header.s=selector2 header.b=UUCCYqeF; arc=pass (i=1 spf=pass spfdomain=hammerspace.com dkim=pass dkdomain=hammerspace.com dmarc=pass fromdomain=hammerspace.com); spf=pass (google.com: domain of linux-nfs-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-nfs-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=hammerspace.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229992AbjDQUat (ORCPT + 99 others); Mon, 17 Apr 2023 16:30:49 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57180 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229926AbjDQUas (ORCPT ); Mon, 17 Apr 2023 16:30:48 -0400 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on2092.outbound.protection.outlook.com [40.107.93.92]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 29D6A2D63 for ; Mon, 17 Apr 2023 13:30:45 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gWvts91uZk0TBTs1/qN29mTrKriHEkr22hMxm3JxllCCAWuhn8NH2aAIQqeTq6gQowqWL6LHMB7rfArP7SKBuvKSk3PT38S//hSBq3FqiHv8UZHFbqO0sOMLhroJ3gKBjnsOJajDN6XpxLuOwBg2aSVRk69HwwYly78R+ZiQAR9TQg/xXNsOWrRSHMAc7JudKDuP8zkNCiJXG4VAlTdmwUwLkRETGWnGpOeOIvcB6e4UZ0/dpu5U9N5EkqpOEDct270ejD8A0eDe2E0rbP0dNodhPKLO9BrCOjcQu9GucGg1dCfoiarN7ZWGfVj9Uo3OOMRbnTKnv8pAYIuRrm1mqA== 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=rChfnY8HMGn5iCwUOt4RlQNt4triVytdE7paixtJtiA=; b=FzcDSfAcqVpFu+ZBFrUf/EILbzRe9Rs2DifWdZHgYtCib784daMmmH7j3fHY1yxsYV6tHKNW9y1LyrGDfvAqXXePjn4/tQZ01dqlXf/QKS6wVg/Mis0aTcsTh5sYj9e4N73V4IjzpGgPRmBN9DkkN4HoWQJPVNIRpwC6vzvqT3qjVJrEWGqtljmCHSP3bboV3yYlV6yj9c0qS01QyuvC/eJoBDQeC7A3K+iIOaeWUaRUqENkaNSDhFEErgZlGSIIyWuQ5dKe0ma/WQMbeC+m3G7KZ0lW1TfZJMBjFcQ+OKv/51a5qEqcKyN/88uwq/bKji4s5Jg9gzQqp3ncMMwD1g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=hammerspace.com; dmarc=pass action=none header.from=hammerspace.com; dkim=pass header.d=hammerspace.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hammerspace.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=rChfnY8HMGn5iCwUOt4RlQNt4triVytdE7paixtJtiA=; b=UUCCYqeFzSazMvGNTLpFr39NEgYyA5o0zfUYBVEx69WgO90K507e5ZTWYZvDcGWZKMaQkCVsJWaJsDvOUvU321Dj4r4qpc1UicN1dyuns1flE1HWIXxTewrhO7A08EJiFxGJ9qKB/N9SgMg3UbwnqZn7W2gLf0dX0GyPhpiHO8s= Received: from CH0PR13MB5084.namprd13.prod.outlook.com (2603:10b6:610:111::7) by CO6PR13MB5354.namprd13.prod.outlook.com (2603:10b6:303:14a::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6298.45; Mon, 17 Apr 2023 20:30:40 +0000 Received: from CH0PR13MB5084.namprd13.prod.outlook.com ([fe80::3627:d466:b0ae:1740]) by CH0PR13MB5084.namprd13.prod.outlook.com ([fe80::3627:d466:b0ae:1740%3]) with mapi id 15.20.6298.045; Mon, 17 Apr 2023 20:30:40 +0000 From: Trond Myklebust To: "anna@kernel.org" , "linux-nfs@vger.kernel.org" Subject: Re: [PATCH] NFSv4.2: Rework scratch handling for READ_PLUS Thread-Topic: [PATCH] NFSv4.2: Rework scratch handling for READ_PLUS Thread-Index: AQHZaZJQzdZtZmSH406Qhf492Vr+8a8wA8wA Date: Mon, 17 Apr 2023 20:30:39 +0000 Message-ID: References: <20230407204826.1274206-1-anna@kernel.org> In-Reply-To: <20230407204826.1274206-1-anna@kernel.org> Accept-Language: en-US, en-GB Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=hammerspace.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CH0PR13MB5084:EE_|CO6PR13MB5354:EE_ x-ms-office365-filtering-correlation-id: 7424ef45-bb8e-4b93-6678-08db3f829c1f x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: rDBHlvcNcucIpNhR6slW3ahkpGQbaihYmxO/2+ziuCzg5MvXHQdbhZdLT7xSBFOqU+Z3svfahP57obrmICJOWQqXSDKkx4bHFyg8VOlEE+/kETfmxUZB4QGqJOv8pQzC1ILVCJ6L6hVR1QHTqiaXDJZF3K5yOz5H4QL9sbgHkyr7pOdqQx7OLRbBHf7crv5Fg/ERvjptW1VJRFRk1MEPptDmFG9AWdrJK2byZcjxonmjxMu3xOWHEvL1fUetmA56X/IsMqQlCLfYAy0Kn3qx2IteZ7kpp2Z2L9ubjAN2zA1fIJiRZKe+KqEtuJ3Vl7eJmUl4zsg18zZxBkLAFpOgQZjblbptaKNM0Eebj6OMAiMPKj6GIAVIeazMDyYqSLmzEjMku8ZmBsC6F+sAQK45BAb1q6z0gYXSEXPXkEfR1alp0hRaen/1yYfqTibx9ctgB7HtsKsKsI3qelXGOhPSZE/L4HvYCG0LWa+f7X0fQOrfmXCIffzn5VDZdV9dTByYeHwbnrErQHcusYjWHLz1CoHMDgegRodRXQNmZWKG9SRo+0tIRyU3+tvyGkkhKvL9VzXxfy5/bYdos8zpjPHD1M+9uFQJ29sIoZGtcSTzDSTqpjS84u9tGtTDZjo/eAiZDiRFg3gWjgvMtjSPgJHLnIZThOzlm0W34uS7fWrA2q8= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH0PR13MB5084.namprd13.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(396003)(376002)(346002)(136003)(39840400004)(366004)(451199021)(66476007)(66556008)(64756008)(66946007)(2906002)(66446008)(2616005)(5660300002)(8676002)(8936002)(316002)(41300700001)(76116006)(36756003)(478600001)(110136005)(71200400001)(6486002)(186003)(86362001)(122000001)(6506007)(6512007)(83380400001)(38070700005)(38100700002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?RGlkMFZIWnk5S1RTemJlUXk4cXNVb1pmKy9lNnVNYkdtdlNGeEVyTjBMNHFx?= =?utf-8?B?cjZuNWFCTVhVZXA4T0VUUWlUTmcrbzlZZ2VQUk12V2t1MVcrS0pxUks0Vyt6?= =?utf-8?B?UzJqY0VlOWU1UTZMRTlvZlIwRXZQTC9hcnlud3BqMXJUNEpyYUxJdTR0eWY5?= =?utf-8?B?MlNWN2J5ZWxUSmI5dUN0Z2oxcXB2RnN1Mkl0SVY3ZFNRa0k3Y3liOVkzZFhs?= =?utf-8?B?U2FhclFHTitFaGxqVTZRajRhU2k2bUNnamo1bzhaQUZQRUt0aThLYnN4c0Jt?= =?utf-8?B?WFhYUFZRUkhGMVZDYnVYRkRVSE9qaTZDcjdnVU9RSHdsNlhRdEZ6aUJGYmQ5?= =?utf-8?B?R0Z0S0dkdmZIT1d6ckQzV3hhS21Hb01NZTZoL2VwR3drZUJsMThFM0liOGkx?= =?utf-8?B?K0g4K0FuVHpKZmJoNWJBc0paaExwODVqeU1GQWZWUzlXVUNncDlURmk4RTRI?= =?utf-8?B?VUlqMnU4R2QzNXNVbm11TU5tTTI0ZU5zMjJCdHJZRWFBZXl4aFJsSm0rNjhQ?= =?utf-8?B?NkdoTWtxWVh3S3FGaUFEK040ODRXdys2V1NYSjBjcnhCV1JGOUxPUU5mQlBB?= =?utf-8?B?OHFyS20vL2twZmx6eGV1ZVlRSGdTd0k3SHZSeXFkbkoySnRHbHF4bnhnR01k?= =?utf-8?B?S2FVbmFSZno1NmgvYmUyWkJpQW1tYzYwak14UjMzM01pbGd4cXE5MUxjY0E3?= =?utf-8?B?NFMxbnRKOUxRTXpHeVNZYlRxZnpLZU40Y1lGa05sdzVVUjl1UlkzODRrQ3J0?= =?utf-8?B?aWxQNElCYnRaenlzN3RJT1g1amthZUNDUXU1T2lmRy9JUnB1Y0hjNVhzYzdr?= =?utf-8?B?TVhNdFp3RitGcWRibkttWUNocXI1VnBHcnRsaXY0WklhcTFJYjdWcWZESXM4?= =?utf-8?B?alY1QnNGaW9uZkEwN1IrZkZJYzVybDlMaVZhL1UrcER5a2JOWGg4ZzFDWm9S?= =?utf-8?B?dDBqalU4TGt1cUtIc3EzRi91T3crV2xScjNQTnNMM3BWWFVlZVZUWFI4aEpu?= =?utf-8?B?UHZ5Skc4alQ4eTl2dERwZWMxQWQrYndlNnhOMXhLTjhHVHhnWTlaU0xXcEpP?= =?utf-8?B?dWlMSjVUNEVuTEx4cUovWU9wWklxQ3EwQ2psbkY2YTlqNEhSSWF2TGlLWDRs?= =?utf-8?B?czBYNXVqa09OQnJuL2dCWFhIM2dCN2t1L054aGlSbC9udmxLVWpjL092ZVVm?= =?utf-8?B?akRUeGtsL1dybkhxNWtlbm5lTU9wamkxQ2ZkeW00QXo2YlRCeFJ3aUxSMU44?= =?utf-8?B?YXV6eFlzbXhiZC9Lb3J4eWlWRUs4M25Cd24vWUJyYWpRc0wxclpGRHhHVXBN?= =?utf-8?B?eHdMR2F6Z1h5YmJXTElUS2w4M0NLK2RXcFZJUTNBL05Wd3VBUkxLWlNmR2xo?= =?utf-8?B?MFNSRFlqKzE3S3doVFdPaGpPZjdxTE5ab3lMaGRqTFNiRDk2cm1YZWhHa3NE?= =?utf-8?B?djN5RnJndDBNdzh6TjFDSlgzMWdOU21HNm1TNTVFVFo5enpnYVZWVVkwbW9w?= =?utf-8?B?S1hHT0x3UHNaUUt0cm1FMHVpQXNqdTI1dzJwMDB0Qk1aLy9EYmZrREFVRk50?= =?utf-8?B?R1Y3UUpSSllQYmtpN1VPd1hHYlJrWms0RzNhSy9lUlEwMkp5Rm5IZFBvOW1C?= =?utf-8?B?M0YyUmh3b3l5U2hvMUo1MmxBQytMeVFWbWNCRml0b3dFakN1S05BU0VQcTl5?= =?utf-8?B?UXBRUHd2aGo5K0FaK1JNdDlXVWZVUVB0bEFzVDdpMnZjZTY4YlB3azBYQTlC?= =?utf-8?B?bkcxYzJ1MVVQR2RETEVQR3FHbnRzVXVheEZVR0ZPdDYvUDQvOEVaWVljRnlp?= =?utf-8?B?aE5YN0JET3RVR2tLUk5aa1VOWS9zejZzOTJTdHBCMVgvZERRNVp1akZPRisy?= =?utf-8?B?c2JlOWJEZVIrRGNsdU5LSG01RVAydlUxQlIrbVBNOXlIS1VSY1hJdG5sVWMr?= =?utf-8?B?ZzdnNVJOSW9ndGFsVW5zanZ3S05rK3lJd2JXSzcrTGxGNnBNV2FsRCtZWHoy?= =?utf-8?B?RkZpTzdNazErRlo5dHJseFVEWm5UU0VuemNab3hwNkxWVmxLdmIrQkJEQ1hr?= =?utf-8?B?bjFsaTgzOFl4UjNaYkhJMHo4TWxmdVhINXF1QUZSMSt2YWl4WlNkY1lJQzNH?= =?utf-8?B?bjBZTnRvTEFGMStZSmZpekFrYm5MSDVBOFV0a0NWUENWbTZEKy9ZWmcwQ0l3?= =?utf-8?B?YjhpS21jV2lQakFSdlJCQ2lDbTRwKzdUZHJrU3JxRXhOTFAzbkdPVTk5SmVs?= =?utf-8?B?UFg0NGx5U2doMTRnLzZVUCswUU9BPT0=?= Content-Type: text/plain; charset="utf-8" Content-ID: <22469995C2D38A4D9FF4B6D4799CC667@namprd13.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: hammerspace.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CH0PR13MB5084.namprd13.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7424ef45-bb8e-4b93-6678-08db3f829c1f X-MS-Exchange-CrossTenant-originalarrivaltime: 17 Apr 2023 20:30:40.0573 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 0d4fed5c-3a70-46fe-9430-ece41741f59e X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: zbYpbUs9zLRk0Zf6y5298ZWSM0kqybmlqrTaAexsTvYB3a7qdOv4RTnshMJW2U6bPbwDCYqEPOt/Jqi+tDxBTg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO6PR13MB5354 X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-nfs@vger.kernel.org T24gRnJpLCAyMDIzLTA0LTA3IGF0IDE2OjQ4IC0wNDAwLCBBbm5hIFNjaHVtYWtlciB3cm90ZToK PiBGcm9tOiBBbm5hIFNjaHVtYWtlciA8QW5uYS5TY2h1bWFrZXJATmV0YXBwLmNvbT4KPiAKPiBJ bnN0ZWFkIG9mIHVzaW5nIGEgdGlueSBzY3JhdGNoIGJ1ZmZlciwgd2Ugc2hvdWxkIHVzZSBhIGZ1 bGwgc2NyYXRjaAo+IHBhZ2UgdG8gbWF0Y2ggaG93IG90aGVyIE5GU3Y0IG9wZXJhdGlvbnMgaGFu ZGxlIHNjcmF0Y2ggZGF0YS4gVGhpcwo+IHBhdGNoCj4gYWxzbyBsZXRzIHVzIHNldCB0aGUgc2Ny YXRjaCBwYWdlIGJlZm9yZSBkZWNvZGluZyBhbnkgcGFydCBvZiB0aGUKPiBSRUFEX1BMVVMgb3Bl cmF0aW9uIGluc3RlYWQgb2Ygc2V0dGluZyB0aGUgYnVmZmVyIHJpZ2h0IGJlZm9yZQo+IHNlZ21l bnQKPiBkZWNvZGluZywgd2hpY2ggZmVlbHMgYSBsaXR0bGUgbW9yZSByb2J1c3QgdG8gbWUuCj4g Cj4gU2lnbmVkLW9mZi1ieTogQW5uYSBTY2h1bWFrZXIgPEFubmEuU2NodW1ha2VyQE5ldGFwcC5j b20+Cj4gLS0tCj4gwqBmcy9uZnMvbmZzNDJ4ZHIuY8KgwqDCoMKgwqDCoCB8wqAgNCArKy0tCj4g wqBmcy9uZnMvbmZzNHByb2MuY8KgwqDCoMKgwqDCoCB8IDE3ICsrKysrKysrKysrKy0tLS0tCj4g wqBpbmNsdWRlL2xpbnV4L25mc194ZHIuaCB8wqAgMSArCj4gwqAzIGZpbGVzIGNoYW5nZWQsIDE1 IGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2ZzL25mcy9u ZnM0Mnhkci5jIGIvZnMvbmZzL25mczQyeGRyLmMKPiBpbmRleCBkODBlZTg4Y2E5OTYuLjcwMjU2 N2Q1YjFkYiAxMDA2NDQKPiAtLS0gYS9mcy9uZnMvbmZzNDJ4ZHIuYwo+ICsrKyBiL2ZzL25mcy9u ZnM0Mnhkci5jCj4gQEAgLTExMjIsNyArMTEyMiw2IEBAIHN0YXRpYyBpbnQgZGVjb2RlX3JlYWRf cGx1cyhzdHJ1Y3QgeGRyX3N0cmVhbQo+ICp4ZHIsIHN0cnVjdCBuZnNfcGdpb19yZXMgKnJlcykK PiDCoMKgwqDCoMKgwqDCoMKgdWludDMyX3Qgc2VnbWVudHM7Cj4gwqDCoMKgwqDCoMKgwqDCoHN0 cnVjdCByZWFkX3BsdXNfc2VnbWVudCAqc2VnczsKPiDCoMKgwqDCoMKgwqDCoMKgaW50IHN0YXR1 cywgaTsKPiAtwqDCoMKgwqDCoMKgwqBjaGFyIHNjcmF0Y2hfYnVmWzE2XTsKPiDCoMKgwqDCoMKg wqDCoMKgX19iZTMyICpwOwo+IMKgCj4gwqDCoMKgwqDCoMKgwqDCoHN0YXR1cyA9IGRlY29kZV9v cF9oZHIoeGRyLCBPUF9SRUFEX1BMVVMpOwo+IEBAIC0xMTQzLDcgKzExNDIsNiBAQCBzdGF0aWMg aW50IGRlY29kZV9yZWFkX3BsdXMoc3RydWN0IHhkcl9zdHJlYW0KPiAqeGRyLCBzdHJ1Y3QgbmZz X3BnaW9fcmVzICpyZXMpCj4gwqDCoMKgwqDCoMKgwqDCoGlmICghc2VncykKPiDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoHJldHVybiAtRU5PTUVNOwo+IMKgCj4gLcKgwqDCoMKgwqDC oMKgeGRyX3NldF9zY3JhdGNoX2J1ZmZlcih4ZHIsICZzY3JhdGNoX2J1ZiwKPiBzaXplb2Yoc2Ny YXRjaF9idWYpKTsKPiDCoMKgwqDCoMKgwqDCoMKgc3RhdHVzID0gLUVJTzsKPiDCoMKgwqDCoMKg wqDCoMKgZm9yIChpID0gMDsgaSA8IHNlZ21lbnRzOyBpKyspIHsKPiDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoHN0YXR1cyA9IGRlY29kZV9yZWFkX3BsdXNfc2VnbWVudCh4ZHIsICZz ZWdzW2ldKTsKPiBAQCAtMTM0OCw2ICsxMzQ2LDggQEAgc3RhdGljIGludCBuZnM0X3hkcl9kZWNf cmVhZF9wbHVzKHN0cnVjdAo+IHJwY19ycXN0ICpycXN0cCwKPiDCoMKgwqDCoMKgwqDCoMKgc3Ry dWN0IGNvbXBvdW5kX2hkciBoZHI7Cj4gwqDCoMKgwqDCoMKgwqDCoGludCBzdGF0dXM7Cj4gwqAK PiArwqDCoMKgwqDCoMKgwqB4ZHJfc2V0X3NjcmF0Y2hfcGFnZSh4ZHIsIHJlcy0+c2NyYXRjaCk7 Cj4gKwo+IMKgwqDCoMKgwqDCoMKgwqBzdGF0dXMgPSBkZWNvZGVfY29tcG91bmRfaGRyKHhkciwg Jmhkcik7Cj4gwqDCoMKgwqDCoMKgwqDCoGlmIChzdGF0dXMpCj4gwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqBnb3RvIG91dDsKPiBkaWZmIC0tZ2l0IGEvZnMvbmZzL25mczRwcm9jLmMg Yi9mcy9uZnMvbmZzNHByb2MuYwo+IGluZGV4IDU2MDdiMWUyYjgyMS4uMmI1ZTYyNzEzYmRkIDEw MDY0NAo+IC0tLSBhL2ZzL25mcy9uZnM0cHJvYy5jCj4gKysrIGIvZnMvbmZzL25mczRwcm9jLmMK PiBAQCAtNTQzOSw2ICs1NDM5LDggQEAgc3RhdGljIGJvb2wgbmZzNF9yZWFkX3BsdXNfbm90X3N1 cHBvcnRlZChzdHJ1Y3QKPiBycGNfdGFzayAqdGFzaywKPiDCoAo+IMKgc3RhdGljIGludCBuZnM0 X3JlYWRfZG9uZShzdHJ1Y3QgcnBjX3Rhc2sgKnRhc2ssIHN0cnVjdAo+IG5mc19wZ2lvX2hlYWRl ciAqaGRyKQo+IMKgewo+ICvCoMKgwqDCoMKgwqDCoGlmIChoZHItPnJlcy5zY3JhdGNoKQo+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBfX2ZyZWVfcGFnZShoZHItPnJlcy5zY3JhdGNo KTsKPiDCoMKgwqDCoMKgwqDCoMKgaWYgKCFuZnM0X3NlcXVlbmNlX2RvbmUodGFzaywgJmhkci0+ cmVzLnNlcV9yZXMpKQo+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgcmV0dXJuIC1F QUdBSU47Cj4gwqDCoMKgwqDCoMKgwqDCoGlmIChuZnM0X3JlYWRfc3RhdGVpZF9jaGFuZ2VkKHRh c2ssICZoZHItPmFyZ3MpKQo+IEBAIC01NDUyLDE3ICs1NDU0LDIyIEBAIHN0YXRpYyBpbnQgbmZz NF9yZWFkX2RvbmUoc3RydWN0IHJwY190YXNrCj4gKnRhc2ssIHN0cnVjdCBuZnNfcGdpb19oZWFk ZXIgKmhkcikKPiDCoH0KPiDCoAo+IMKgI2lmIGRlZmluZWQgQ09ORklHX05GU19WNF8yICYmIGRl ZmluZWQgQ09ORklHX05GU19WNF8yX1JFQURfUExVUwo+IC1zdGF0aWMgdm9pZCBuZnM0Ml9yZWFk X3BsdXNfc3VwcG9ydChzdHJ1Y3QgbmZzX3BnaW9faGVhZGVyICpoZHIsCj4gK3N0YXRpYyBib29s IG5mczQyX3JlYWRfcGx1c19zdXBwb3J0KHN0cnVjdCBuZnNfcGdpb19oZWFkZXIgKmhkciwKPiDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIHN0cnVjdCBycGNfbWVzc2FnZSAqbXNnKQo+IMKgewo+IMKgwqDCoMKgwqDC oMKgwqAvKiBOb3RlOiBXZSBkb24ndCB1c2UgUkVBRF9QTFVTIHdpdGggcE5GUyB5ZXQgKi8KPiAt wqDCoMKgwqDCoMKgwqBpZiAobmZzX3NlcnZlcl9jYXBhYmxlKGhkci0+aW5vZGUsIE5GU19DQVBf UkVBRF9QTFVTKSAmJgo+ICFoZHItPmRzX2NscCkKPiArwqDCoMKgwqDCoMKgwqBpZiAobmZzX3Nl cnZlcl9jYXBhYmxlKGhkci0+aW5vZGUsIE5GU19DQVBfUkVBRF9QTFVTKSAmJgo+ICFoZHItPmRz X2NscCkgewo+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgbXNnLT5ycGNfcHJvYyA9 Cj4gJm5mczRfcHJvY2VkdXJlc1tORlNQUk9DNF9DTE5UX1JFQURfUExVU107Cj4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoGhkci0+cmVzLnNjcmF0Y2ggPSBhbGxvY19wYWdlKEdGUF9L RVJORUwpOwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqByZXR1cm4gaGRyLT5yZXMu c2NyYXRjaCAhPSBOVUxMOwoKSG1tLi4uIERvZXMgaXQgbWFrZSBzZW5zZSB0byBkbyB0aGlzIGlm IHdlJ3JlIG9ubHkgcmVxdWVzdGluZyBhIHJlYWQgb2YKYSBmZXcgYnl0ZXM/IFBlcmhhcHMgd2Ug c2hvdWxkIGxvb2sgYXQgYSBtaW5pbXVtIHNpemUgd2hlbiBkZWNpZGluZwp3aGV0aGVyIG9yIG5v dCB0byBkbyByZWFkIHBsdXM/Cgo+ICvCoMKgwqDCoMKgwqDCoH0KPiArwqDCoMKgwqDCoMKgwqBy ZXR1cm4gZmFsc2U7Cj4gwqB9Cj4gwqAjZWxzZQo+IC1zdGF0aWMgdm9pZCBuZnM0Ml9yZWFkX3Bs dXNfc3VwcG9ydChzdHJ1Y3QgbmZzX3BnaW9faGVhZGVyICpoZHIsCj4gK3N0YXRpYyBib29sIG5m czQyX3JlYWRfcGx1c19zdXBwb3J0KHN0cnVjdCBuZnNfcGdpb19oZWFkZXIgKmhkciwKPiDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIHN0cnVjdCBycGNfbWVzc2FnZSAqbXNnKQo+IMKgewo+ICvCoMKgwqDCoMKgwqDC oHJldHVybiBmYWxzZTsKPiDCoH0KPiDCoCNlbmRpZiAvKiBDT05GSUdfTkZTX1Y0XzIgKi8KPiDC oAo+IEBAIC01NDcyLDggKzU0NzksOCBAQCBzdGF0aWMgdm9pZCBuZnM0X3Byb2NfcmVhZF9zZXR1 cChzdHJ1Y3QKPiBuZnNfcGdpb19oZWFkZXIgKmhkciwKPiDCoMKgwqDCoMKgwqDCoMKgaGRyLT50 aW1lc3RhbXDCoMKgID0gamlmZmllczsKPiDCoMKgwqDCoMKgwqDCoMKgaWYgKCFoZHItPnBnaW9f ZG9uZV9jYikKPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoGhkci0+cGdpb19kb25l X2NiID0gbmZzNF9yZWFkX2RvbmVfY2I7Cj4gLcKgwqDCoMKgwqDCoMKgbXNnLT5ycGNfcHJvYyA9 ICZuZnM0X3Byb2NlZHVyZXNbTkZTUFJPQzRfQ0xOVF9SRUFEXTsKPiAtwqDCoMKgwqDCoMKgwqBu ZnM0Ml9yZWFkX3BsdXNfc3VwcG9ydChoZHIsIG1zZyk7Cj4gK8KgwqDCoMKgwqDCoMKgaWYgKCFu ZnM0Ml9yZWFkX3BsdXNfc3VwcG9ydChoZHIsIG1zZykpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoG1zZy0+cnBjX3Byb2MgPSAmbmZzNF9wcm9jZWR1cmVzW05GU1BST0M0X0NMTlRf UkVBRF07Cj4gwqDCoMKgwqDCoMKgwqDCoG5mczRfaW5pdF9zZXF1ZW5jZSgmaGRyLT5hcmdzLnNl cV9hcmdzLCAmaGRyLT5yZXMuc2VxX3JlcywgMCwKPiAwKTsKPiDCoH0KPiDCoAo+IGRpZmYgLS1n aXQgYS9pbmNsdWRlL2xpbnV4L25mc194ZHIuaCBiL2luY2x1ZGUvbGludXgvbmZzX3hkci5oCj4g aW5kZXggZTg2Y2Y2NjQyZDIxLi42ZDgyMWFhZjBiMWEgMTAwNjQ0Cj4gLS0tIGEvaW5jbHVkZS9s aW51eC9uZnNfeGRyLmgKPiArKysgYi9pbmNsdWRlL2xpbnV4L25mc194ZHIuaAo+IEBAIC02NzAs NiArNjcwLDcgQEAgc3RydWN0IG5mc19wZ2lvX3JlcyB7Cj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqBzdHJ1Y3Qgewo+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoHVuc2lnbmVkIGludMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoHJlcGxlbjvC oMKgwqDCoMKgwqDCoMKgwqAvKgo+IHVzZWQgYnkgcmVhZCAqLwo+IMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoGludMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoGVvZjvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAvKgo+IHVzZWQg YnkgcmVhZCAqLwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgc3RydWN0IHBhZ2XCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCpzY3JhdGNoO8KgwqDCoMKg wqDCoMKgLyoKPiB1c2VkIGJ5IHJlYWQgKi8KPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoH07Cj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBzdHJ1Y3Qgewo+IMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoHN0cnVjdCBuZnNfd3Jp dGV2ZXJmICrCoMKgdmVyZjvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgLyoKPiB1c2VkIGJ5IHdyaXRl ICovCgotLSAKVHJvbmQgTXlrbGVidXN0CkxpbnV4IE5GUyBjbGllbnQgbWFpbnRhaW5lciwgSGFt bWVyc3BhY2UKdHJvbmQubXlrbGVidXN0QGhhbW1lcnNwYWNlLmNvbQoKCg==