From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id D0D19A00C3; Wed, 26 Jan 2022 04:27:14 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 6377A426E4; Wed, 26 Jan 2022 04:27:09 +0100 (CET) Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by mails.dpdk.org (Postfix) with ESMTP id 297044118A for ; Wed, 26 Jan 2022 04:27:07 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1643167627; x=1674703627; h=from:to:subject:date:message-id:references:in-reply-to: content-transfer-encoding:mime-version; bh=SXlDbXYf1jV22j8PJUWyuPr++NY/QBxdxP6x0PRT60g=; b=kO7s3Vn1fBbzhWA8EA9b0+gJ6KKVV1/3oCpJgd+cYAwJbeltTG/ng3Be oDOceh2BakfpSVDR4cXX1JYtsTNeha0qH4/8ozu2qNCAtC7AxESikA6Hm jrSWt62Gq2eTFwBpZas9sgDRKohRxhECS1wbqdHXKK8+6iTlFxzqaL50V 4KCZYvdyRZvE5fwezm2DA4PTERrCpmo0nzNAb+wbGVr4Sbl8MTwKuMz9G AwTfaj9VYYk2V4Lqht1ynpG3GBhWppCCSXRhp7dZwbz/zi6qM0vob1jak fO5Rx9KzPiS1Wf256XugSnAN5ryHQW/oBgfpqyi+srXK5puppRvCN93/o A==; X-IronPort-AV: E=McAfee;i="6200,9189,10238"; a="226449860" X-IronPort-AV: E=Sophos;i="5.88,316,1635231600"; d="scan'208";a="226449860" Received: from orsmga006.jf.intel.com ([10.7.209.51]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 25 Jan 2022 19:27:06 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.88,316,1635231600"; d="scan'208";a="479751367" Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83]) by orsmga006.jf.intel.com with ESMTP; 25 Jan 2022 19:27:05 -0800 Received: from fmsmsx601.amr.corp.intel.com (10.18.126.81) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20; Tue, 25 Jan 2022 19:27:05 -0800 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20 via Frontend Transport; Tue, 25 Jan 2022 19:27:05 -0800 Received: from NAM04-DM6-obe.outbound.protection.outlook.com (104.47.73.42) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2308.20; Tue, 25 Jan 2022 19:27:03 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jY8CMy00J6xYCkKVBIJyTHKw+q+/bg7bBvcNCrjPWh28mVs87ozu6mzbg/xpohXsO3UONRqh7eVqrbuHgJ+dVLLUIc5iqnRc6lvwL96CC/Fm9gpK3lHNMjIi6m44zF36kI6GDnbVMtlgKhT2aVOtErWsu1kQShY8bv4t3RsHGcw46oK8hLnXQfnq7XG13iXKxtGBVVXqLp7Cq0PBjw7Cl8sf9kDzk13/PHtdt+oKHgfoIfMrf+pvqLhjjKtWTCRbQUxwcQ7E7tGhmtdBDh/GfYJcF7GtSVG4GLDIojRmuivk4+5dcC+IS2TKRkjdc7D9aYnRyXlRifhMyRKUaVsLwQ== 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=SXlDbXYf1jV22j8PJUWyuPr++NY/QBxdxP6x0PRT60g=; b=C+epkacjyUqAA7edNZT8gEHBNjwhqF++1ZEoPBvumIFHggjj/FqfZUa9PBt+RFrlhTGGVWOeVLkFN+vgkPBZ7ltypgJ/1qKIfcAp/gU1Q9nMAlK18i/Ni8bPnGoZgZXDlDR/PwLc2SAwY/zCti1neCqYGRR+6isH+2xNlSuei5VADQP0moRY4iarUlA33w3NyWK+8Udln2u5gjHUx/8FZBFIbpDLapPWt4r/QjRH5HyOB93F4xpbYomtrM2q9S7CTdhOB58QGV/R6WopE04fh1t3HoeJrKooILpTaDEal/ShhPn2PjwZ7stt0kjkjH8zhufSuesJHfRx7y36bLWPqw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none Received: from SN6PR11MB3504.namprd11.prod.outlook.com (2603:10b6:805:d0::17) by BN8PR11MB3570.namprd11.prod.outlook.com (2603:10b6:408:90::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4930.15; Wed, 26 Jan 2022 03:27:01 +0000 Received: from SN6PR11MB3504.namprd11.prod.outlook.com ([fe80::9d80:4063:d2c8:5c8c]) by SN6PR11MB3504.namprd11.prod.outlook.com ([fe80::9d80:4063:d2c8:5c8c%5]) with mapi id 15.20.4909.019; Wed, 26 Jan 2022 03:27:01 +0000 From: "Xia, Chenbo" To: Maxime Coquelin , "dev@dpdk.org" , "david.marchand@redhat.com" Subject: RE: [PATCH v2 7/9] vhost: remove multi-line logs Thread-Topic: [PATCH v2 7/9] vhost: remove multi-line logs Thread-Index: AQHYEd5itRFhWmh71EqolDOf7aWfGqx0or/g Date: Wed, 26 Jan 2022 03:27:01 +0000 Message-ID: References: <20220125112457.166434-1-maxime.coquelin@redhat.com> <20220125112457.166434-8-maxime.coquelin@redhat.com> In-Reply-To: <20220125112457.166434-8-maxime.coquelin@redhat.com> Accept-Language: en-US, zh-CN 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=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 009e1962-7142-48ed-c8a8-08d9e07bb7ca x-ms-traffictypediagnostic: BN8PR11MB3570:EE_ x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:4303; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: WCZVv593MjXJdF4RDWdpymkzKABbmZbVPO3EAHPL9BJvmy53H1yaLZ6lA71tONqAx+2viymjQtkkmnY581vIFTVqsSnGcFD9lNTxd3F/6IYMITXwSuWN2igZh1ZVgCuNj4V2KGNeB7/EXozf1syj285XtEZbFj38FZX71PbhYiuUHPpA7p2CE2WDC215rrmv93T0wPcqZ+SEQ0kHdW+8gO2No3KOzKNMCV7kRHQbMJjD67mYFhlAPim1TxqYEnytPRcHxH7ZijaZd1P5sWGNWDo1ImSGDMavi1q0VmJ/eSq00qvipUJe9mi4hIuFD+VqQmChlLv6wpsIubFkOytthOQl3CEku7X9rPBp/smKHGPjyaFWlypprZ35vm6AQaYDlWK9L3kgYPNr9Msrm3ptfgBcG3P9vQKhYdKiZjqJrEnSQ0/McDv5zBo8KzRY6is2lXmNVExKe6Z3M3zRT/9Oidn1me6xqxEeL2adW8iJvBt0XKACPAKQ9ojSbIKLreXnMD394tgv/WiTp1sQuivomKvevr7itiUhpo2EKLBNiviPUd6ksR+wctKDzYGXi88/VHW07hRCOlx2If3PBcWn+PI4lKWiUq1l8W/Kt40ptW2RQb3mEJmJc/1QcTpi7XHIFx1rqwoyiW8FdKYa5tXH/Lk1tnDHrnhE2TYps9FENb4chMFmZB9w5nsD/e+49Kgz6A5OIB6t1twBcaTf3IiexQ== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SN6PR11MB3504.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230001)(366004)(7696005)(38070700005)(6506007)(508600001)(9686003)(316002)(71200400001)(110136005)(86362001)(53546011)(83380400001)(122000001)(2906002)(66946007)(66476007)(66556008)(186003)(82960400001)(38100700002)(26005)(8936002)(30864003)(52536014)(5660300002)(33656002)(55016003)(76116006)(8676002)(66446008)(64756008)(20210929001); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?T21OQjJ5N2RRNUZIbGo2Mzd5T1FOenQ2LzNQc3d4UDM5U3dyMkZLT052am45?= =?utf-8?B?SERvMUpXOHUyYWRtcUdkdmtrN0hNNmtKZ2NxOE4vbmJUZ0xtV0lhVHRXRmNU?= =?utf-8?B?UnhSbk83YmwyT2w5ak9VZldHaHNuYVd5bFdIVnJub1c4TWZIRDA0YzN3Zi9j?= =?utf-8?B?cHRMVVdmZDBKQUgzbnhwZk5ydk9zMmlKaHlvRyt2VXBvL0V1OG82S3JZeHlt?= =?utf-8?B?aUVZZDBYZ3hvTHQ4dXgwY1A3N0pNeklOeWFRTTVUTVFvOUhyNzRKMCt3Vm1W?= =?utf-8?B?ZDNkY3lQVVlwY0V6dWVJMExkWnFpNmg5eWJEYmJIV1pzTFNKY1I4ajlWNHgr?= =?utf-8?B?TWxDSDRDQll6UEV3Nit1MkoyT0liVlRadzBud2g5WUIxc2lWK3BybTVtUnY1?= =?utf-8?B?VklHTkw4dDJUQ1dkR2JxSmh6STBWZGNGQTJuREdRdENGODVoMG9ZWGVrb0U5?= =?utf-8?B?emh5VkU1MnBEQys5cXdueEtncEZ2NzZMdC96bTZ4ZFVWazY3L1p4dUNjbW1D?= =?utf-8?B?TXRTd2w5OW5GcnBsOUlLR1lxSnplYjZVU2pMRExRa1hhcUJqMnQrQUh6SHUr?= =?utf-8?B?MnI3b3MrbmFHaGRiZEh5K29LRitwaDhiT1RQTkkvSGE2RXVvOHFCZW1xN3Rr?= =?utf-8?B?SzY0aE9mU2t3by80MEZaRGRmTzNQaHREZW9rT2RsanFwTmpYMXVoNys3NUdI?= =?utf-8?B?QUdjMzhkdG5PL3NpMzM0RWlCd25YTGNsc3ZjSDh4TzkwOFFIQWwxQjJBaWUx?= =?utf-8?B?eW9tdGFmcXVtRWJZbnJtb29BYjVENVZNRGMxUElTV1FlbTFjYzdacWQyVVQy?= =?utf-8?B?T3RPRFJ0V1k0ZHp4aHhTdDJoYjhzTG5yK3MwaVR5YXNmb1IwSjgvWDJtdENI?= =?utf-8?B?NHZMdC9KU2p4b0tjRlZGQ1VyQ0ZLcnVyUENWNWxTM1RhR0psS0hydXEvUXU5?= =?utf-8?B?eWJnZjdHYVN0ZnhHbUxsMXE1aEJ4MCtGc1RlTDRoOENrM01Cd0lsdHNEWUpH?= =?utf-8?B?R1pxY2xVM2RTTGFWRGppNU81V29TSmVINURiclYyZzZLQ3pEb1pwVkdWNWlH?= =?utf-8?B?VHRjU1RiZUIvZjU4L051VVc1MStCSTlmd25GZjg0dmh2R3RHcmIvYlBraGxF?= =?utf-8?B?M2IxV1VmdkhhcTlwRXdWQWZiWEZQaUluc2l0dzE5L2JZeU9PUzJIMHNrWlJy?= =?utf-8?B?dHBqYXVqQ283N3VMbnVsblExamxnTjVMa1N4blFnR0pESmk4MDVMWkhIdWdt?= =?utf-8?B?dTZkRXVRTjBVdFdENVZjb1JNbnh0OXNtNkREL3pkdzdWOWs4aWh5NTl0dlBz?= =?utf-8?B?KzNhbkhiNlZKNUIyNmJPOG5PeFR4S1VJd2xUdHpPd2QxVURBeVFCb3lXdVJ0?= =?utf-8?B?dW5zc3FEaThVOHcwSWdmU0dMTy9iVG9uQVUyVDFrbHZkbXpDTTA5SWxrLys5?= =?utf-8?B?VjNSenJGRkxPTHlnZCs1TzRkT2thUUNsWlRIVXdkVnV5OVpDVytuUThRWFdM?= =?utf-8?B?cUNrNWozZUxxK0V4UWc5MDdXTVlUMzJ2akhaTVN3ZUt2KzN0aXNLcGpLS0Zq?= =?utf-8?B?d1JZR29BNE5BTm5WNENIeTZWMVA3QnhpSzhVOEtOVUVFZXdyNWNhdE92dVVM?= =?utf-8?B?Mzh2ekZYbWE0bUVvYStOV2pmR0t6b09DdE1qTWgyQlJFcXhQUUwxd1V2YlpL?= =?utf-8?B?b0pXcmxrcDRmTkNIODdVNmFJaVRhVVJ6NTVURis1UVBNNWFmZWprZUhFY3RI?= =?utf-8?B?WlhKTnlJWjdmeDV0ZTZNaXBFYWo0REVsd1l1bFprRWt6YllEUmlqTTVVZ0hM?= =?utf-8?B?aEhTeEEvdFNuaVFudTh6K3E1aW9WUjI2YzJLSm5YQnJHelJNbElBU1dycERX?= =?utf-8?B?SjdQL2gyUk1zakhpQVBqeWo3N2lTZFNIUjVUU3R0VGE4dEpwWkVXdUc2RjBV?= =?utf-8?B?cHNiaVZIakRjb3ZFK0dkWkRqTld5cENoRzVid0ltMU5sUlEyWlgvdmNtY3Fn?= =?utf-8?B?MEVSWkNwSEwvLzJHbUh3SDYxK21aVGlKci9Venh0SytjdzF3cGhwSVJPZk9X?= =?utf-8?B?NnMwd3ZhS0U4clJhWVZSVDBReGFyMEZBSTdjSUpwb2NkN1JhTWMrVVY0UnUw?= =?utf-8?B?enRkWTZaaThCbVpKNHhTait5Z0VnSDIvT1VvNlhUSDUrSkk3eGRENEkvNnBF?= =?utf-8?Q?upv3DLnbtF4ku80i5XfYBl0=3D?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SN6PR11MB3504.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 009e1962-7142-48ed-c8a8-08d9e07bb7ca X-MS-Exchange-CrossTenant-originalarrivaltime: 26 Jan 2022 03:27:01.7974 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 6tW2AJ9FafaaJaL/s9ZEOS926TAn0C+Naysa56Td7uXeJ0G2qyNKn8sAMdwSSbqOkw0IfNZFQtb06D5TpRhJ7w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR11MB3570 X-OriginatorOrg: intel.com X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org SGkgTWF4aW1lLA0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IE1heGlt ZSBDb3F1ZWxpbiA8bWF4aW1lLmNvcXVlbGluQHJlZGhhdC5jb20+DQo+IFNlbnQ6IFR1ZXNkYXks IEphbnVhcnkgMjUsIDIwMjIgNzoyNSBQTQ0KPiBUbzogZGV2QGRwZGsub3JnOyBYaWEsIENoZW5i byA8Y2hlbmJvLnhpYUBpbnRlbC5jb20+Ow0KPiBkYXZpZC5tYXJjaGFuZEByZWRoYXQuY29tDQo+ IENjOiBNYXhpbWUgQ29xdWVsaW4gPG1heGltZS5jb3F1ZWxpbkByZWRoYXQuY29tPg0KPiBTdWJq ZWN0OiBbUEFUQ0ggdjIgNy85XSB2aG9zdDogcmVtb3ZlIG11bHRpLWxpbmUgbG9ncw0KPiANCj4g VGhpcyBwYXRjaCByZXBsYWNlcyBtdWx0aS1saW5lcyBsb2dzIGluIG11bHRpcGxlIHNpbmdsZS0N Cj4gbGluZSBsb2dzIGluIG9yZGVyIHRvIGVhc2UgbG9ncyBmaWx0ZXJpbmcgYmFzZWQgb24gdGhl aXINCj4gc29ja2V0IHBhdGguDQo+IA0KPiBTaWduZWQtb2ZmLWJ5OiBNYXhpbWUgQ29xdWVsaW4g PG1heGltZS5jb3F1ZWxpbkByZWRoYXQuY29tPg0KPiAtLS0NCj4gIGxpYi92aG9zdC9zb2NrZXQu YyAgICAgfCAgMTAgKystLQ0KPiAgbGliL3Zob3N0L3Zob3N0LmMgICAgICB8ICAgOCArKy0tDQo+ ICBsaWIvdmhvc3Qvdmhvc3RfdXNlci5jIHwgMTA2ICsrKysrKysrKysrKysrKysrKystLS0tLS0t LS0tLS0tLS0tLS0tLS0tDQo+ICAzIGZpbGVzIGNoYW5nZWQsIDYwIGluc2VydGlvbnMoKyksIDY0 IGRlbGV0aW9ucygtKQ0KPiANCj4gZGlmZiAtLWdpdCBhL2xpYi92aG9zdC9zb2NrZXQuYyBiL2xp Yi92aG9zdC9zb2NrZXQuYw0KPiBpbmRleCBhZDM0NzFkNmE5Li5jMmY4MDEzY2Q1IDEwMDY0NA0K PiAtLS0gYS9saWIvdmhvc3Qvc29ja2V0LmMNCj4gKysrIGIvbGliL3Zob3N0L3NvY2tldC5jDQo+ IEBAIC04NjgsOCArODY4LDggQEAgcnRlX3Zob3N0X2RyaXZlcl9yZWdpc3Rlcihjb25zdCBjaGFy ICpwYXRoLCB1aW50NjRfdCBmbGFncykNCj4gIAlpZiAodnNvY2tldC0+YXN5bmNfY29weSAmJg0K PiAgCQkoZmxhZ3MgJiAoUlRFX1ZIT1NUX1VTRVJfSU9NTVVfU1VQUE9SVCB8DQo+ICAJCVJURV9W SE9TVF9VU0VSX1BPU1RDT1BZX1NVUFBPUlQpKSkgew0KPiAtCQlWSE9TVF9MT0dfQ09ORklHKEVS UiwgIiglcykgZW5hYmxpbmcgYXN5bmMgY29weSBhbmQgSU9NTVUgIg0KPiAtCQkJIm9yIHBvc3Qt Y29weSBmZWF0dXJlIHNpbXVsdGFuZW91c2x5IGlzIG5vdCBzdXBwb3J0ZWRcbiIsDQo+IHBhdGgp Ow0KPiArCQlWSE9TVF9MT0dfQ09ORklHKEVSUiwgIiglcykgYXN5bmMgY29weSB3aXRoIElPTU1V IG9yIHBvc3QtY29weSBub3QNCj4gc3VwcG9ydGVkXG4iLA0KPiArCQkJCXBhdGgpOw0KPiAgCQln b3RvIG91dF9tdXRleDsNCj4gIAl9DQo+IA0KPiBAQCAtOTA4LDggKzkwOCwxMCBAQCBydGVfdmhv c3RfZHJpdmVyX3JlZ2lzdGVyKGNvbnN0IGNoYXIgKnBhdGgsIHVpbnQ2NF90DQo+IGZsYWdzKQ0K PiAgCQkJCSgxVUxMIDw8IFZJUlRJT19ORVRfRl9IT1NUX1RTTzYpIHwNCj4gIAkJCQkoMVVMTCA8 PCBWSVJUSU9fTkVUX0ZfSE9TVF9VRk8pOw0KPiANCj4gLQkJVkhPU1RfTE9HX0NPTkZJRyhJTkZP LCAiKCVzKSBMaW5lYXIgYnVmZmVycyByZXF1ZXN0ZWQgd2l0aG91dA0KPiBleHRlcm5hbCBidWZm ZXJzLCAiDQo+IC0JCQkiZGlzYWJsaW5nIGhvc3Qgc2VnbWVudGF0aW9uIG9mZmxvYWRpbmcgc3Vw cG9ydFxuIiwgcGF0aCk7DQo+ICsJCVZIT1NUX0xPR19DT05GSUcoSU5GTywgIiglcykgTGluZWFy IGJ1ZmZlcnMgcmVxdWVzdGVkIHdpdGhvdXQNCj4gZXh0ZXJuYWwgYnVmZmVycyxcbiIsDQo+ICsJ CQkJcGF0aCk7DQo+ICsJCVZIT1NUX0xPR19DT05GSUcoSU5GTywgIiglcykgZGlzYWJsaW5nIGhv c3Qgc2VnbWVudGF0aW9uDQo+IG9mZmxvYWRpbmcgc3VwcG9ydFxuIiwNCj4gKwkJCQlwYXRoKTsN Cj4gIAkJdnNvY2tldC0+c3VwcG9ydGVkX2ZlYXR1cmVzICY9IH5zZWdfb2ZmbG9hZF9mZWF0dXJl czsNCj4gIAkJdnNvY2tldC0+ZmVhdHVyZXMgJj0gfnNlZ19vZmZsb2FkX2ZlYXR1cmVzOw0KPiAg CX0NCj4gZGlmZiAtLWdpdCBhL2xpYi92aG9zdC92aG9zdC5jIGIvbGliL3Zob3N0L3Zob3N0LmMN Cj4gaW5kZXggM2IwNWYxN2E1MC4uY2Q2MmRjMjM4YiAxMDA2NDQNCj4gLS0tIGEvbGliL3Zob3N0 L3Zob3N0LmMNCj4gKysrIGIvbGliL3Zob3N0L3Zob3N0LmMNCj4gQEAgLTE3ODYsOCArMTc4Niw4 IEBAIHJ0ZV92aG9zdF9hc3luY19jaGFubmVsX3VucmVnaXN0ZXIoaW50IHZpZCwgdWludDE2X3QN Cj4gcXVldWVfaWQpDQo+ICAJfQ0KPiANCj4gIAlpZiAodnEtPmFzeW5jLT5wa3RzX2luZmxpZ2h0 X24pIHsNCj4gLQkJVkhPU1RfTE9HX0NPTkZJRyhFUlIsICIoJXMpIGZhaWxlZCB0byB1bnJlZ2lz dGVyIGFzeW5jIGNoYW5uZWwuICINCj4gLQkJCSJhc3luYyBpbmZsaWdodCBwYWNrZXRzIG11c3Qg YmUgY29tcGxldGVkIGJlZm9yZQ0KPiB1bnJlZ2lzdHJhdGlvbi5cbiIsDQo+ICsJCVZIT1NUX0xP R19DT05GSUcoRVJSLCAiKCVzKSBmYWlsZWQgdG8gdW5yZWdpc3RlciBhc3luYyBjaGFubmVsLlxu IiwNCj4gZGV2LT5pZm5hbWUpOw0KPiArCQlWSE9TVF9MT0dfQ09ORklHKEVSUiwgIiglcykgaW5m bGlnaHQgcGFja2V0cyBtdXN0IGJlIGNvbXBsZXRlZA0KPiBiZWZvcmUgdW5yZWdpc3RyYXRpb24u XG4iLA0KPiAgCQkJZGV2LT5pZm5hbWUpOw0KPiAgCQlyZXQgPSAtMTsNCj4gIAkJZ290byBvdXQ7 DQo+IEBAIC0xODIxLDggKzE4MjEsOCBAQCBydGVfdmhvc3RfYXN5bmNfY2hhbm5lbF91bnJlZ2lz dGVyX3RocmVhZF91bnNhZmUoaW50IHZpZCwNCj4gdWludDE2X3QgcXVldWVfaWQpDQo+ICAJCXJl dHVybiAwOw0KPiANCj4gIAlpZiAodnEtPmFzeW5jLT5wa3RzX2luZmxpZ2h0X24pIHsNCj4gLQkJ VkhPU1RfTE9HX0NPTkZJRyhFUlIsICIoJXMpIGZhaWxlZCB0byB1bnJlZ2lzdGVyIGFzeW5jIGNo YW5uZWwuICINCj4gLQkJCSJhc3luYyBpbmZsaWdodCBwYWNrZXRzIG11c3QgYmUgY29tcGxldGVk IGJlZm9yZQ0KPiB1bnJlZ2lzdHJhdGlvbi5cbiIsDQo+ICsJCVZIT1NUX0xPR19DT05GSUcoRVJS LCAiKCVzKSBmYWlsZWQgdG8gdW5yZWdpc3RlciBhc3luYyBjaGFubmVsLlxuIiwNCj4gZGV2LT5p Zm5hbWUpOw0KPiArCQlWSE9TVF9MT0dfQ09ORklHKEVSUiwgIiglcykgaW5mbGlnaHQgcGFja2V0 cyBtdXN0IGJlIGNvbXBsZXRlZA0KPiBiZWZvcmUgdW5yZWdpc3RyYXRpb24uXG4iLA0KPiAgCQkJ ZGV2LT5pZm5hbWUpOw0KPiAgCQlyZXR1cm4gLTE7DQo+ICAJfQ0KPiBkaWZmIC0tZ2l0IGEvbGli L3Zob3N0L3Zob3N0X3VzZXIuYyBiL2xpYi92aG9zdC92aG9zdF91c2VyLmMNCj4gaW5kZXggZTIw N2FjZTQyNi4uM2EzZjk3MjNjYyAxMDA2NDQNCj4gLS0tIGEvbGliL3Zob3N0L3Zob3N0X3VzZXIu Yw0KPiArKysgYi9saWIvdmhvc3Qvdmhvc3RfdXNlci5jDQo+IEBAIC04NzIsMTMgKzg3MiwxMyBA QCB0cmFuc2xhdGVfcmluZ19hZGRyZXNzZXMoc3RydWN0IHZpcnRpb19uZXQgKmRldiwgaW50DQo+ IHZxX2luZGV4KQ0KPiAgCX0NCj4gDQo+ICAJaWYgKHZxLT5sYXN0X3VzZWRfaWR4ICE9IHZxLT51 c2VkLT5pZHgpIHsNCj4gLQkJVkhPU1RfTE9HX0NPTkZJRyhXQVJOSU5HLA0KPiAtCQkJIiglcykg bGFzdF91c2VkX2lkeCAoJXUpIGFuZCB2cS0+dXNlZC0+aWR4ICgldSkgbWlzbWF0Y2hlczsNCj4g Ig0KPiAtCQkJInNvbWUgcGFja2V0cyBtYXliZSByZXNlbnQgZm9yIFR4IGFuZCBkcm9wcGVkIGZv ciBSeFxuIiwNCj4gKwkJVkhPU1RfTE9HX0NPTkZJRyhXQVJOSU5HLCAiKCVzKSBsYXN0X3VzZWRf aWR4ICgldSkgYW5kIHZxLT51c2VkLQ0KPiA+aWR4ICgldSkgbWlzbWF0Y2hlcztcbiIsDQo+ICAJ CQlkZXYtPmlmbmFtZSwNCj4gIAkJCXZxLT5sYXN0X3VzZWRfaWR4LCB2cS0+dXNlZC0+aWR4KTsN Cj4gIAkJdnEtPmxhc3RfdXNlZF9pZHggID0gdnEtPnVzZWQtPmlkeDsNCj4gIAkJdnEtPmxhc3Rf YXZhaWxfaWR4ID0gdnEtPnVzZWQtPmlkeDsNCj4gKwkJVkhPU1RfTE9HX0NPTkZJRyhXQVJOSU5H LCAiKCVzKSBzb21lIHBhY2tldHMgbWF5YmUgcmVzZW50IGZvciBUeA0KPiBhbmQgZHJvcHBlZCBm b3IgUnhcbiIsDQo+ICsJCQlkZXYtPmlmbmFtZSk7DQo+ICAJfQ0KPiANCj4gIAl2cS0+YWNjZXNz X29rID0gdHJ1ZTsNCj4gQEAgLTEwNjYsMTUgKzEwNjYsMTQgQEAgZHVtcF9ndWVzdF9wYWdlcyhz dHJ1Y3QgdmlydGlvX25ldCAqZGV2KQ0KPiAgCWZvciAoaSA9IDA7IGkgPCBkZXYtPm5yX2d1ZXN0 X3BhZ2VzOyBpKyspIHsNCj4gIAkJcGFnZSA9ICZkZXYtPmd1ZXN0X3BhZ2VzW2ldOw0KPiANCj4g LQkJVkhPU1RfTE9HX0NPTkZJRyhJTkZPLA0KPiAtCQkJIiglcykgZ3Vlc3QgcGh5c2ljYWwgcGFn ZSByZWdpb24gJXVcbiINCj4gLQkJCSJcdCBndWVzdF9waHlzX2FkZHI6ICUiIFBSSXg2NCAiXG4i DQo+IC0JCQkiXHQgaG9zdF9waHlzX2FkZHIgOiAlIiBQUkl4NjQgIlxuIg0KPiAtCQkJIlx0IHNp emUgICAgICAgICAgIDogJSIgUFJJeDY0ICJcbiIsDQo+IC0JCQlkZXYtPmlmbmFtZSwgaSwNCj4g LQkJCXBhZ2UtPmd1ZXN0X3BoeXNfYWRkciwNCj4gLQkJCXBhZ2UtPmhvc3RfcGh5c19hZGRyLA0K PiAtCQkJcGFnZS0+c2l6ZSk7DQo+ICsJCVZIT1NUX0xPR19DT05GSUcoSU5GTywgIiglcykgZ3Vl c3QgcGh5c2ljYWwgcGFnZSByZWdpb24gJXVcbiIsDQo+ICsJCQkJZGV2LT5pZm5hbWUsIGkpOw0K PiArCQlWSE9TVF9MT0dfQ09ORklHKElORk8sICIoJXMpXHRndWVzdF9waHlzX2FkZHI6ICUiIFBS SXg2NCAiXG4iLA0KPiArCQkJCWRldi0+aWZuYW1lLCBwYWdlLT5ndWVzdF9waHlzX2FkZHIpOw0K PiArCQlWSE9TVF9MT0dfQ09ORklHKElORk8sICIoJXMpXHRob3N0X3BoeXNfYWRkciA6ICUiIFBS SXg2NCAiXG4iLA0KPiArCQkJCWRldi0+aWZuYW1lLCBwYWdlLT5ob3N0X3BoeXNfYWRkcik7DQo+ ICsJCVZIT1NUX0xPR19DT05GSUcoSU5GTywgIiglcylcdHNpemUgICAgICAgICAgIDogJSIgUFJJ eDY0ICJcbiIsDQo+ICsJCQkJZGV2LT5pZm5hbWUsIHBhZ2UtPnNpemUpOw0KPiAgCX0NCj4gIH0N Cj4gICNlbHNlDQo+IEBAIC0xMTIyLDggKzExMjEsNyBAQCB2aG9zdF91c2VyX3Bvc3Rjb3B5X3Jl Z2lvbl9yZWdpc3RlcihzdHJ1Y3QgdmlydGlvX25ldA0KPiAqZGV2LA0KPiANCj4gIAlpZiAoaW9j dGwoZGV2LT5wb3N0Y29weV91ZmQsIFVGRkRJT19SRUdJU1RFUiwNCj4gIAkJCQkmcmVnX3N0cnVj dCkpIHsNCj4gLQkJVkhPU1RfTE9HX0NPTkZJRyhFUlIsICIoJXMpIGZhaWxlZCB0byByZWdpc3Rl ciB1ZmQgZm9yIHJlZ2lvbiAiDQo+IC0JCQkJIiUiIFBSSXg2NCAiIC0gJSIgUFJJeDY0ICIgKHVm ZCA9ICVkKSAlc1xuIiwNCj4gKwkJVkhPU1RfTE9HX0NPTkZJRyhFUlIsICIoJXMpIGZhaWxlZCB0 byByZWdpc3RlciB1ZmQgZm9yIHJlZ2lvbiAlIg0KPiBQUkl4NjQgIiAtICUiIFBSSXg2NCAiICh1 ZmQgPSAlZCkgJXNcbiIsDQoNClRoaXMgbGluZSBpcyA+IDEwMCBjaGFycywgYW5kIEkgdGhpbmsg dGhlIG9yaWdpbmFsIG9uZSBpcyBmaW5lIGZvciBsb2cgZmlsdGVyaW5nDQpvciB1c2luZyBsb2cg dG8gc2VhcmNoIGNvZGUuDQpXaGF0IGRvIHlvdSB0aGluaz8NCg0KVGhhbmtzLA0KQ2hlbmJvDQoN Cj4gIAkJCQlkZXYtPmlmbmFtZSwNCj4gIAkJCQkodWludDY0X3QpcmVnX3N0cnVjdC5yYW5nZS5z dGFydCwNCj4gIAkJCQkodWludDY0X3QpcmVnX3N0cnVjdC5yYW5nZS5zdGFydCArDQo+IEBAIC0x MTMzLDcgKzExMzEsOCBAQCB2aG9zdF91c2VyX3Bvc3Rjb3B5X3JlZ2lvbl9yZWdpc3RlcihzdHJ1 Y3QgdmlydGlvX25ldA0KPiAqZGV2LA0KPiAgCQlyZXR1cm4gLTE7DQo+ICAJfQ0KPiANCj4gLQlW SE9TVF9MT0dfQ09ORklHKElORk8sICIoJXMpXHQgdXNlcmZhdWx0ZmQgcmVnaXN0ZXJlZCBmb3Ig cmFuZ2UgOiAlIg0KPiBQUkl4NjQgIiAtICUiIFBSSXg2NCAiXG4iLA0KPiArCVZIT1NUX0xPR19D T05GSUcoSU5GTywNCj4gKwkJCSIoJXMpXHQgdXNlcmZhdWx0ZmQgcmVnaXN0ZXJlZCBmb3IgcmFu Z2UgOiAlIiBQUkl4NjQgIiAtICUiDQo+IFBSSXg2NCAiXG4iLA0KPiAgCQkJZGV2LT5pZm5hbWUs DQo+ICAJCQkodWludDY0X3QpcmVnX3N0cnVjdC5yYW5nZS5zdGFydCwNCj4gIAkJCSh1aW50NjRf dClyZWdfc3RydWN0LnJhbmdlLnN0YXJ0ICsNCj4gQEAgLTEyMTgsOCArMTIxNyw3IEBAIHZob3N0 X3VzZXJfbW1hcF9yZWdpb24oc3RydWN0IHZpcnRpb19uZXQgKmRldiwNCj4gDQo+ICAJLyogQ2hl Y2sgZm9yIG1lbW9yeV9zaXplICsgbW1hcF9vZmZzZXQgb3ZlcmZsb3cgKi8NCj4gIAlpZiAobW1h cF9vZmZzZXQgPj0gLXJlZ2lvbi0+c2l6ZSkgew0KPiAtCQlWSE9TVF9MT0dfQ09ORklHKEVSUiwg IiglcykgbW1hcF9vZmZzZXQgKCUjIlBSSXg2NCIpIGFuZA0KPiBtZW1vcnlfc2l6ZSAiDQo+IC0J CQkJIiglIyJQUkl4NjQiKSBvdmVyZmxvd1xuIiwNCj4gKwkJVkhPU1RfTE9HX0NPTkZJRyhFUlIs ICIoJXMpIG1tYXBfb2Zmc2V0ICglIyJQUkl4NjQiKSBhbmQNCj4gbWVtb3J5X3NpemUgKCUjIlBS SXg2NCIpIG92ZXJmbG93XG4iLA0KPiAgCQkJCWRldi0+aWZuYW1lLCBtbWFwX29mZnNldCwgcmVn aW9uLT5zaXplKTsNCj4gIAkJcmV0dXJuIC0xOw0KPiAgCX0NCj4gQEAgLTEyNDgsOCArMTI0Niw3 IEBAIHZob3N0X3VzZXJfbW1hcF9yZWdpb24oc3RydWN0IHZpcnRpb19uZXQgKmRldiwNCj4gIAkJ ICogbW1hcCgpIGtlcm5lbCBpbXBsZW1lbnRhdGlvbiB3b3VsZCByZXR1cm4gYW4gZXJyb3IsIGJ1 dA0KPiAgCQkgKiBiZXR0ZXIgY2F0Y2ggaXQgYmVmb3JlIGFuZCBwcm92aWRlIHVzZWZ1bCBpbmZv IGluIHRoZSBsb2dzLg0KPiAgCQkgKi8NCj4gLQkJVkhPU1RfTE9HX0NPTkZJRyhFUlIsICIoJXMp IG1tYXAgc2l6ZSAoMHglIiBQUkl4NjQgIikgIg0KPiAtCQkJCSJvciBhbGlnbm1lbnQgKDB4JSIg UFJJeDY0ICIpIGlzIGludmFsaWRcbiIsDQo+ICsJCVZIT1NUX0xPR19DT05GSUcoRVJSLCAiKCVz KSBtbWFwIHNpemUgKDB4JSIgUFJJeDY0ICIpIG9yIGFsaWdubWVudA0KPiAoMHglIiBQUkl4NjQg IikgaXMgaW52YWxpZFxuIiwNCj4gIAkJCQlkZXYtPmlmbmFtZSwgcmVnaW9uLT5zaXplICsgbW1h cF9vZmZzZXQsIGFsaWdubWVudCk7DQo+ICAJCXJldHVybiAtMTsNCj4gIAl9DQo+IEBAIC0xMjg1 LDI0ICsxMjgyLDIyIEBAIHZob3N0X3VzZXJfbW1hcF9yZWdpb24oc3RydWN0IHZpcnRpb19uZXQg KmRldiwNCj4gIAkJfQ0KPiAgCX0NCj4gDQo+IC0JVkhPU1RfTE9HX0NPTkZJRyhJTkZPLA0KPiAt CQkJIiglcykgZ3Vlc3QgbWVtb3J5IHJlZ2lvbiBzaXplOiAweCUiIFBSSXg2NCAiXG4iDQo+IC0J CQkiXHQgZ3Vlc3QgcGh5c2ljYWwgYWRkcjogMHglIiBQUkl4NjQgIlxuIg0KPiAtCQkJIlx0IGd1 ZXN0IHZpcnR1YWwgIGFkZHI6IDB4JSIgUFJJeDY0ICJcbiINCj4gLQkJCSJcdCBob3N0ICB2aXJ0 dWFsICBhZGRyOiAweCUiIFBSSXg2NCAiXG4iDQo+IC0JCQkiXHQgbW1hcCBhZGRyIDogMHglIiBQ Ukl4NjQgIlxuIg0KPiAtCQkJIlx0IG1tYXAgc2l6ZSA6IDB4JSIgUFJJeDY0ICJcbiINCj4gLQkJ CSJcdCBtbWFwIGFsaWduOiAweCUiIFBSSXg2NCAiXG4iDQo+IC0JCQkiXHQgbW1hcCBvZmYgIDog MHglIiBQUkl4NjQgIlxuIiwNCj4gLQkJCWRldi0+aWZuYW1lLA0KPiAtCQkJcmVnaW9uLT5zaXpl LA0KPiAtCQkJcmVnaW9uLT5ndWVzdF9waHlzX2FkZHIsDQo+IC0JCQlyZWdpb24tPmd1ZXN0X3Vz ZXJfYWRkciwNCj4gLQkJCXJlZ2lvbi0+aG9zdF91c2VyX2FkZHIsDQo+IC0JCQkodWludDY0X3Qp KHVpbnRwdHJfdCltbWFwX2FkZHIsDQo+IC0JCQltbWFwX3NpemUsDQo+IC0JCQlhbGlnbm1lbnQs DQo+IC0JCQltbWFwX29mZnNldCk7DQo+ICsJVkhPU1RfTE9HX0NPTkZJRyhJTkZPLCAiKCVzKSBn dWVzdCBtZW1vcnkgcmVnaW9uIHNpemU6IDB4JSIgUFJJeDY0ICJcbiIsDQo+ICsJCQlkZXYtPmlm bmFtZSwgcmVnaW9uLT5zaXplKTsNCj4gKwlWSE9TVF9MT0dfQ09ORklHKElORk8sICIoJXMpXHQg Z3Vlc3QgcGh5c2ljYWwgYWRkcjogMHglIiBQUkl4NjQgIlxuIiwNCj4gKwkJCWRldi0+aWZuYW1l LCByZWdpb24tPmd1ZXN0X3BoeXNfYWRkcik7DQo+ICsJVkhPU1RfTE9HX0NPTkZJRyhJTkZPLCAi KCVzKVx0IGd1ZXN0IHZpcnR1YWwgIGFkZHI6IDB4JSIgUFJJeDY0ICJcbiIsDQo+ICsJCQlkZXYt PmlmbmFtZSwgcmVnaW9uLT5ndWVzdF91c2VyX2FkZHIpOw0KPiArCVZIT1NUX0xPR19DT05GSUco SU5GTywgIiglcylcdCBob3N0ICB2aXJ0dWFsICBhZGRyOiAweCUiIFBSSXg2NCAiXG4iLA0KPiAr CQkJZGV2LT5pZm5hbWUsIHJlZ2lvbi0+aG9zdF91c2VyX2FkZHIpOw0KPiArCVZIT1NUX0xPR19D T05GSUcoSU5GTywgIiglcylcdCBtbWFwIGFkZHIgOiAweCUiIFBSSXg2NCAiXG4iLA0KPiArCQkJ ZGV2LT5pZm5hbWUsICh1aW50NjRfdCkodWludHB0cl90KW1tYXBfYWRkcik7DQo+ICsJVkhPU1Rf TE9HX0NPTkZJRyhJTkZPLCAiKCVzKVx0IG1tYXAgc2l6ZSA6IDB4JSIgUFJJeDY0ICJcbiIsDQo+ ICsJCQlkZXYtPmlmbmFtZSwgbW1hcF9zaXplKTsNCj4gKwlWSE9TVF9MT0dfQ09ORklHKElORk8s ICIoJXMpXHQgbW1hcCBhbGlnbjogMHglIiBQUkl4NjQgIlxuIiwNCj4gKwkJCWRldi0+aWZuYW1l LCBhbGlnbm1lbnQpOw0KPiArCVZIT1NUX0xPR19DT05GSUcoSU5GTywgIiglcylcdCBtbWFwIG9m ZiAgOiAweCUiIFBSSXg2NCAiXG4iLA0KPiArCQkJZGV2LT5pZm5hbWUsIG1tYXBfb2Zmc2V0KTsN Cj4gDQo+ICAJcmV0dXJuIDA7DQo+ICB9DQo+IEBAIC0yMjAxLDkgKzIxOTYsOSBAQCB2aG9zdF91 c2VyX3NldF92cmluZ19lbmFibGUoc3RydWN0IHZpcnRpb19uZXQgKipwZGV2LA0KPiANCj4gIAlp ZiAoZW5hYmxlICYmIGRldi0+dmlydHF1ZXVlW2luZGV4XS0+YXN5bmMpIHsNCj4gIAkJaWYgKGRl di0+dmlydHF1ZXVlW2luZGV4XS0+YXN5bmMtPnBrdHNfaW5mbGlnaHRfbikgew0KPiAtCQkJVkhP U1RfTE9HX0NPTkZJRyhFUlIsICIoJXMpIGZhaWxlZCB0byBlbmFibGUgdnJpbmcuICINCj4gLQkJ CSJhc3luYyBpbmZsaWdodCBwYWNrZXRzIG11c3QgYmUgY29tcGxldGVkIGZpcnN0XG4iLA0KPiAt CQkJZGV2LT5pZm5hbWUpOw0KPiArCQkJVkhPU1RfTE9HX0NPTkZJRyhFUlIsDQo+ICsJCQkJIigl cykgZmFpbGVkIHRvIGVuYWJsZSB2cmluZy4gSW5mbGlnaHQgcGFja2V0cyBtdXN0IGJlDQo+IGNv bXBsZXRlZCBmaXJzdFxuIiwNCj4gKwkJCQlkZXYtPmlmbmFtZSk7DQo+ICAJCQlyZXR1cm4gUlRF X1ZIT1NUX01TR19SRVNVTFRfRVJSOw0KPiAgCQl9DQo+ICAJfQ0KPiBAQCAtMjcwOSwyMiArMjcw NCwyMSBAQCB2aG9zdF91c2VyX3NldF9zdGF0dXMoc3RydWN0IHZpcnRpb19uZXQgKipwZGV2LCBz dHJ1Y3QNCj4gVmhvc3RVc2VyTXNnICptc2csDQo+ICAJCWRldi0+c3RhdHVzICY9IH5WSVJUSU9f REVWSUNFX1NUQVRVU19GRUFUVVJFU19PSzsNCj4gIAl9DQo+IA0KPiAtCVZIT1NUX0xPR19DT05G SUcoSU5GTywgIiglcykgbmV3IGRldmljZSBzdGF0dXMoMHglMDh4KTpcbiINCj4gLQkJCSJcdC1S RVNFVDogJXVcbiINCj4gLQkJCSJcdC1BQ0tOT1dMRURHRTogJXVcbiINCj4gLQkJCSJcdC1EUklW RVI6ICV1XG4iDQo+IC0JCQkiXHQtRkVBVFVSRVNfT0s6ICV1XG4iDQo+IC0JCQkiXHQtRFJJVkVS X09LOiAldVxuIg0KPiAtCQkJIlx0LURFVklDRV9ORUVEX1JFU0VUOiAldVxuIg0KPiAtCQkJIlx0 LUZBSUxFRDogJXVcbiIsDQo+IC0JCQlkZXYtPmlmbmFtZSwNCj4gLQkJCWRldi0+c3RhdHVzLA0K PiAtCQkJKGRldi0+c3RhdHVzID09IFZJUlRJT19ERVZJQ0VfU1RBVFVTX1JFU0VUKSwNCj4gLQkJ CSEhKGRldi0+c3RhdHVzICYgVklSVElPX0RFVklDRV9TVEFUVVNfQUNLKSwNCj4gLQkJCSEhKGRl di0+c3RhdHVzICYgVklSVElPX0RFVklDRV9TVEFUVVNfRFJJVkVSKSwNCj4gLQkJCSEhKGRldi0+ c3RhdHVzICYgVklSVElPX0RFVklDRV9TVEFUVVNfRkVBVFVSRVNfT0spLA0KPiAtCQkJISEoZGV2 LT5zdGF0dXMgJiBWSVJUSU9fREVWSUNFX1NUQVRVU19EUklWRVJfT0spLA0KPiAtCQkJISEoZGV2 LT5zdGF0dXMgJiBWSVJUSU9fREVWSUNFX1NUQVRVU19ERVZfTkVFRF9SRVNFVCksDQo+ICsJVkhP U1RfTE9HX0NPTkZJRyhJTkZPLCAiKCVzKSBuZXcgZGV2aWNlIHN0YXR1cygweCUwOHgpOlxuIiwg ZGV2LT5pZm5hbWUsDQo+ICsJCQlkZXYtPnN0YXR1cyk7DQo+ICsJVkhPU1RfTE9HX0NPTkZJRyhJ TkZPLCAiKCVzKVx0LVJFU0VUOiAldVxuIiwgZGV2LT5pZm5hbWUsDQo+ICsJCQkoZGV2LT5zdGF0 dXMgPT0gVklSVElPX0RFVklDRV9TVEFUVVNfUkVTRVQpKTsNCj4gKwlWSE9TVF9MT0dfQ09ORklH KElORk8sICIoJXMpXHQtQUNLTk9XTEVER0U6ICV1XG4iLCBkZXYtPmlmbmFtZSwNCj4gKwkJCSEh KGRldi0+c3RhdHVzICYgVklSVElPX0RFVklDRV9TVEFUVVNfQUNLKSk7DQo+ICsJVkhPU1RfTE9H X0NPTkZJRyhJTkZPLCAiKCVzKVx0LURSSVZFUjogJXVcbiIsIGRldi0+aWZuYW1lLA0KPiArCQkJ ISEoZGV2LT5zdGF0dXMgJiBWSVJUSU9fREVWSUNFX1NUQVRVU19EUklWRVIpKTsNCj4gKwlWSE9T VF9MT0dfQ09ORklHKElORk8sICIoJXMpXHQtRkVBVFVSRVNfT0s6ICV1XG4iLCBkZXYtPmlmbmFt ZSwNCj4gKwkJCSEhKGRldi0+c3RhdHVzICYgVklSVElPX0RFVklDRV9TVEFUVVNfRkVBVFVSRVNf T0spKTsNCj4gKwlWSE9TVF9MT0dfQ09ORklHKElORk8sICIoJXMpXHQtRFJJVkVSX09LOiAldVxu IiwgZGV2LT5pZm5hbWUsDQo+ICsJCQkhIShkZXYtPnN0YXR1cyAmIFZJUlRJT19ERVZJQ0VfU1RB VFVTX0RSSVZFUl9PSykpOw0KPiArCVZIT1NUX0xPR19DT05GSUcoSU5GTywgIiglcylcdC1ERVZJ Q0VfTkVFRF9SRVNFVDogJXVcbiIsIGRldi0+aWZuYW1lLA0KPiArCQkJISEoZGV2LT5zdGF0dXMg JiBWSVJUSU9fREVWSUNFX1NUQVRVU19ERVZfTkVFRF9SRVNFVCkpOw0KPiArCVZIT1NUX0xPR19D T05GSUcoSU5GTywgIiglcylcdC1GQUlMRUQ6ICV1XG4iLCBkZXYtPmlmbmFtZSwNCj4gIAkJCSEh KGRldi0+c3RhdHVzICYgVklSVElPX0RFVklDRV9TVEFUVVNfRkFJTEVEKSk7DQo+IA0KPiAgCXJl dHVybiBSVEVfVkhPU1RfTVNHX1JFU1VMVF9PSzsNCj4gLS0NCj4gMi4zNC4xDQoNCg==