Received: by 2002:a25:e7d8:0:0:0:0:0 with SMTP id e207csp2070956ybh; Sun, 15 Mar 2020 18:25:10 -0700 (PDT) X-Google-Smtp-Source: ADFU+vsHKlDFD8bb+kWpIeq8U/su10bydps1mxOc8JnAgXFjnQj65pxE/UAjvS/sXZNxfMvAxuaC X-Received: by 2002:a05:6830:2014:: with SMTP id e20mr4595986otp.317.1584321910262; Sun, 15 Mar 2020 18:25:10 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1584321910; cv=pass; d=google.com; s=arc-20160816; b=Fw4eaL147mIt/fXOQChdFZn71dpQY2P58PtpdjSo+Zlyc1LKtXYojq83nP6OHREPoA hKkKml0/UZFiq+0RhYAeDKgr8LUUB59Sal49vxf6dJmnVai/Fv2vE5S1e+6wyZU8SDDr Lu/0eZUKi177BnjwtZUEULx7BFVCgbQWkSyRy5F6XzvBz+3U0J6ydLRqjdGDdv4jN/UB vXLXcjwyzKMWKRXXLZxCOxiMTIDokySP3Cd34t+RvhSgy8x+IQBY2ImGS4XWw8hIEtWd 356LkrPhLO8S1wuQPnpsNOLJkvwZAuXIwydfkhvfLt+pMYmVwXDcDwAftYN1z1WdObsw YcZw== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:content-transfer-encoding :content-id:content-language:accept-language:in-reply-to:references :message-id:date:thread-index:thread-topic:subject:cc:to:from :dkim-signature; bh=nIATE5IHK858aJE3+7xFPZAgpmjGoEp40chQq2L0eaM=; b=pDrICufEmXJCLGTAL4qfYdA+6jXJXgiadqgl4iDwAv67RNj5/BnWOv/jNxTRzwC5co PVXpzXRG08MXwydmOZkI7RDi1tl63qY0RE6u21BgJuOPKUjxCuBTEu7Erq8qMrQ4tgFG oo934I0TMR5cIXcOH+tI0NOZGRG2wwGFJ3R3xH0Rt/qNOLOAd7ZzPCRzZA9uTxyhS31n AJMDthDclwuJZCkvC5AA2JmUZf0Wys38ZcEUuw2lpxnl+53RVUuXCH2QFwKiDm3z69jA ijrwPfpuj4JHXhaYeojURRkn2yI9I3QY8pAENwSFHY02WIr/YBeSRR3gx15++czct6sc cf2A== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@hammerspace.com header.s=selector2 header.b=QSLE6fcC; arc=pass (i=1 spf=pass spfdomain=hammerspace.com dkim=pass dkdomain=hammerspace.com dmarc=pass fromdomain=hammerspace.com); spf=pass (google.com: best guess record for domain of linux-nfs-owner@vger.kernel.org designates 209.132.180.67 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 vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id r13si8936902otd.167.2020.03.15.18.24.46; Sun, 15 Mar 2020 18:25:10 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-nfs-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@hammerspace.com header.s=selector2 header.b=QSLE6fcC; arc=pass (i=1 spf=pass spfdomain=hammerspace.com dkim=pass dkdomain=hammerspace.com dmarc=pass fromdomain=hammerspace.com); spf=pass (google.com: best guess record for domain of linux-nfs-owner@vger.kernel.org designates 209.132.180.67 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 S1729346AbgCPBXE (ORCPT + 99 others); Sun, 15 Mar 2020 21:23:04 -0400 Received: from mail-dm6nam10on2132.outbound.protection.outlook.com ([40.107.93.132]:53728 "EHLO NAM10-DM6-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1729300AbgCPBXE (ORCPT ); Sun, 15 Mar 2020 21:23:04 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Fk4ryV0Kqoy7JUTROUj6m5voONaRlTPffdyxuRrsBDo5ruf/GZvli6sBXUBGMVeywoW3m8sEOKH02sHo9hFeVQFmbPWdDJwmxc0kJfMlCKw7gre4wkiUQQMAktGmEOHOqUVq3KQq4aIhRLKCdYWEaVRKjJBC2idsrnM8e+IT1PKHhQQnmNiP+4uDUQwkkKCP3hnhEjzGa9c3H0/RrcvS1UWYYOOi+JMBkesvcVT4Xk7PwPO2fgKp7Ksctlrr0dDhgqisnkoF4ExTDVGQVvvzw7rFFOifCAxi/GIeCeNoe9qqRFwpTQsdw4n1UZiazriShTyFXFfkgVq87XJ5dsSBHA== 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-SenderADCheck; bh=nIATE5IHK858aJE3+7xFPZAgpmjGoEp40chQq2L0eaM=; b=XpKjLf6oVcYO2B5zt9NlXxvt/i0AsHRCY8o1HWTR+pcxy+muCiVcRzuOPfh0LXRJ2mU6bBMzV+WLK7SYhs4QoD5rXxImrKmdIO0NjvkaEWNWm94jKGzbKDYWvaBTVblHPeJmOPMvh2hVYUF07y5IdGL7SHId4mstNJvFy8R+RDBMbSQXKyeA52ou1FayrNzBSWUTmxoHnfLplG3yrCBup7hpVslu8WVvA8jj/KrLcbolzMEaWn346HurLsRXrlRfAKMAeZ3m0kJKnElq2pOkKGx/DGYUZzzACDHkeIczFxVFfGcOYF837R3bEwacuD+fWphLZjkf3zs6tV9LM/4AAw== 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=nIATE5IHK858aJE3+7xFPZAgpmjGoEp40chQq2L0eaM=; b=QSLE6fcCR8yS5TQxEi1FiqEgOFUSQ2EMdafhjX+tCldBjJOCLPkn0XeFD9R98ZaAaYAahLKtrR/w7O/U6CHaIOALxjUckpv2qHCaXahdRNnQINgSe8UOJR39oO7om23jakO4HwzrtBA4Yo+ufKpwatrLcPiIGQYlvA+3SPCJL6k= Received: from BY5PR13MB3396.namprd13.prod.outlook.com (2603:10b6:a03:196::30) by BY5PR13MB3490.namprd13.prod.outlook.com (2603:10b6:a03:1ac::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2835.12; Mon, 16 Mar 2020 01:22:58 +0000 Received: from BY5PR13MB3396.namprd13.prod.outlook.com ([fe80::35ee:fe5:fe17:fa85]) by BY5PR13MB3396.namprd13.prod.outlook.com ([fe80::35ee:fe5:fe17:fa85%6]) with mapi id 15.20.2835.012; Mon, 16 Mar 2020 01:22:58 +0000 From: Trond Myklebust To: "neilb@suse.de" , "Anna.Schumaker@Netapp.com" CC: "linux-nfs@vger.kernel.org" Subject: Re: [PATCH/RFC] NFS: Minimize COMMIT calls during writeback. Thread-Topic: [PATCH/RFC] NFS: Minimize COMMIT calls during writeback. Thread-Index: AQHV+yakSiG1mHeDHU6uGW2VQQ2dq6hKbIoA Date: Mon, 16 Mar 2020 01:22:58 +0000 Message-ID: References: <87y2s1rwof.fsf@notabene.neil.brown.name> In-Reply-To: <87y2s1rwof.fsf@notabene.neil.brown.name> Accept-Language: en-US, en-GB Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=trondmy@hammerspace.com; x-originating-ip: [68.40.189.247] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 16537a8c-be1a-4334-8fd6-08d7c9488fd5 x-ms-traffictypediagnostic: BY5PR13MB3490: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:6790; x-forefront-prvs: 03449D5DD1 x-forefront-antispam-report: SFV:NSPM;SFS:(10019020)(366004)(136003)(39830400003)(376002)(396003)(346002)(199004)(110136005)(5660300002)(71200400001)(76116006)(478600001)(66446008)(86362001)(91956017)(64756008)(66556008)(66946007)(66476007)(316002)(2906002)(6512007)(8936002)(4326008)(8676002)(81166006)(36756003)(81156014)(6486002)(6506007)(2616005)(26005)(186003);DIR:OUT;SFP:1102;SCL:1;SRVR:BY5PR13MB3490;H:BY5PR13MB3396.namprd13.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;A:1; received-spf: None (protection.outlook.com: hammerspace.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: jAXlV2yPg9uAflVskxp+Ds2SPqjfVbLdegEs8jJVcWS8N4+XtBbo+93CDHcOB9HHJ51WHLOmtvuNHHbwLb9PddmKWBX84iJGlPhwuu2v8PG1OLS3mlfu9IbIi1O8/538kAuYFCiTXzAYoWK+p8mfgRyFTRLVET9yqXOOVaogOqX9ymRu0pucnak3FEtzs2D15DhmSEsGDLh4XEZ91+ax5dmbLJuuzTqECydhBl1f8otPGegDteJFHFb4Af1xrw1eU9ytWt38jg8Gp6zw4yuJIgieGDOpsF9+Hx32Ufiz16QbZWxAuZtevHRtCkf97xxS75HoF7Nq31EdpR56gLMIyClLYh8EWTN4pli/AHGZjQFmb0Y05kdQ2HQZzmY6Ai8rPr6NJtEtmVeOzOhVsxdDY5kbow2arLAdwkYfB0UOEaUNMM7/5/qYSReipm9X/EAm x-ms-exchange-antispam-messagedata: yXOVb37zl4/3w4irirLe4+a08/5XoBuXETqP2LYyg26YtzyE9Z0peIIRdBHcG5WtEgX6tQ9faqcVGHR3oQr126BxZAC+XUI8lz0qIt8q3QzSCxPjEWKKBbYRO9Q7kgC9ZQne11QNr8f1OZBf8MhIOw== x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: hammerspace.com X-MS-Exchange-CrossTenant-Network-Message-Id: 16537a8c-be1a-4334-8fd6-08d7c9488fd5 X-MS-Exchange-CrossTenant-originalarrivaltime: 16 Mar 2020 01:22:58.3391 (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: ZmTjk07u4wzcPm1XFitDS1HnZu3BB0PxaWrkWk4XO0xA2JVfe+Qt/FPu821bKw3NtRfTrsb0QI5hd71nQNU9nQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR13MB3490 Sender: linux-nfs-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-nfs@vger.kernel.org T24gTW9uLCAyMDIwLTAzLTE2IGF0IDExOjA1ICsxMTAwLCBOZWlsQnJvd24gd3JvdGU6DQo+IFNp bmNlIDQuMTMgKHNlZSBGaXhlczogY29tbWl0KSBORlMgaGFzIHNlbnQgYSBDT01NSVQgcmVxdWVz dCBmb3INCj4gZXZlcnkNCj4gLndyaXRlcGFnZXMoKSBjYWxsIGl0IHJlY2VpdmVkIC0gd2hlbiB0 aGUgd3JpdGVzIHN1Ym1pdHRlZCBmb3IgdGhhdA0KPiBjYWxsDQo+IGhhdmUgYWxsIGNvbXBsZXRl ZC4NCj4gDQo+IFRoaXMgd29ya3Mgd2VsbCBlbm91Z2ggd2hlbiBDT01NSVQgaXMgZmFzdCwgYnV0 IGlmIENPTU1JVCBpcyBzbG93DQo+IHRoZXNlDQo+IGNhbGxzIGNhbiBvdmVybGFwIGVhY2ggb3Ro ZXIsIG92ZXJsb2FkIHRoZSBzZXJ2ZXIsIGFuZCBzdWJzdGFudGlhbGx5DQo+IHJlZHVjZSB0aHJv dWdocHV0Lg0KPiANCj4gSSBsb29rZWQgYXQgdGhpcyBkdWUgdG8gYSByZXBvcnQgb2YgcmVncmVz c2lvbiB3aGVuIHdyaXRpbmcgdG8gYQ0KPiBHYW5lc2hhDQo+IE5GUyBzZXJ2ZXIgd2l0aCB0cmFj aW5nIHNob3dpbmcgbXVsdGlwbGUgb3ZlcmxhcHBpbmcgQ09NTUlUcywgYW5kDQo+IGluZGl2aWR1 YWwgY29tbWl0cyB0eXBpY2FsbHkgdGFraW5nIDIwMG1zIHRvIDMwMG1zLiAgVGhpcyByZXN1bHRl ZCBpbg0KPiAyDQo+IG9yZGVycyBvZiBtYWduaXR1ZGUgc2xvdyBkb3duIHdoZW4gd3JpdGluZyAx MDAweDFNIGZyb20gL2Rldi96ZXJvDQo+IHdpdGggZGQuDQo+IFRoaXMgaXMgZWFzaWx5IHJlcHJv ZHVjZWQgYnkgYWRkaW5nICdtc2xlZXAoMzAwKScgdG8gbmZzZF9jb21taXQoKSBpbg0KPiB0aGUN Cj4gTGludXggTkZTIHNlcnZlci4NCg0KDQpXaGVuIHRoZXJlIGlzIG92ZXJsYXAgb2Ygd3JpdGVi YWNrIHRvIHRoZSBzYW1lIGZpbGUsIHRoZW4gaXQgaXMgYWxtb3N0DQphbHdheXMgYmVjYXVzZSB3 ZSdyZSBoaXR0aW5nIG1lbW9yeSByZWNsYWltIG9uIHRoZSBjbGllbnQuIEluIHRoYXQgY2FzZQ0K d2Ugd2FudCB0byBlbnN1cmUgdGhhdCBtZW1vcnkgcmVjbGFpbSBjb21wbGV0ZXMsIHdoaWNoIGl0 IHdvbid0IGRvIGlmDQp3ZSBkZWxheSBDT01NSVQuDQpJT1c6IHRoaXMgYmVoYXZpb3VyIGlzIHZl cnkgbXVjaCBpbnRlbnRpb25hbC4NCg0KPiBUaGlzIHBhdGNoIGNoYW5nZXMgdGhlIGRldGFpbHMg b2Ygd2hlbiBDT01NSVQgaXMgc2VudCB3aXRob3V0DQo+IGNoYW5naW5nDQo+IHRoZSBnZW5lcmFs IGFwcHJvYWNoLg0KPiANCj4gV2hlcmUgcHJldmlvdXNseSB0aGUgd3JpdGVzIGZyb20gYSBzaW5n bGUgLndyaXRlcGFnZXMoKSBjYWxsIHdlcmUNCj4gYWNjb3VudGVkIHRvZ2V0aGVyIGluIGEgbmZz X2lvX2NvbXBsZXRpb24sIG5vdyB0aGUgd3JpdGVzIGZyb20NCj4gbXVsdGlwbGUNCj4gd3JpdGVw YWdlcygpIGNhbGxzIGFyZSBhY2NvdW50ZWQgdG9nZXRoZXIuICBUaGUgc2V0IG9mIHdyaXRlcGFn ZXMNCj4gY2FsbHMNCj4gdGhhdCBhcmUgZ3JvdXBlZCB0b2dldGhlciBhcmUgYWxsIHRob3NlIGZy b20gd2hlbiBvbmUgQ09NTUlUIGNhbGwNCj4gZW5kcw0KPiB0byB3aGVuIHRoZSBuZXh0IENPTU1J VCBjYWxsIGVuZHMuICBUaGlzIGF1dG9tYXRpY2FsbHkgcmVkdWNlcyB0aGUNCj4gcmF0ZQ0KPiBv ZiBDT01NSVQgcmVxdWVzdHMgd2hlbiBDT01NSVQgaXRzZWxmIGlzIHNsb3cuDQo+IChJZiB0aGVy ZSBhcmUgbm8gQ09NTUlUIGNhbGxzIHBlbmRpbmcsIHRoZSBmaXJzdCAud3JpdGVwYWdlcyB3aWxs IGdldA0KPiAgYW4gbmZzX2lvX2NvbXBsZXRpb24gdG8gaXRzZWxmLCB0aGVuIHN1YnNlcXVlbmN0 IHdyaXRlcGFnZXMgcmVxdWVzdHMNCj4gIHVudGlsIHRoZSBmaXJzdCBDT01NSVQgY29tcGxldGVz IHdpbGwgZ28gaW4gdGhlIG5leHQNCj4gbmZzX2lvX2NvbXBsZXRpb24pDQo+IA0KPiBUaGVyZSBh cmUgdHlwaWNhbGx5IGF0IG1vc3QgdHdvIG5mc19pb19jb21wbGV0aW9uIHN0cnVjdHVyZXMNCj4g YWxsb2NhdGVkDQo+IGZvciB3cml0ZWJhY2sgdG8gYSBnaXZlbiBpbm9kZS4NCj4gDQo+IC0gSWYg dGhlcmUgd2FzIGJlZW4gYW55IHdyaXRlcGFnZXMgY2FsbHMgc2luY2UgdGhlIGxhc3QgdGltZSBh IENPTU1JVA0KPiAgIGNvbXBsZXRlZCwgdGhlcmUgd2lsbCBiZSBhbiBuZnNfaW9fY29tcGxldGlv biBzdG9yZWQgaW4gdGhlIGlub2RlDQo+IChpbg0KPiAgIG5mc19tZHNfY29tbWl0X2luZm8pIHdo aWNoIG5ldyB3cml0ZXBhZ2VzIHJlcXVlc3RzIGFyZSBhY2NvdW50ZWQNCj4gaXQuDQo+IA0KPiAt IElmIHRoZXJlIGlzIG5vIHBlbmRpbmcgQ09NTUlUIHJlcXVlc3QsIGJ1dCB0aGVyZSBhcmUgcGVu ZGluZw0KPiB3cml0ZWJhY2sNCj4gICBXUklURVMsIHRoZXJlIHdpbGwgYmUgYW5vdGhlciBuZnNf aW9fY29tcGxldGlvbiB3aGljaCBpcyBub3QNCj4gYXR0YWNoZWQNCj4gICBhbmQgd2hpY2ggaXMg ZHJhaW5pbmcuICBXaGVuIGl0IGZ1bGx5IGRyYWlucyBhIENPTU1JVCB3aWxsIGJlIHNlbnQuDQo+ ICAgV2hlbiB0aGF0IENPTU1JVCBjb21wbGV0ZXMsIHRoZSBhdHRhY2hlZCBuZnNfaW9fY29tcGxl dGlvbiB3aWxsIGJlDQo+ICAgZGV0YWNoZWQgYW5kIGFsbG93ZWQgdG8gZHJhaW4uDQo+IA0KPiBU aGUgcnBjc19vdXQgY291bnRlciBub3cgY291bnRzIHRoZSB1bmF0dGFjaGVkIG5mc19pb19jb21w bGV0aW9uIGFzDQo+IHdlbGwNCj4gYXMgYW55IHBlbmRpbmcgQ09NTUlUIHJlcXVlc3RzLiAgQXMg YW4gdW5hdHRhY2hlZCBuZnNfaW9fY29tcGxldGlvbg0KPiB3aWxsDQo+IHNvb24gdHVybiBpbnRv IGEgQ09NTUlUIHJlcXVlc3QsIHRoaXMgc2VlbXMgcmVhc29uYWJsZS4gIEl0IGFsbG93cyB1cw0K PiB0bw0KPiBjbGVhcmx5IGRldGVjdCB3aGVuIHRoZXJlIGFyZSBubyBsb25nZXIgYW55IENPTU1J VHMgZXhwZWN0ZWQgdG8NCj4gY29tcGxldGUsIHNvIHdlIGtub3cgdG8gZGV0YWNoIGFueSBuZnNf aW9fY29tcGxldGlvbiBmcm9tIHRoZSBpbm9kZQ0KPiBhbmQNCj4gYWxsb3cgaXQgdG8gZHJhaW4u DQo+IA0KPiBBcyB3ZSB1c2UgYXRvbWljIGFjY2Vzc2VzIChlLmcuICB4Y2hnIGFuZCBrcmVmX2dl dF91bmxlc3NfemVybygpKSB0bw0KPiBhY2Nlc3MgdGhlIGF0dGFjaGVkIG5mc19pb19jb21wbGV0 aW9uLCB3ZSBub3cgdXNlIGtmcmVlX3JjdSgpIHRvIGZyZWUNCj4gaXQsIHRvIGVuc3VyZSBpdCBp cyBub3QgYWNjZXNzZWQgYWZ0ZXIgaXQgaXMgZnJlZWQuDQo+IA0KPiBXaXRoIDMwMG1zIGNvbW1p dHMsIHRoaXMgaW1wcm92ZXMgdGhyb3VnaHQgb2YgYSAxRyBkZCBieSAyIG9yZGVycyBvZg0KPiBt YWduaXR1ZGUuICBFdmVuIHdpdGhvdXQgdGhlIDMwMG1zIGRlbGF5LCB0aGlzIG5vdGljZWFibHkg aW1wcm92ZXMNCj4gdGhyb3VnaHB1dCB0byBhIExpbnV4IE5GUyBzZXJ2ZXIgaXMgYSBzaW1wbGUg Vk0uDQo+IA0KPiBGaXhlczogOTE5ZTNiZDlhODc1ICgiTkZTOiBFbnN1cmUgd2UgY29tbWl0IGFm dGVyIHdyaXRlYmFjayBpcw0KPiBjb21wbGV0ZSIpDQo+IFNpZ25lZC1vZmYtYnk6IE5laWxCcm93 biA8bmVpbGJAc3VzZS5kZT4NCj4gLS0tDQo+ICBmcy9uZnMvaW5vZGUuYyAgICAgICAgICB8ICAx ICsNCj4gIGZzL25mcy93cml0ZS5jICAgICAgICAgIHwgNTAgKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrLS0tDQo+IC0tDQo+ICBpbmNsdWRlL2xpbnV4L25mc194ZHIuaCB8ICA3 ICsrKysrKw0KPiAgMyBmaWxlcyBjaGFuZ2VkLCA1MyBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9u cygtKQ0KPiANCj4gZGlmZiAtLWdpdCBhL2ZzL25mcy9pbm9kZS5jIGIvZnMvbmZzL2lub2RlLmMN Cj4gaW5kZXggMTFiZjE1ODAwYWM5Li5jMDBiNTQ0OTE5NDkgMTAwNjQ0DQo+IC0tLSBhL2ZzL25m cy9pbm9kZS5jDQo+ICsrKyBiL2ZzL25mcy9pbm9kZS5jDQo+IEBAIC0yMTEwLDYgKzIxMTAsNyBA QCBzdGF0aWMgdm9pZCBpbml0X29uY2Uodm9pZCAqZm9vKQ0KPiAgCUlOSVRfTElTVF9IRUFEKCZu ZnNpLT5jb21taXRfaW5mby5saXN0KTsNCj4gIAlhdG9taWNfbG9uZ19zZXQoJm5mc2ktPm5yZXF1 ZXN0cywgMCk7DQo+ICAJYXRvbWljX2xvbmdfc2V0KCZuZnNpLT5jb21taXRfaW5mby5uY29tbWl0 LCAwKTsNCj4gKwluZnNpLT5jb21taXRfaW5mby5pb2MgPSBOVUxMOw0KPiAgCWF0b21pY19zZXQo Jm5mc2ktPmNvbW1pdF9pbmZvLnJwY3Nfb3V0LCAwKTsNCj4gIAlpbml0X3J3c2VtKCZuZnNpLT5y bWRpcl9zZW0pOw0KPiAgCW11dGV4X2luaXQoJm5mc2ktPmNvbW1pdF9tdXRleCk7DQo+IGRpZmYg LS1naXQgYS9mcy9uZnMvd3JpdGUuYyBiL2ZzL25mcy93cml0ZS5jDQo+IGluZGV4IGM0NzhiNzcy Y2M0OS4uNTdlMjA5Zjk2NGU0IDEwMDY0NA0KPiAtLS0gYS9mcy9uZnMvd3JpdGUuYw0KPiArKysg Yi9mcy9uZnMvd3JpdGUuYw0KPiBAQCAtNDcsNiArNDcsNyBAQCBzdHJ1Y3QgbmZzX2lvX2NvbXBs ZXRpb24gew0KPiAgCXZvaWQgKCpjb21wbGV0ZSkodm9pZCAqZGF0YSk7DQo+ICAJdm9pZCAqZGF0 YTsNCj4gIAlzdHJ1Y3Qga3JlZiByZWZjb3VudDsNCj4gKwlzdHJ1Y3QgcmN1X2hlYWQgcmN1Ow0K PiAgfTsNCj4gIA0KPiAgLyoNCj4gQEAgLTEzNCw3ICsxMzUsNyBAQCBzdGF0aWMgdm9pZCBuZnNf aW9fY29tcGxldGlvbl9yZWxlYXNlKHN0cnVjdCBrcmVmDQo+ICprcmVmKQ0KPiAgCXN0cnVjdCBu ZnNfaW9fY29tcGxldGlvbiAqaW9jID0gY29udGFpbmVyX29mKGtyZWYsDQo+ICAJCQlzdHJ1Y3Qg bmZzX2lvX2NvbXBsZXRpb24sIHJlZmNvdW50KTsNCj4gIAlpb2MtPmNvbXBsZXRlKGlvYy0+ZGF0 YSk7DQo+IC0Ja2ZyZWUoaW9jKTsNCj4gKwlrZnJlZV9yY3UoaW9jLCByY3UpOw0KPiAgfQ0KPiAg DQo+ICBzdGF0aWMgdm9pZCBuZnNfaW9fY29tcGxldGlvbl9nZXQoc3RydWN0IG5mc19pb19jb21w bGV0aW9uICppb2MpDQo+IEBAIC03MjAsNiArNzIxLDggQEAgc3RhdGljIHZvaWQgbmZzX2lvX2Nv bXBsZXRpb25fY29tbWl0KHZvaWQgKmlub2RlKQ0KPiAgCW5mc19jb21taXRfaW5vZGUoaW5vZGUs IDApOw0KPiAgfQ0KPiAgDQo+ICtzdGF0aWMgdm9pZCBuZnNfY29tbWl0X2VuZChzdHJ1Y3QgbmZz X21kc19jb21taXRfaW5mbyAqY2luZm8pOw0KPiArDQo+ICBpbnQgbmZzX3dyaXRlcGFnZXMoc3Ry dWN0IGFkZHJlc3Nfc3BhY2UgKm1hcHBpbmcsIHN0cnVjdA0KPiB3cml0ZWJhY2tfY29udHJvbCAq d2JjKQ0KPiAgew0KPiAgCXN0cnVjdCBpbm9kZSAqaW5vZGUgPSBtYXBwaW5nLT5ob3N0Ow0KPiBA QCAtNzI5LDkgKzczMiwzNyBAQCBpbnQgbmZzX3dyaXRlcGFnZXMoc3RydWN0IGFkZHJlc3Nfc3Bh Y2UNCj4gKm1hcHBpbmcsIHN0cnVjdCB3cml0ZWJhY2tfY29udHJvbCAqd2JjKQ0KPiAgDQo+ICAJ bmZzX2luY19zdGF0cyhpbm9kZSwgTkZTSU9TX1ZGU1dSSVRFUEFHRVMpOw0KPiAgDQo+IC0JaW9j ID0gbmZzX2lvX2NvbXBsZXRpb25fYWxsb2MoR0ZQX0tFUk5FTCk7DQo+IC0JaWYgKGlvYykNCj4g LQkJbmZzX2lvX2NvbXBsZXRpb25faW5pdChpb2MsIG5mc19pb19jb21wbGV0aW9uX2NvbW1pdCwN Cj4gaW5vZGUpOw0KPiArCXJjdV9yZWFkX2xvY2soKTsNCj4gKwlpb2MgPSByY3VfZGVyZWZlcmVu Y2UoTkZTX0koaW5vZGUpLT5jb21taXRfaW5mby5pb2MpOw0KPiArCWlmIChpb2MgJiYga3JlZl9n ZXRfdW5sZXNzX3plcm8oJmlvYy0+cmVmY291bnQpKSB7DQo+ICsJCXJjdV9yZWFkX3VubG9jaygp Ow0KPiArCQkvKiBXZSd2ZSBzdWNjZXNzZnVsbHkgcGlnZ3liYWNrZWQgb24gdGhlIGF0dGFjaGVk IGlvYw0KPiAqLw0KPiArCX0gZWxzZSB7DQo+ICsJCXJjdV9yZWFkX3VubG9jaygpOw0KPiArCQlp b2MgPSBuZnNfaW9fY29tcGxldGlvbl9hbGxvYyhHRlBfS0VSTkVMKTsNCj4gKwkJaWYgKGlvYykg ew0KPiArCQkJc3RydWN0IG5mc19pb19jb21wbGV0aW9uICppb2NfcHJldjsNCj4gKw0KPiArCQkJ bmZzX2lvX2NvbXBsZXRpb25faW5pdChpb2MsDQo+IG5mc19pb19jb21wbGV0aW9uX2NvbW1pdCwN Cj4gKwkJCQkJICAgICAgIGlub2RlKTsNCj4gKwkJCS8qIFRlbXBvcmFyaWx5IGVsZXZhdGUgcnBj c19vdXQgdG8gZW5zdXJlIGENCj4gY29tbWl0DQo+ICsJCQkgKiBjb21wbGV0aW9uICp3aWxsKiBo YXBwZW4gYWZ0ZXIgd2UgYXR0YWNoDQo+IHRoaXMgaW9jLA0KPiArCQkJICogc28gaXQgKndpbGwq IGdldCBhIGNoYW5jZSB0byBkcmFpbi4NCj4gKwkJCSAqLw0KPiArCQkJYXRvbWljX2luYygmTkZT X0koaW5vZGUpLQ0KPiA+Y29tbWl0X2luZm8ucnBjc19vdXQpOw0KPiArCQkJbmZzX2lvX2NvbXBs ZXRpb25fZ2V0KGlvYyk7DQo+ICsJCQlpb2NfcHJldiA9IHhjaGcoJk5GU19JKGlub2RlKS0+Y29t bWl0X2luZm8uaW9jLA0KPiArCQkJCSAgICBpb2MpOw0KPiArCQkJLyogaW9jX3ByZXYgaXMgbm9y bWFsbHkgTlVMTCwgYnV0IHJhY2luZw0KPiB3cml0ZXBhZ2VzDQo+ICsJCQkgKiBjYWxscyBtaWdo dCByZXN1bHQgaW4gaXQgYmVpbmcgbm9uLU5VTEwuDQo+ICsJCQkgKiBJbiBlaXRoZXIgY2FzZSBp dCBpcyBzYWZlIHRvIHB1dCBpdCAtIHdvcnN0DQo+IGNhc2UNCj4gKwkJCSAqIHdlIGdldCBhbiBl eHRyYSBDT01NSVQuDQo+ICsJCQkgKi8NCj4gKwkJCW5mc19pb19jb21wbGV0aW9uX3B1dChpb2Nf cHJldik7DQo+ICsJCQkvKiByZWxlYXNlIHRlbXBvcmFyeSByZWYgb24gcnBjc19vdXQgKi8NCj4g KwkJCW5mc19jb21taXRfZW5kKCZORlNfSShpbm9kZSktPmNvbW1pdF9pbmZvKTsNCg0KU28gd29u J3QgdGhpcyBub3JtYWxseSB0cmlnZ2VyIHRoZSB4Y2hnKE5VTEwpIGluIG5mc19jb21tbWl0X2Vu ZCgpPyBGb3INCm1vc3QgY2FzZXMsIEknZCBleHBlY3QgY29tbWl0X2luZm8ucnBjc19vdXQgdG8g YmUgemVybyB1bnRpbCB3ZSBzdGFydA0KYWN0dWFsbHkgc2VuZGluZyBvdXQgdGhlIENPTU1JVHMu DQoNCj4gKwkJfQ0KPiArCX0NCj4gIA0KPiAgCW5mc19wYWdlaW9faW5pdF93cml0ZSgmcGdpbywg aW5vZGUsIHdiX3ByaW9yaXR5KHdiYyksIGZhbHNlLA0KPiAgCQkJCSZuZnNfYXN5bmNfd3JpdGVf Y29tcGxldGlvbl9vcHMpOw0KPiBAQCAtMTY3Nyw4ICsxNzA4LDE3IEBAIHN0YXRpYyB2b2lkIG5m c19jb21taXRfYmVnaW4oc3RydWN0DQo+IG5mc19tZHNfY29tbWl0X2luZm8gKmNpbmZvKQ0KPiAg DQo+ICBzdGF0aWMgdm9pZCBuZnNfY29tbWl0X2VuZChzdHJ1Y3QgbmZzX21kc19jb21taXRfaW5m byAqY2luZm8pDQo+ICB7DQo+IC0JaWYgKGF0b21pY19kZWNfYW5kX3Rlc3QoJmNpbmZvLT5ycGNz X291dCkpDQo+ICsJaWYgKGF0b21pY19kZWNfYW5kX3Rlc3QoJmNpbmZvLT5ycGNzX291dCkpIHsN Cj4gKwkJLyogV2hlbiBhIGNvbW1pdCBmaW5pc2hlcywgd2UgbXVzdCByZWxlYXNlIGFueSBhdHRh Y2hlZA0KPiArCQkgKiBuZnNfaW9fY29tcGxldGlvbiBzbyB0aGF0IGl0IGNhbiBkcmFpbiBhbmQg dGhlbg0KPiByZXF1ZXN0DQo+ICsJCSAqIGFub3RoZXIgY29tbWl0Lg0KPiArCQkgKi8NCj4gKwkJ c3RydWN0IG5mc19pb19jb21wbGV0aW9uICppb2M7DQo+ICsJCWlvYyA9IHhjaGcoJmNpbmZvLT5p b2MsIE5VTEwpOw0KPiArCQluZnNfaW9fY29tcGxldGlvbl9wdXQoaW9jKTsNCj4gKw0KPiAgCQl3 YWtlX3VwX3ZhcigmY2luZm8tPnJwY3Nfb3V0KTsNCj4gKwl9DQo+ICB9DQo+ICANCj4gIHZvaWQg bmZzX2NvbW1pdGRhdGFfcmVsZWFzZShzdHJ1Y3QgbmZzX2NvbW1pdF9kYXRhICpkYXRhKQ0KPiBk aWZmIC0tZ2l0IGEvaW5jbHVkZS9saW51eC9uZnNfeGRyLmggYi9pbmNsdWRlL2xpbnV4L25mc194 ZHIuaA0KPiBpbmRleCA5NGM3N2VkNTVjZTEuLjg5ZGIxZTlkNDYxZCAxMDA2NDQNCj4gLS0tIGEv aW5jbHVkZS9saW51eC9uZnNfeGRyLmgNCj4gKysrIGIvaW5jbHVkZS9saW51eC9uZnNfeGRyLmgN Cj4gQEAgLTE1NTcsOSArMTU1NywxNiBAQCBzdHJ1Y3QgbmZzX3BnaW9faGVhZGVyIHsNCj4gIH07 DQo+ICANCj4gIHN0cnVjdCBuZnNfbWRzX2NvbW1pdF9pbmZvIHsNCj4gKwkvKiBycGNzX291dCBj b3VudHMgcGVuZGluZyBDT01NSVQgcnBjcyBwbHVzIHBlbmRuZw0KPiBuZnNfaW9fY29tcGxldGlv bnMNCj4gKwkgKiB3aGljaCBhcmUgKm5vdCogYXR0YWNoZWQgYXQgJ2lvYycgYmVsb3cuICBTdWNo DQo+IG5mc19pb19jb21wbGVpb25zDQo+ICsJICogKG5vcm1hbGx5IGF0IG1vc3Qgb25lKSB3aWxs IGRyYWluIGFzIHdyaXRlcyBjb21wbGV0ZSBhbmQNCj4gdGhlbiB0cmlnZ2VyDQo+ICsJICogYSBD T01NSVQsIHNvIHRoZXkgY2FuIGJlIGNvbnNpZGVyZWQgYXMgcGVuZGluZyBDT01NSVRzIHdoaWNo DQo+IGhhdmVuJ3QNCj4gKwkgKiBiZWVuIHNlbnQgeWV0DQo+ICsJICovDQo+ICAJYXRvbWljX3Qg cnBjc19vdXQ7DQo+ICAJYXRvbWljX2xvbmdfdAkJbmNvbW1pdDsNCj4gIAlzdHJ1Y3QgbGlzdF9o ZWFkCWxpc3Q7DQo+ICsJc3RydWN0IG5mc19pb19jb21wbGV0aW9uICppb2M7DQo+ICB9Ow0KPiAg DQo+ICBzdHJ1Y3QgbmZzX2NvbW1pdF9pbmZvOw0KLS0gDQpUcm9uZCBNeWtsZWJ1c3QNCkxpbnV4 IE5GUyBjbGllbnQgbWFpbnRhaW5lciwgSGFtbWVyc3BhY2UNCnRyb25kLm15a2xlYnVzdEBoYW1t ZXJzcGFjZS5jb20NCg0KDQo=