From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from cuda.sgi.com (cuda2.sgi.com [192.48.176.25]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id p5T4VqaU049001 for ; Tue, 28 Jun 2011 23:31:53 -0500 Received: from ipmail06.adl6.internode.on.net (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id A9B9B3D005 for ; Tue, 28 Jun 2011 21:31:48 -0700 (PDT) Received: from ipmail06.adl6.internode.on.net (ipmail06.adl6.internode.on.net [150.101.137.145]) by cuda.sgi.com with ESMTP id Yc4Uo73gdO7iIfU2 for ; Tue, 28 Jun 2011 21:31:48 -0700 (PDT) Date: Wed, 29 Jun 2011 14:31:43 +1000 From: Dave Chinner Subject: Re: long hangs when deleting large directories (3.0-rc3) Message-ID: <20110629043143.GA1026@dastard> References: <20110621212201.GA1755@x4.trippels.de> <20110621185701.GB1723@x4.trippels.de> <20110622000449.GQ32466@dastard> <20110622070647.GA1744@x4.trippels.de> <20110622073047.GT32466@dastard> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20110622073047.GT32466@dastard> List-Id: XFS Filesystem from SGI List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: xfs-bounces@oss.sgi.com Errors-To: xfs-bounces@oss.sgi.com To: Markus Trippelsdorf Cc: xfs@oss.sgi.com T24gV2VkLCBKdW4gMjIsIDIwMTEgYXQgMDU6MzA6NDdQTSArMTAwMCwgRGF2ZSBDaGlubmVyIHdy b3RlOgo+IE9uIFdlZCwgSnVuIDIyLCAyMDExIGF0IDA5OjA2OjQ3QU0gKzAyMDAsIE1hcmt1cyBU cmlwcGVsc2RvcmYgd3JvdGU6Cj4gPiBPbiAyMDExLjA2LjIyIGF0IDEwOjA0ICsxMDAwLCBEYXZl IENoaW5uZXIgd3JvdGU6Cj4gPiA+IE9uIFR1ZSwgSnVuIDIxLCAyMDExIGF0IDA4OjU3OjAxUE0g KzAyMDAsIE1hcmt1cyBUcmlwcGVsc2RvcmYgd3JvdGU6Cj4gPiA+ID4gT24gMjAxMS4wNi4yMSBh dCAyMDoyNCArMDIwMCwgTWFya3VzIFRyaXBwZWxzZG9yZiB3cm90ZToKPiA+ID4gPiA+IE9uIDIw MTEuMDYuMjEgYXQgMTA6MDIgKzAyMDAsIE1hcmt1cyBUcmlwcGVsc2RvcmYgd3JvdGU6Cj4gPiA+ ID4gPiA+IE9uIDIwMTEuMDYuMjEgYXQgMTQ6MjUgKzEwMDAsIERhdmUgQ2hpbm5lciB3cm90ZToK PiA+ID4gPiA+ID4gPiBUaGF0IGlzLCB5b3UgcmVhbGx5IG5lZWQgdG8gZ2V0IGEgcHJvZmlsZSBv ZiB0aGUgcm0gLXJmIHByb2Nlc3MgLSBvcgo+ID4gPiA+ID4gPiA+IHdoYXRldmVyIGlzIGNvbnN1 bWluZyB0aGUgQ1BVIHRpbWUgLSAoZS5nLiB2aWEgcGVyZiBvciBmdHJhY2UpCj4gPiA+ID4gPiA+ ID4gYWNyb3NzIHRoZSBoYW5nIHRvIHNvIHdlIGNhbiBuYXJyb3cgZG93biB0aGUgcG90ZW50aWFs IGNhdXNlIG9mIHRoZQo+ID4gPiA+ID4gPiA+IGxhdGVuY3kuIFNwZWFraW5nIG9mIHdoaWNoLCBs YXRlbmN5dG9wIG1pZ2h0IGJlIGhlbHBmdWwgaW4KPiA+ID4gPiA+ID4gPiBpZGVudGlmeWluZyB3 aGVyZSBpbnB1dCBpcyBnZXR0aW5nIGhlbGQgdXAuLi4uCj4gPiA+ID4gPiA+IAo+ID4gPiA+ID4g PiBJJ3ZlIHJlY29yZGVkIGEgcHJvZmlsZSB3aXRoICJwZXJmIHJlY29yZCAtZyAvaG9tZS9tYXJr dXMvcm1fc3luYyIKPiA+ID4gPiA+ID4gfiAlIGNhdCBybV9zeW5jCj4gPiA+ID4gPiA+IHJtIC1m ciAvbW50L3RtcC90bXAvbGludXggJiYgc3luYwo+ID4gPiA+ID4gCj4gPiA+ID4gPiBGV0lXIGhl cmUgYXJlIHR3byBsaW5rcyB0byBzdmcgdGltZS1jaGFydHMgcHJvZHVjZWQgYnk6Cj4gPiA+ID4g PiAKPiA+ID4gPiA+IHBlcmYgdGltZWNoYXJ0IHJlY29yZCAvaG9tZS9tYXJrdXMvcm1fc3luYwo+ ID4gPiA+ID4gCj4gPiA+ID4gPiBodHRwOi8vdHJpcHBlbHNkb3JmLmRlL3RpbWVjaGFydDEuc3Zn Cj4gPiA+ID4gPiBodHRwOi8vdHJpcHBlbHNkb3JmLmRlL3RpbWVjaGFydDIuc3ZnCj4gPiA+ID4g PiAKPiA+ID4gPiAKPiA+ID4gPiBBbmQgdGhpcyBpcyB3aGF0IHRoZSBteXN0ZXJpb3VzIGt3b3Jr ZXIgaXMgZG9pbmcgZHVyaW5nIHRoZSBzeW5jLgo+ID4gPiA+IEl0J3MgdGhlIG9uZSBjb25zdW1p bmcgbW9zdCBvZiB0aGUgQ1BVIHRpbWUuCj4gPiA+ID4gCj4gPiA+ID4gICAgIDM5Ljk2JSAgICAg IGt3b3JrZXIvMzowICBba2VybmVsLmthbGxzeW1zXSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAweGZmZmZmZmZmODExZGE5ZGEgayBba10geGZzX3RyYW5zX2FpbF91cGRhdGVfYnVsawo+ID4g PiA+ICAgICAgICAgICAgICAgICB8Cj4gPiA+ID4gICAgICAgICAgICAgICAgIC0tLSB4ZnNfdHJh bnNfYWlsX3VwZGF0ZV9idWxrCj4gPiA+ID4gICAgICAgICAgICAgICAgICAgICB4ZnNfdHJhbnNf Y29tbWl0dGVkX2J1bGsKPiA+ID4gPiAgICAgICAgICAgICAgICAgICAgIHhsb2dfY2lsX2NvbW1p dHRlZAo+ID4gPiA+ICAgICAgICAgICAgICAgICAgICAgeGxvZ19zdGF0ZV9kb19jYWxsYmFjawo+ ID4gPiA+ICAgICAgICAgICAgICAgICAgICAgeGxvZ19zdGF0ZV9kb25lX3N5bmNpbmcKPiA+ID4g PiAgICAgICAgICAgICAgICAgICAgIHhsb2dfaW9kb25lCj4gPiA+ID4gICAgICAgICAgICAgICAg ICAgICB4ZnNfYnVmX2lvZG9uZV93b3JrCj4gPiA+ID4gICAgICAgICAgICAgICAgICAgICBwcm9j ZXNzX29uZV93b3JrCj4gPiA+ID4gICAgICAgICAgICAgICAgICAgICB3b3JrZXJfdGhyZWFkCj4g PiA+ID4gICAgICAgICAgICAgICAgICAgICBrdGhyZWFkCj4gPiA+ID4gICAgICAgICAgICAgICAg ICAgICBrZXJuZWxfdGhyZWFkX2hlbHBlcgo+ID4gPiAKPiA+ID4gU28gdGhhdCBpcyBpbnNlcnRp bmcgaXRlbXMgaW50byB0aGUgQUlMIGF0IHRyYW5zYWN0aW9uIGNvbXBsZXRpb24uCj4gPiA+IFRo YXQgY2FuIGNvbnN1bWUgbG90cyBvZiBDUFUgdGltZSBpZiB0aGUgQ0lMIGNoZWNrcG9pbnRzIGFy ZSBiZWluZwo+ID4gPiBmbHVzaGVkIHF1aWNrbHkgZW5vdWdoLiBHaXZlbiB5b3UgYXJlIGRvaW5n IGEgcm0gLXJmIGF0IHRoaXMgcG9pbnQKPiA+ID4gaW4gdGltZSwgSSdkIGV4cGVjdCB0byBzZWUg dGhpcyB0cmFjZSBwcmVzZW50IGluIHRoZSBwcm9maWxlLCB0aG91Z2gKPiA+ID4gbWF5YmUgbm90 IGF0IHRoYXQgZXh0ZW50Lgo+ID4gPiAKPiA+ID4gSSBoYXZlIHNlZW4gdGhpcyBiZWZvcmUgYnV0 IGhhdmUgbmV2ZXIgYmVlbiBhYmxlIHRvIGl0IHJlcHJvZHVjZQo+ID4gPiByZWxpYWJseS4gIElm IGNoZWNrcG9pbnRzIGFyZSBjb21wbGV0ZWQgIm91dCBvZiBvcmRlciIgZHVlIHRvIHRoZQo+ID4g PiB3YXkgdGhlIGNvbW1pdCByZWNvcmRzIGFyZSB3cml0dGVuIGludG8gdGhlIGljbG9ncy4gVGhp cyBjYW4gY2F1c2UKPiA+ID4gZXh0cmEgQ1BVIGJlY2F1c2UgdGhlIEFJTCBpbnNlcnRpb24gdGhl biBoYXMgdG8gc2tpcCBvdmVyIGFsbCB0aGUKPiA+ID4gaXRlbXMgdGhhdCB3ZXJlIGluc2VydGVk IG91dCBvZiBvcmRlciBiZWZvcmUgc3BsaWNpbmcgZWFjaCBncm91cCBvZgo+ID4gPiBpdGVtcyBp bnRvIHRoZSBBSUwuIEkgb25seSByYXJlbHkgc2VlIHRoaXMgKG1heWJlIG9uY2UgZXZlcnkgY291 cGxlCj4gPiA+IG9mIHdlZWtzIG9mIHBlcmZvcm1hbmNlIHRlc3RpbmcpLCBzbyBJJ20gbm90IHN1 cmUgaXQncyB0aGUgcHJvYmxlbQo+ID4gPiB5b3UgYXJlIHNlZWluZy4KPiA+ID4gCj4gPiA+IEFk ZGluZyB0aGlzIGRlYnVnIHRvIHhmc19haWxfc3BsaWNlKCkgbGlzdCB3YWxrIHdpbGwgdGVsbCB1 cyBpZiB0aGlzIGlzCj4gPiA+IGhhcHBlbmluZyBhbmQgaG93IG1hbnkgaXRlbXMgaXQgaGFkIHRv IHdhbGsgd2hlbiB5b3Ugc2VlIGEgaGFuZzoKPiA+ID4gCj4gPiA+ICAJeGZzX2xzbl90ICAgICAg IGxzbikKPiA+ID4gIHsKPiA+ID4gIAl4ZnNfbG9nX2l0ZW1fdCAgKm5leHRfbGlwOwo+ID4gPiAr CWludCB3YWxrZWQgPSAwOwo+ID4gPiAgCj4gPiA+ICAJLyogSWYgdGhlIGxpc3QgaXMgZW1wdHks IGp1c3QgaW5zZXJ0IHRoZSBpdGVtLiAgKi8KPiA+ID4gIAlpZiAobGlzdF9lbXB0eSgmYWlscC0+ eGFfYWlsKSkgewo+ID4gPiAgCQlsaXN0X3NwbGljZShsaXN0LCAmYWlscC0+eGFfYWlsKTsKPiA+ ID4gIAkJcmV0dXJuOwo+ID4gPiAgCX0KPiA+ID4gIAo+ID4gPiAgCWxpc3RfZm9yX2VhY2hfZW50 cnlfcmV2ZXJzZShuZXh0X2xpcCwgJmFpbHAtPnhhX2FpbCwgbGlfYWlsKSB7Cj4gPiA+ICAJCWlm IChYRlNfTFNOX0NNUChuZXh0X2xpcC0+bGlfbHNuLCBsc24pIDw9IDApCj4gPiA+ICAJCQlicmVh azsKPiA+ID4gKwkJaWYgKCF3YWxrZWQrKykgewo+ID4gPiArCQkJeGZzX3dhcm4oYWlscC0+eGFf bW91bnQsCj4gPiA+ICsJCQkgImFpbDogb29vIHNwbGljZSwgdGFpbCAweCVsbHgsIGl0ZW0gMHgl bGx4XG4iLAo+ID4gPiArCQkJCW5leHRfbGlwLT5saV9sc24sIGxzbik7Cj4gPiA+ICsJCX0KPiA+ ID4gIAl9Cj4gPiA+ICsJaWYgKHdhbGtlZCA+IDEwKSB7Cj4gPiA+ICsJCXhmc193YXJuKGFpbHAt PnhhX21vdW50LAo+ID4gPiArCQkJICJhaWw6IG9vbyBzcGxpY2UsIHdhbGtlZCAlZCBpdGVtc1xu Iiwgd2Fsa2VkKTsKPiA+ID4gKwl9Cj4gPiA+ICAKPiA+ID4gIAlBU1NFUlQoJm5leHRfbGlwLT5s aV9haWwgPT0gJmFpbHAtPnhhX2FpbCB8fAo+ID4gPiAgCSAgICAgICBYRlNfTFNOX0NNUChuZXh0 X2xpcC0+bGlfbHNuLCBsc24pIDw9IDApOwo+ID4gPiAKPiA+ID4gVGhhdCB3aWxsIGF0IGxlYXN0 IHRlbGwgdXMgaWYgdGhpcyBpcyB0aGUgY2F1c2Ugb2YgeW91ciBwcm9ibGVtLiBJZgo+ID4gPiBp dCBpcywgSSB0aGluayBJIGtub3cgaG93IHRvIGF2b2lkIG1vc3Qgb2YgdGhlIGxpc3Qgd2FsayBv dmVyaGVhZAo+ID4gPiBmYWlybHkgZWFzaWx5IGFuZCB0aGF0IHNob3VsZCBhdm9pZCB0aGUgbmVl ZCB0byBjaGFuZ2Ugd29ya3F1ZXVlCj4gPiA+IGNvbmZpZ3VyYXRpb25zIGF0IGFsbC4KPiA+IAo+ ID4gVGhlIGtlcm5lbCBsb2cgaXMgYXR0YWNoZWQuCj4gCj4gT2ssIHNvIHRoYXQgaXMgdGhlIGNh dXNlIG9mIHRoZSBwcm9ibGVt4oi1IFRIZSAzIHNlY29uZHMgb2Ygb3V0cHV0Cj4gd2hlcmUgaXQg aXMgbm90aGluZyBidXQ6Cj4gCj4gSnVuIDIyIDA4OjUzOjA5IHg0IGtlcm5lbDogWEZTIChzZGIx KTogYWlsOiBvb28gc3BsaWNlLCB0YWlsIDB4MTIwMDAxNTZlNywgaXRlbSAweDEyMDAwMTU2ZTYK PiBKdW4gMjIgMDg6NTM6MDkgeDQga2VybmVsOiBYRlMgKHNkYjEpOiBhaWw6IG9vbyBzcGxpY2Us IHdhbGtlZCAxNTUwMyBpdGVtcyAgICAgIAo+IC4uLi4uCj4gSnVuIDIyIDA4OjUzOjEyIHg0IGtl cm5lbDogWEZTIChzZGIxKTogYWlsOiBvb28gc3BsaWNlLCB0YWlsIDB4MTIwMDAxNTZlNywgaXRl bSAweDEyMDAwMTU2ZTYKPiBKdW4gMjIgMDg6NTM6MTIgeDQga2VybmVsOiBYRlMgKHNkYjEpOiBh aWw6IG9vbyBzcGxpY2UsIHdhbGtlZCAxNjk0NSBpdGVtcwo+IAo+IEludGVyZXN0aW5nIGlzIHRo ZSBMU04gb2YgdGhlIHRhaWwgLSBpdCdzIG9ubHkgb25lIHNlY3RvciBmdXJ0aGVyIG9uCj4gdGhh biB0aGUgaXRlbXMgYmVpbmcgaW5zZXJ0ZWQuIFRoYXQncyB3aGF0IEknZCBleHBlY3QgZnJvbSBh IGNvbW1pdAo+IHJlY29yZCB3cml0ZSByYWNlIGJldHdlZW4gdHdvIGNoZWNrcG9pbnRzLiBJJ2xs IGhhdmUgYSBkZWVwZXIgbG9vawo+IGludG8gd2hldGhlciB0aGlzIGNhbiBiZSBhdm9pZGVkIGxh dGVyIHRvbmlnaHQgYW5kIGFsc28gd2hldGhlciBJCj4gY2FuIGVhc2lseSBpbXBsZW1lbnQgYSAi bGFzdCBpbnNlcnQgY3Vyc29yIiBlYXNpbHkgc28gc3Vic2VxdWVudAo+IGluc2VydHMgYXQgdGhl IHNhbWUgTFNOIGF2b2lkIHRoZSB3YWxrLi4uLgoKT2ssIHNvIGhlcmUncyBhIHBhdGNoIHRoYXQg ZG9lcyBqdXN0IHRoaXMuIEkgc2hvdWxkIHByb2JhYmx5IGFsc28gZG8KYSBsaXR0bGUgYml0IG9m IGNsZWFudXAgb24gdGhlIGN1cnNvciBjb2RlIGFzIHdlbGwsIGJ1dCB0aGlzIGF2b2lkcwp0aGUg cmVwZWF0ZWQgd2Fsa3Mgb2YgdGhlIEFJTCB0byBmaW5kIHRoZSBpbnNlcnQgcG9zaXRpb24uCgpD YW4geW91IHRyeSBpdCB3aXRob3V0IHRoZSBXUSBjaGFuZ2VzIHlvdSBtYWRlLCBNYXJjdXMsIGFu ZCBzZWUgaWYKdGhlIGludGVyYWN0aXZpdHkgcHJvYmxlbXMgZ28gYXdheT8KCkNoZWVycywKCkRh dmUuCi0tIApEYXZlIENoaW5uZXIKZGF2aWRAZnJvbW9yYml0LmNvbQoKeGZzOiB1c2UgYSBjdXJz b3IgZm9yIGJ1bGsgQUlMIGluc2VydGlvbgoKRnJvbTogRGF2ZSBDaGlubmVyIDxkY2hpbm5lckBy ZWRoYXQuY29tPgoKRGVsYXllZCBsb2dnaW5nIGNhbiBpbnNlcnQgdGVucyBvZiB0aG91c2FuZHMg b2YgbG9nIGl0ZW1zIGludG8gdGhlCkFJTCBhdCB0aGUgc2FtZSBMU04uIFdoZW4gdGhlIGNvbW1p dHRpbmcgb2YgbG9nIGNvbW1pdCByZWNvcmRzCm9jY3VyLCB3ZSBjYW4gZ2V0IGluc2VydGlvbnMg b2NjdXJyaW5nIGF0IGFuIExTTiB0aGF0IGlzIG5vdCBhdCB0aGUKZW5kIG9mIHRoZSBBSUwuIElm IHRoZXJlIGFyZSB0aG91c2FuZHMgb2YgaXRlbXMgaW4gdGhlIEFJTCBvbiB0aGUKdGFpbCBMU04s IGVhY2ggaW5zZXJ0aW9uIGhhcyB0byB3YWxrIHRoZSBBSUwgdG8gZmluZCB0aGUgY29ycmVjdApw bGFjZSB0byBpbnNlcnQgdGhlIG5ldyBpdGVtIGludG8gdGhlIEFJTC4gVGhpcyBjYW4gY29uc3Vt ZSBsYXJnZQphbW91bnRzIG9mIENQVSB0aW1lIGFuZCBibG9jayBvdGhlciBvcGVyYXRpb25zIGZy b20gb2NjdXJyaW5nIHdoaWxlCnRoZSB0cmF2ZXJzYWxzIGFyZSBpbiBwcm9ncmVzcy4KClRvIGF2 b2lkIHRoaXMgcmVwZWF0ZWQgd2FsaywgdXNlIGEgQUlMIGN1cnNvciB0byByZWNvcmQKd2hlcmUg d2Ugc2hvdWxkIGJlIGluc2VydGluZyB0aGUgbmV3IGl0ZW1zIGludG8gdGhlIEFJTCB3aXRob3V0 CmhhdmluZyB0byByZXBlYXQgdGhlIHdhbGsuIFRoZSBjdXJzb3IgaW5mcmFzdHJ1Y3R1cmUgYWxy ZWFkeQpwcm92aWRlcyB0aGlzIGZ1bmN0aW9uYWxpdHkgZm9yIHB1c2ggd2Fsa3MsIHNvIGlzIGEg c2ltcGxlIGV4dGVuc2lvbgpvZiBleGlzdGluZyBjb2RlLiBXaGlsZSB0aGlzIHdpbGwgbm90IGF2 b2lkIHRoZSBpbml0aWFsIHdhbGssIGl0CndpbGwgYXZvaWQgcmVwZWF0aW5nIGl0IHRlbnMgb2Yg dGhvdXNhbmRzIG9mIHRpbWVzIGR1cmluZyBhIHNpbmdsZQpjaGVja3BvaW50IGNvbW1pdC4KClNp Z25lZC1vZmYtYnk6IERhdmUgQ2hpbm5lciA8ZGNoaW5uZXJAcmVkaGF0LmNvbT4KLS0tCiBmcy94 ZnMveGZzX3RyYW5zLmMgICAgICB8ICAgMjcgKysrKysrKysrLS0KIGZzL3hmcy94ZnNfdHJhbnNf YWlsLmMgIHwgIDEyMiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0t LS0tLQogZnMveGZzL3hmc190cmFuc19wcml2LmggfCAgIDEwICsrKy0KIDMgZmlsZXMgY2hhbmdl ZCwgMTMxIGluc2VydGlvbnMoKyksIDI4IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2ZzL3hm cy94ZnNfdHJhbnMuYyBiL2ZzL3hmcy94ZnNfdHJhbnMuYwppbmRleCA3YzdiYzJiLi43ZDYwZDdl IDEwMDY0NAotLS0gYS9mcy94ZnMveGZzX3RyYW5zLmMKKysrIGIvZnMveGZzL3hmc190cmFucy5j CkBAIC0xNDI2LDYgKzE0MjYsNyBAQCB4ZnNfdHJhbnNfY29tbWl0dGVkKAogc3RhdGljIGlubGlu ZSB2b2lkCiB4ZnNfbG9nX2l0ZW1fYmF0Y2hfaW5zZXJ0KAogCXN0cnVjdCB4ZnNfYWlsCQkqYWls cCwKKwlzdHJ1Y3QgeGZzX2FpbF9jdXJzb3IJKmN1ciwKIAlzdHJ1Y3QgeGZzX2xvZ19pdGVtCSoq bG9nX2l0ZW1zLAogCWludAkJCW5yX2l0ZW1zLAogCXhmc19sc25fdAkJY29tbWl0X2xzbikKQEAg LTE0MzQsNyArMTQzNSw3IEBAIHhmc19sb2dfaXRlbV9iYXRjaF9pbnNlcnQoCiAKIAlzcGluX2xv Y2soJmFpbHAtPnhhX2xvY2spOwogCS8qIHhmc190cmFuc19haWxfdXBkYXRlX2J1bGsgZHJvcHMg YWlscC0+eGFfbG9jayAqLwotCXhmc190cmFuc19haWxfdXBkYXRlX2J1bGsoYWlscCwgbG9nX2l0 ZW1zLCBucl9pdGVtcywgY29tbWl0X2xzbik7CisJeGZzX3RyYW5zX2FpbF91cGRhdGVfYnVsayhh aWxwLCBjdXIsIGxvZ19pdGVtcywgbnJfaXRlbXMsIGNvbW1pdF9sc24pOwogCiAJZm9yIChpID0g MDsgaSA8IG5yX2l0ZW1zOyBpKyspCiAJCUlPUF9VTlBJTihsb2dfaXRlbXNbaV0sIDApOwpAQCAt MTQ1Miw2ICsxNDUzLDEzIEBAIHhmc19sb2dfaXRlbV9iYXRjaF9pbnNlcnQoCiAgKiBhcyBhbiBp Y2xvZyB3cml0ZSBlcnJvciBldmVuIHRob3VnaCB3ZSBoYXZlbid0IHN0YXJ0ZWQgYW55IElPIHll dC4gSGVuY2UgaW4KICAqIHRoaXMgY2FzZSBhbGwgd2UgbmVlZCB0byBkbyBpcyBJT1BfQ09NTUlU VEVEIHByb2Nlc3NpbmcsIGZvbGxvd2VkIGJ5IGFuCiAgKiBJT1BfVU5QSU4oYWJvcnRlZCkgY2Fs bC4KKyAqCisgKiBUaGUgQUlMIGN1cnNvciBpcyB1c2VkIHRvIG9wdGltaXNlIHRoZSBpbnNlcnQg cHJvY2Vzcy4gSWYgY29tbWl0X2xzbiBpcyBub3QKKyAqIGF0IHRoZSBlbmQgb2YgdGhlIEFJTCwg dGhlIGluc2VydCBjdXJzb3IgYXZvaWRzIHRoZSBuZWVkIHRvIHdhbGsKKyAqIHRoZSBBSUwgdG8g ZmluZCB0aGUgaW5zZXJ0aW9uIHBvaW50IG9uIGV2ZXJ5IHhmc19sb2dfaXRlbV9iYXRjaF9pbnNl cnQoKQorICogY2FsbC4gVGhpcyBzYXZlcyBhIGxvdCBvZiBuZWVkbGVzcyBsaXN0IHdhbGtpbmcg YW5kIGlzIGEgbmV0IHdpbiwgZXZlbgorICogdGhvdWdoIGl0IHNsaWdodGx5IGluY3JlYXNlcyB0 aGF0IGFtb3VudCBvZiBBSUwgbG9jayB0cmFmZmljIHRvIHNldCBpdCB1cAorICogYW5kIHRlYXIg aXQgZG93bi4KICAqLwogdm9pZAogeGZzX3RyYW5zX2NvbW1pdHRlZF9idWxrKApAQCAtMTQ2Myw4 ICsxNDcxLDEzIEBAIHhmc190cmFuc19jb21taXR0ZWRfYnVsaygKICNkZWZpbmUgTE9HX0lURU1f QkFUQ0hfU0laRQkzMgogCXN0cnVjdCB4ZnNfbG9nX2l0ZW0JKmxvZ19pdGVtc1tMT0dfSVRFTV9C QVRDSF9TSVpFXTsKIAlzdHJ1Y3QgeGZzX2xvZ192ZWMJKmx2OworCXN0cnVjdCB4ZnNfYWlsX2N1 cnNvcgljdXI7CiAJaW50CQkJaSA9IDA7CiAKKwlzcGluX2xvY2soJmFpbHAtPnhhX2xvY2spOwor CXhmc190cmFuc19haWxfY3Vyc29yX2xhc3QoYWlscCwgJmN1ciwgY29tbWl0X2xzbik7CisJc3Bp bl91bmxvY2soJmFpbHAtPnhhX2xvY2spOworCiAJLyogdW5waW4gYWxsIHRoZSBsb2cgaXRlbXMg Ki8KIAlmb3IgKGx2ID0gbG9nX3ZlY3RvcjsgbHY7IGx2ID0gbHYtPmx2X25leHQgKSB7CiAJCXN0 cnVjdCB4ZnNfbG9nX2l0ZW0JKmxpcCA9IGx2LT5sdl9pdGVtOwpAQCAtMTQ5Myw3ICsxNTA2LDkg QEAgeGZzX3RyYW5zX2NvbW1pdHRlZF9idWxrKAogCQkJLyoKIAkJCSAqIE5vdCBhIGJ1bGsgdXBk YXRlIG9wdGlvbiBkdWUgdG8gdW51c3VhbCBpdGVtX2xzbi4KIAkJCSAqIFB1c2ggaW50byBBSUwg aW1tZWRpYXRlbHksIHJlY2hlY2tpbmcgdGhlIGxzbiBvbmNlCi0JCQkgKiB3ZSBoYXZlIHRoZSBh aWwgbG9jay4gVGhlbiB1bnBpbiB0aGUgaXRlbS4KKwkJCSAqIHdlIGhhdmUgdGhlIGFpbCBsb2Nr LiBUaGVuIHVucGluIHRoZSBpdGVtLiBUaGlzIGRvZXMKKwkJCSAqIG5vdCBhZmZlY3QgdGhlIEFJ TCBjdXJzb3IgdGhlIGJ1bGsgaW5zZXJ0IHBhdGggaXMKKwkJCSAqIHVzaW5nLgogCQkJICovCiAJ CQlzcGluX2xvY2soJmFpbHAtPnhhX2xvY2spOwogCQkJaWYgKFhGU19MU05fQ01QKGl0ZW1fbHNu LCBsaXAtPmxpX2xzbikgPiAwKQpAQCAtMTUwNyw3ICsxNTIyLDcgQEAgeGZzX3RyYW5zX2NvbW1p dHRlZF9idWxrKAogCQkvKiBJdGVtIGlzIGEgY2FuZGlkYXRlIGZvciBidWxrIEFJTCBpbnNlcnQu ICAqLwogCQlsb2dfaXRlbXNbaSsrXSA9IGx2LT5sdl9pdGVtOwogCQlpZiAoaSA+PSBMT0dfSVRF TV9CQVRDSF9TSVpFKSB7Ci0JCQl4ZnNfbG9nX2l0ZW1fYmF0Y2hfaW5zZXJ0KGFpbHAsIGxvZ19p dGVtcywKKwkJCXhmc19sb2dfaXRlbV9iYXRjaF9pbnNlcnQoYWlscCwgJmN1ciwgbG9nX2l0ZW1z LAogCQkJCQlMT0dfSVRFTV9CQVRDSF9TSVpFLCBjb21taXRfbHNuKTsKIAkJCWkgPSAwOwogCQl9 CkBAIC0xNTE1LDcgKzE1MzAsMTEgQEAgeGZzX3RyYW5zX2NvbW1pdHRlZF9idWxrKAogCiAJLyog bWFrZSBzdXJlIHdlIGluc2VydCB0aGUgcmVtYWluZGVyISAqLwogCWlmIChpKQotCQl4ZnNfbG9n X2l0ZW1fYmF0Y2hfaW5zZXJ0KGFpbHAsIGxvZ19pdGVtcywgaSwgY29tbWl0X2xzbik7CisJCXhm c19sb2dfaXRlbV9iYXRjaF9pbnNlcnQoYWlscCwgJmN1ciwgbG9nX2l0ZW1zLCBpLCBjb21taXRf bHNuKTsKKworCXNwaW5fbG9jaygmYWlscC0+eGFfbG9jayk7CisJeGZzX3RyYW5zX2FpbF9jdXJz b3JfZG9uZShhaWxwLCAmY3VyKTsKKwlzcGluX3VubG9jaygmYWlscC0+eGFfbG9jayk7CiB9CiAK IC8qCmRpZmYgLS1naXQgYS9mcy94ZnMveGZzX3RyYW5zX2FpbC5jIGIvZnMveGZzL3hmc190cmFu c19haWwuYwppbmRleCA1ZmMyMzgwLi4yNzJlN2ZhIDEwMDY0NAotLS0gYS9mcy94ZnMveGZzX3Ry YW5zX2FpbC5jCisrKyBiL2ZzL3hmcy94ZnNfdHJhbnNfYWlsLmMKQEAgLTI3Miw5ICsyNzIsOSBA QCB4ZnNfdHJhbnNfYWlsX2N1cnNvcl9jbGVhcigKIH0KIAogLyoKLSAqIFJldHVybiB0aGUgaXRl bSBpbiB0aGUgQUlMIHdpdGggdGhlIGN1cnJlbnQgbHNuLgotICogUmV0dXJuIHRoZSBjdXJyZW50 IHRyZWUgZ2VuZXJhdGlvbiBudW1iZXIgZm9yIHVzZQotICogaW4gY2FsbHMgdG8geGZzX3RyYW5z X25leHRfYWlsKCkuCisgKiBJbml0aWFsaXNlIHRoZSBjdXJzb3IgdG8gdGhlIGZpcnN0IGl0ZW0g aW4gdGhlIEFJTCB3aXRoIHRoZSBnaXZlbiBAbHNuLgorICogVGhpcyBzZWFyY2hlcyB0aGUgbGlz dCBmcm9tIGxvd2VzdCBMU04gdG8gaGlnaGVzdC4gUGFzcyBhIEBsc24gb2YgemVybworICogdG8g aW5pdGlhbGlzZSB0aGUgY3Vyc29yIHRvIHRoZSBmaXJzdCBpdGVtIGluIHRoZSBBSUwuCiAgKi8K IHhmc19sb2dfaXRlbV90ICoKIHhmc190cmFuc19haWxfY3Vyc29yX2ZpcnN0KApAQCAtMzAwLDMx ICszMDAsMTEwIEBAIG91dDoKIH0KIAogLyoKLSAqIHNwbGljZSB0aGUgbG9nIGl0ZW0gbGlzdCBp bnRvIHRoZSBBSUwgYXQgdGhlIGdpdmVuIExTTi4KKyAqIEluaXRpYWxpc2UgdGhlIGN1cnNvciB0 byB0aGUgbGFzdCBpdGVtIGluIHRoZSBBSUwgd2l0aCB0aGUgZ2l2ZW4gQGxzbi4KKyAqIFRoaXMg c2VhcmNoZXMgdGhlIGxpc3QgZnJvbSBoaWdoZXN0IExTTiB0byBsb3dlc3QuCiAgKi8KLXN0YXRp YyB2b2lkCi14ZnNfYWlsX3NwbGljZSgKLQlzdHJ1Y3QgeGZzX2FpbCAgKmFpbHAsCi0Jc3RydWN0 IGxpc3RfaGVhZCAqbGlzdCwKLQl4ZnNfbHNuX3QgICAgICAgbHNuKQorc3RhdGljIHN0cnVjdCB4 ZnNfbG9nX2l0ZW0gKgorX194ZnNfdHJhbnNfYWlsX2N1cnNvcl9sYXN0KAorCXN0cnVjdCB4ZnNf YWlsCQkqYWlscCwKKwlzdHJ1Y3QgeGZzX2FpbF9jdXJzb3IJKmN1ciwKKwl4ZnNfbHNuX3QJCWxz biwKKwlib29sCQkJZG9faW5pdCkKIHsKLQl4ZnNfbG9nX2l0ZW1fdCAgKm5leHRfbGlwOworCXhm c19sb2dfaXRlbV90CQkqbGlwID0gTlVMTDsKIAotCS8qIElmIHRoZSBsaXN0IGlzIGVtcHR5LCBq dXN0IGluc2VydCB0aGUgaXRlbS4gICovCi0JaWYgKGxpc3RfZW1wdHkoJmFpbHAtPnhhX2FpbCkp IHsKLQkJbGlzdF9zcGxpY2UobGlzdCwgJmFpbHAtPnhhX2FpbCk7Ci0JCXJldHVybjsKLQl9CisJ aWYgKGRvX2luaXQpCisJCXhmc190cmFuc19haWxfY3Vyc29yX2luaXQoYWlscCwgY3VyKTsKKwor CWlmIChsaXN0X2VtcHR5KCZhaWxwLT54YV9haWwpKSAKKwkJZ290byBvdXQ7CiAKLQlsaXN0X2Zv cl9lYWNoX2VudHJ5X3JldmVyc2UobmV4dF9saXAsICZhaWxwLT54YV9haWwsIGxpX2FpbCkgewot CQlpZiAoWEZTX0xTTl9DTVAobmV4dF9saXAtPmxpX2xzbiwgbHNuKSA8PSAwKQorCWxpc3RfZm9y X2VhY2hfZW50cnlfcmV2ZXJzZShsaXAsICZhaWxwLT54YV9haWwsIGxpX2FpbCkgeworCQlpZiAo WEZTX0xTTl9DTVAobGlwLT5saV9sc24sIGxzbikgPD0gMCkKIAkJCWJyZWFrOwogCX0KK291dDoK KwlpZiAoY3VyKQorCQljdXItPml0ZW0gPSBsaXA7CisJcmV0dXJuIGxpcDsKK30KIAotCUFTU0VS VCgmbmV4dF9saXAtPmxpX2FpbCA9PSAmYWlscC0+eGFfYWlsIHx8Ci0JICAgICAgIFhGU19MU05f Q01QKG5leHRfbGlwLT5saV9sc24sIGxzbikgPD0gMCk7CisvKgorICogSW5pdGlhbGlzZSB0aGUg Y3Vyc29yIHRvIHRoZSBsYXN0IGl0ZW0gaW4gdGhlIEFJTCB3aXRoIHRoZSBnaXZlbiBAbHNuLgor ICogVGhpcyBzZWFyY2hlcyB0aGUgbGlzdCBmcm9tIGhpZ2hlc3QgTFNOIHRvIGxvd2VzdC4KKyAq Lworc3RydWN0IHhmc19sb2dfaXRlbSAqCit4ZnNfdHJhbnNfYWlsX2N1cnNvcl9sYXN0KAorCXN0 cnVjdCB4ZnNfYWlsCQkqYWlscCwKKwlzdHJ1Y3QgeGZzX2FpbF9jdXJzb3IJKmN1ciwKKwl4ZnNf bHNuX3QJCWxzbikKK3sKKwlyZXR1cm4gX194ZnNfdHJhbnNfYWlsX2N1cnNvcl9sYXN0KGFpbHAs IGN1ciwgbHNuLCB0cnVlKTsKK30KIAotCWxpc3Rfc3BsaWNlX2luaXQobGlzdCwgJm5leHRfbGlw LT5saV9haWwpOworLyoKKyAqIHNwbGljZSB0aGUgbG9nIGl0ZW0gbGlzdCBpbnRvIHRoZSBBSUwg YXQgdGhlIGdpdmVuIExTTi4gV2Ugc3BsaWNlIHRvIHRoZQorICogdGFpbCBvZiB0aGUgZ2l2ZW4g TFNOIHRvIG1haW50YWluIGluc2VydCBvcmRlciBmb3IgcHVzaCB0cmF2ZXJzYWxzLiBUaGUKKyAq IGN1cnNvciBpcyBvcHRpb25hbCwgYWxsb3dpbmcgcmVwZWF0ZWQgdXBkYXRlcyB0byB0aGUgc2Ft ZSBMU04gdG8gYXZvaWQKKyAqIHJlcGVhdGVkIHRyYXZlcnNhbHMuCisgKi8KK3N0YXRpYyB2b2lk Cit4ZnNfYWlsX3NwbGljZSgKKwlzdHJ1Y3QgeGZzX2FpbAkJKmFpbHAsCisJc3RydWN0IHhmc19h aWxfY3Vyc29yCSpjdXIsCisJc3RydWN0IGxpc3RfaGVhZAkqbGlzdCwKKwl4ZnNfbHNuX3QJCWxz bikKK3sKKwlzdHJ1Y3QgeGZzX2xvZ19pdGVtCSpsaXAgPSBjdXIgPyBjdXItPml0ZW0gOiBOVUxM OworCXN0cnVjdCB4ZnNfbG9nX2l0ZW0JKm5leHRfbGlwOworCisJZG8geworCQkvKiBubyBwbGFj ZWhvbGRlciwgc28gZ2V0IG91ciBpbnNlcnQgbG9jYXRpb24gKi8KKwkJaWYgKCFsaXApCisJCQls aXAgPSBfX3hmc190cmFuc19haWxfY3Vyc29yX2xhc3QoYWlscCwgY3VyLAorCQkJCQkJCQlsc24s IGZhbHNlKTsKKworCQlpZiAoIWxpcCkgeworCQkJLyoKKwkJCSAqIFRoZSBsaXN0IGlzIGVtcHR5 LCBzbyBqdXN0IHNwbGljZSBhbmQgcmV0dXJuLiAgT3VyCisJCQkgKiBjdXJzb3IgaXMgYWxyZWFk eSBndWFyYW50ZWVkIHRvIGJlIHVwIHRvIGRhdGUsIHNvIHdlCisJCQkgKiBkb24ndCBuZWVkIHRv IHRvdWNoIGl0IGhlcmUuCisJCQkgKi8KKwkJCWxpc3Rfc3BsaWNlKGxpc3QsICZhaWxwLT54YV9h aWwpOworCQkJcmV0dXJuOworCQl9CisKKwkJLyogVGhlIHBsYWNlaG9sZGVyIHdhcyBpbnZhbGlk YXRlZCwgbmVlZCB0byBnZXQgYSBuZXcgY3Vyc29yICovCisJCWlmICgoX19wc2ludF90KWxpcCAm IDEpCisJCQlsaXAgPSBOVUxMOworCisJfSB3aGlsZSAobGlwID09IE5VTEwpOworCisJLyoKKwkg KiBPdXIgY3Vyc29yIHBvaW50cyB0byB0aGUgaXRlbSB3ZSB3YW50IHRvIGluc2VydCBfYWZ0ZXJf LCBzbyB3ZSBoYXZlCisJICogdG8gdXBkYXRlIHRoZSBjdXJzb3IgdG8gcG9pbnQgdG8gdGhlIGVu ZCBvZiB0aGUgbGlzdCB3ZSBhcmUgc3BsaWNpbmcKKwkgKiBpbiBzbyB0aGF0IGl0IHBvaW50cyB0 byB0aGUgY29ycmVjdCBsb2NhdGlvbiBmb3IgdGhlIG5leHQgc3BsaWNlLgorCSAqIGkuZS4gYmVm b3JlIHRoZSBzcGxpY2UKKwkgKgorCSAqICBsc24gLT4gbHNuIC0+IGxzbiArIHggLT4gbHNuICsg eCAuLi4KKwkgKiAgICAgICAgICBeCisJICogICAgICAgICAgfCBjdXJzb3IgcG9pbnRzIGhlcmUK KwkgKgorCSAqIEFmdGVyIHRoZSBzcGxpY2Ugd2UgaGF2ZToKKwkgKgorCSAqICBsc24gLT4gbHNu IC0+IGxzbiAtPiBsc24gLT4gLi4uLiAtPiBsc24gLT4gbHNuICsgeCAtPiBsc24gKyB4IC4uLgor CSAqICAgICAgICAgIF4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXgorCSAqICAgICAgICAg IHwgY3Vyc29yIHBvaW50cyBoZXJlICAgICAgICAgfCBuZWVkcyB0byBtb3ZlIGhlcmUKKwkgKgor CSAqIFNvIHdlIHNldCB0aGUgY3Vyc29yIHRvIHRoZSBsYXN0IGl0ZW0gaW4gdGhlIGxpc3QgdG8g YmUgc3BsaWNlZAorCSAqIGJlZm9yZSB3ZSBleGVjdXRlIHRoZSBzcGxpY2UsIHJlc3VsdGluZyBp biB0aGUgY3Vyc29yIHBvaW50aW5nIHRvCisJICogdGhlIGNvcnJlY3QgaXRlbSBhZnRlciB0aGUg c3BsaWNlIG9jY3Vycy4KKwkgKi8KKwlpZiAoY3VyKSB7CisJCW5leHRfbGlwID0gbGlzdF9lbnRy eShsaXN0LT5wcmV2LCBzdHJ1Y3QgeGZzX2xvZ19pdGVtLCBsaV9haWwpOworCQljdXItPml0ZW0g PSBuZXh0X2xpcDsKKwl9CisJbGlzdF9zcGxpY2VfaW5pdChsaXN0LCAmbGlwLT5saV9haWwpOwog fQogCiAvKgpAQCAtNjQ1LDYgKzcyNCw3IEBAIHhmc190cmFuc191bmxvY2tlZF9pdGVtKAogdm9p ZAogeGZzX3RyYW5zX2FpbF91cGRhdGVfYnVsaygKIAlzdHJ1Y3QgeGZzX2FpbAkJKmFpbHAsCisJ c3RydWN0IHhmc19haWxfY3Vyc29yCSpjdXIsCiAJc3RydWN0IHhmc19sb2dfaXRlbQkqKmxvZ19p dGVtcywKIAlpbnQJCQlucl9pdGVtcywKIAl4ZnNfbHNuX3QJCWxzbikgX19yZWxlYXNlcyhhaWxw LT54YV9sb2NrKQpAQCAtNjc0LDcgKzc1NCw3IEBAIHhmc190cmFuc19haWxfdXBkYXRlX2J1bGso CiAJCWxpc3RfYWRkKCZsaXAtPmxpX2FpbCwgJnRtcCk7CiAJfQogCi0JeGZzX2FpbF9zcGxpY2Uo YWlscCwgJnRtcCwgbHNuKTsKKwl4ZnNfYWlsX3NwbGljZShhaWxwLCBjdXIsICZ0bXAsIGxzbik7 CiAKIAlpZiAoIW1saXBfY2hhbmdlZCkgewogCQlzcGluX3VubG9jaygmYWlscC0+eGFfbG9jayk7 CmRpZmYgLS1naXQgYS9mcy94ZnMveGZzX3RyYW5zX3ByaXYuaCBiL2ZzL3hmcy94ZnNfdHJhbnNf cHJpdi5oCmluZGV4IDZiMTY0ZTkuLmMwY2I0MDggMTAwNjQ0Ci0tLSBhL2ZzL3hmcy94ZnNfdHJh bnNfcHJpdi5oCisrKyBiL2ZzL3hmcy94ZnNfdHJhbnNfcHJpdi5oCkBAIC04Miw2ICs4Miw3IEBA IHN0cnVjdCB4ZnNfYWlsIHsKIGV4dGVybiBzdHJ1Y3Qgd29ya3F1ZXVlX3N0cnVjdAkqeGZzX2Fp bF93cTsJLyogQUlMIHdvcmtxdWV1ZSAqLwogCiB2b2lkCXhmc190cmFuc19haWxfdXBkYXRlX2J1 bGsoc3RydWN0IHhmc19haWwgKmFpbHAsCisJCQkJc3RydWN0IHhmc19haWxfY3Vyc29yICpjdXIs CiAJCQkJc3RydWN0IHhmc19sb2dfaXRlbSAqKmxvZ19pdGVtcywgaW50IG5yX2l0ZW1zLAogCQkJ CXhmc19sc25fdCBsc24pIF9fcmVsZWFzZXMoYWlscC0+eGFfbG9jayk7CiBzdGF0aWMgaW5saW5l IHZvaWQKQEAgLTkwLDcgKzkxLDcgQEAgeGZzX3RyYW5zX2FpbF91cGRhdGUoCiAJc3RydWN0IHhm c19sb2dfaXRlbQkqbGlwLAogCXhmc19sc25fdAkJbHNuKSBfX3JlbGVhc2VzKGFpbHAtPnhhX2xv Y2spCiB7Ci0JeGZzX3RyYW5zX2FpbF91cGRhdGVfYnVsayhhaWxwLCAmbGlwLCAxLCBsc24pOwor CXhmc190cmFuc19haWxfdXBkYXRlX2J1bGsoYWlscCwgTlVMTCwgJmxpcCwgMSwgbHNuKTsKIH0K IAogdm9pZAl4ZnNfdHJhbnNfYWlsX2RlbGV0ZV9idWxrKHN0cnVjdCB4ZnNfYWlsICphaWxwLApA QCAtMTExLDEwICsxMTIsMTMgQEAgeGZzX2xzbl90CQl4ZnNfYWlsX21pbl9sc24oc3RydWN0IHhm c19haWwgKmFpbHApOwogdm9pZAkJCXhmc190cmFuc191bmxvY2tlZF9pdGVtKHN0cnVjdCB4ZnNf YWlsICosCiAJCQkJCXhmc19sb2dfaXRlbV90ICopOwogCi1zdHJ1Y3QgeGZzX2xvZ19pdGVtCSp4 ZnNfdHJhbnNfYWlsX2N1cnNvcl9maXJzdChzdHJ1Y3QgeGZzX2FpbCAqYWlscCwKK3N0cnVjdCB4 ZnNfbG9nX2l0ZW0gKgl4ZnNfdHJhbnNfYWlsX2N1cnNvcl9maXJzdChzdHJ1Y3QgeGZzX2FpbCAq YWlscCwKIAkJCQkJc3RydWN0IHhmc19haWxfY3Vyc29yICpjdXIsCiAJCQkJCXhmc19sc25fdCBs c24pOwotc3RydWN0IHhmc19sb2dfaXRlbQkqeGZzX3RyYW5zX2FpbF9jdXJzb3JfbmV4dChzdHJ1 Y3QgeGZzX2FpbCAqYWlscCwKK3N0cnVjdCB4ZnNfbG9nX2l0ZW0gKgl4ZnNfdHJhbnNfYWlsX2N1 cnNvcl9sYXN0KHN0cnVjdCB4ZnNfYWlsICphaWxwLAorCQkJCQlzdHJ1Y3QgeGZzX2FpbF9jdXJz b3IgKmN1ciwKKwkJCQkJeGZzX2xzbl90IGxzbik7CitzdHJ1Y3QgeGZzX2xvZ19pdGVtICoJeGZz X3RyYW5zX2FpbF9jdXJzb3JfbmV4dChzdHJ1Y3QgeGZzX2FpbCAqYWlscCwKIAkJCQkJc3RydWN0 IHhmc19haWxfY3Vyc29yICpjdXIpOwogdm9pZAkJCXhmc190cmFuc19haWxfY3Vyc29yX2RvbmUo c3RydWN0IHhmc19haWwgKmFpbHAsCiAJCQkJCXN0cnVjdCB4ZnNfYWlsX2N1cnNvciAqY3VyKTsK Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCnhmcyBtYWls aW5nIGxpc3QKeGZzQG9zcy5zZ2kuY29tCmh0dHA6Ly9vc3Muc2dpLmNvbS9tYWlsbWFuL2xpc3Rp bmZvL3hmcwo=