Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kwzHr-0003RP-Qt for pgsql-hackers@arkaria.postgresql.org; Wed, 06 Jan 2021 03:15:04 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1kwzHq-0005xX-HA for pgsql-hackers@arkaria.postgresql.org; Wed, 06 Jan 2021 03:15:02 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kwzHq-0005x7-0V for pgsql-hackers@lists.postgresql.org; Wed, 06 Jan 2021 03:15:02 +0000 Received: from sender4-op-o13.zoho.com ([136.143.188.13]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kwzHi-0003C2-Sm for pgsql-hackers@postgresql.org; Wed, 06 Jan 2021 03:15:00 +0000 ARC-Seal: i=1; a=rsa-sha256; t=1609902884; cv=none; d=zohomail.com; s=zohoarc; b=Ygwm6Um9022D2iWudX/NY/s8m+kPrmmMrmkRDnZXTFHDg6DUw0NDHXlOtWaDYEFSxQj7bXgD3x+UUjmMsHUFAyQP0Aj5yVrVdEX1S17dJDmT6NVGjY5Yacx0zD3f/wnarHhVH+tkB/gNe74eKSxSSB0BvEkPUE0UJTUQurIjjmU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1609902884; h=Content-Type:Cc:Date:From:MIME-Version:Message-ID:References:Subject:To; bh=SjimUmTT7rTh9nGQunkZ6NBnYEDnZcBEPU8bKYpec4Q=; b=nXUa3HSfhnoPiEV2ofGEHZyEEUyZEj6M0Ho/dr3VDc4vJ9kyll069rgB4hIvfT4Ex0b3MInp/P4ZY9aCWeigUernc8ZVRK/BzimFUvXCVFND0aYv4D0rgtPl9n8Cp18kkMGhBmW+ebzkyLCeekQhP/JlMqefHpGJRi5KEjb6bPo= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=highgo.ca; spf=pass smtp.mailfrom=movead.li@highgo.ca; dmarc=pass header.from= header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1609902884; s=zoho; d=highgo.ca; i=movead.li@highgo.ca; h=Date:From:To:Cc:Subject:References:Mime-Version:Message-ID:Content-Type; bh=SjimUmTT7rTh9nGQunkZ6NBnYEDnZcBEPU8bKYpec4Q=; b=Y0iBsqDcEePerofkMAQ4gEvjIFrhS0JJPi34FssrnrStiSsp+t+TMUwuaBWyGhqM mENMjKoX7y3tFiuYoZkC9em8lWP5NMNyKE9+KxyjOXb8W//wbnYVkIbMzK82SZdNhQg KTpV2mOkzDnU+z7dZCOZ6vbubok4iwxviBf7rMfY= Received: from lchch (124.133.18.218 [124.133.18.218]) by mx.zohomail.com with SMTPS id 1609902882333977.0655520570987; Tue, 5 Jan 2021 19:14:42 -0800 (PST) Date: Wed, 6 Jan 2021 11:14:37 +0800 From: "movead.li@highgo.ca" To: "Shinya11.Kato@nttdata.com" Cc: pgsql-hackers , andres , michael , ahsan.hadi , Horiguchi Subject: RE: Wrong statistics for size of XLOG_SWITCH during pg_waldump. References: <20201016.180033.217520066292592870.horikyota.ntt@gmail.com>, <2020101617395691465546@highgo.ca>, <240cd11dc6664dfcbef50c2d6b16ccb2@MP-MSGSS-MBX001.msg.nttdata.co.jp>, <20201204.152047.1606427486743708152.horikyota.ntt@gmail.com>, X-Priority: 3 X-GUID: 200B51E0-B288-422E-AB52-2369D3E6047E X-Has-Attach: yes X-Mailer: Foxmail 7.2.16.188[cn] Mime-Version: 1.0 Message-ID: <2021010611143203905334@highgo.ca> Content-Type: multipart/mixed; boundary="----=_001_NextPart436203334150_=----" X-Zoho-Virus-Status: 1 X-ZohoMailClient: External List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk This is a multi-part message in MIME format. ------=_001_NextPart436203334150_=---- Content-Type: multipart/alternative; boundary="----=_002_NextPart605463140057_=----" ------=_002_NextPart605463140057_=---- Content-Type: text/plain; charset="iso-2022-jp" Content-Transfer-Encoding: base64 VGhhbmtzIGZvciByZXZpZXcsIGFuZCBzb3JyeSBmb3IgcmVwbHkgc28gbGF0ZXIuDQoNCj5JIHJl dmlld2VkIHRoZSBwYXRjaCBhbmQgZm91bmQgc29tZSBwcm9ibGVtcy4gDQo+PisgaWYoc3RhcnRT ZWdObyAhPSBlbmRTZWdObykNCj4+KyBlbHNlIGlmKHJlY29yZC0+UmVhZFJlY1B0ciAvIFhMT0df QkxDS1NaICE9DQo+PisgaWYocm1pZCA9PSBSTV9YTE9HX0lEICYmIGluZm8gPT0gWExPR19TV0lU Q0gpDQo+PisgaWYocmkgPT0gUk1fWExPR19JRCkNCj4+KyBpZihpbmZvID09IFhMT0dfU1dJVENI KQ0KPllvdSBuZWVkIHRvIHB1dCBhIHNwYWNlIGFmdGVyIHRoZSAiaWYiLg0KQWxsIGZpeCBhbmQg dGhhbmtzIGZvciBwb2ludCB0aGUgaXNzdWUuIA0KDQo+PkBAIC0yNCw2ICsyNCw3IEBADQo+PiNp bmNsdWRlICJjb21tb24vbG9nZ2luZy5oIg0KPj4jaW5jbHVkZSAiZ2V0b3B0X2xvbmcuaCINCj4+ I2luY2x1ZGUgInJtZ3JkZXNjLmgiDQo+PisjaW5jbHVkZSAiY2F0YWxvZy9wZ19jb250cm9sLmgi DQo+SSB0aGluayB0aGUgaW5jbHVkZSBzdGF0ZW1lbnRzIHNob3VsZCBiZSBhcnJhbmdlZCBpbiBh bHBoYWJldGljYWwgb3JkZXIuDQpGaXguDQoNCj4+KyBpbmZvID0gKHJqIDw8IDQpICYgflhMUl9J TkZPX01BU0s7DQo+PisgaWYoaW5mbyA9PSBYTE9HX1NXSVRDSCkNCj4+KyBYTG9nRHVtcFN0YXRz Um93KHBzcHJpbnRmKCJYTE9HL1NXSVRDSF9KVU5LIiksDQo+PisgMCwgdG90YWxfY291bnQsIHN0 YXRzLT5qdW5rX3NpemUsIHRvdGFsX3JlY19sZW4sDQo+PisgMCwgdG90YWxfZnBpX2xlbiwgc3Rh dHMtPmp1bmtfc2l6ZSwgdG90YWxfbGVuKTsNCiANCj5DYW4ndCBiZSBkZXNjcmliZWQgaW4gdGhl IHNhbWUgd2F5IGFzICJYTG9nRHVtcFN0YXRzUm93KHBzcHJpbnRmKCIlcy8lcyIsIGRlc2MtPnJt X25hbWUsIGlkKS4uLiI/DQo+T25seSB0aGlzIHBhcnQgbG9va3Mgc3RyYW5nZS4NCj5XaHkgYXJl IHRoZSAiY291bnQiIGFuZCAiZnBpX2xlbiIgZmllbGRzIDA/DQpUaGUgJ1NXSVRDSF9KVU5LJyBp cyBub3QgYSByZWFsIHJlY29yZCBhbmQgaXQgcmVseXMgb24gICdYTE9HX1NXSVRDSCcgcmVjb3Jk LCBzbyBJIHRoaW5rIHdlIGNhbid0IGNvdW50DQonU1dJVENIX0pVTksnLCBzbyB0aGUgImNvdW50 IiBpcyAwLiBBbmQgaXQgbmV2ZXIgY29udGFpbiBGUEksIHNvIHRoZSAiZnBpX2xlbiIgaXMgMC4N Cg0KQnV0IDAgdmFsdWUgbWF5YmUgbG9va3Mgc3RyYW5nZSwgc28gaW4gY3VycmVudCB2ZXJzaW9u IEkgc2hvdyBpdCBsaWtlIGJlbG93Og0KVHlwZSBOICglKSBSZWNvcmQgc2l6ZSAoJSkgRlBJIHNp emUgKCUpIENvbWJpbmVkIHNpemUgKCUpDQotLS0tIC0gLS0tIC0tLS0tLS0tLS0tIC0tLSAtLS0t LS0tLSAtLS0gLS0tLS0tLS0tLS0tLSAtLS0NCi4uLg0KWExPRy9TV0lUQ0hfSlVOSyAgICAgICAg ICAgICAgIC0gICAgICggICAgIC0pICAgICAgICAgICAgIDExMDA2MjQ4ICAgICAgICggNzIuMjYp ICAgICAgIC0gICAgICAgICAgICAgICAoICAgICAtKSAgICAgICAgMTEwMDYyNDggICAgICAgICAo IDY1Ljc4KQ0KVHJhbnNhY3Rpb24vQ09NTUlUICAgICAgICAgICAgIDEwICAgICggIDAuMDMpICAg ICAgICAgICAgICAgICAgMzQwICAgICAgICAgKCAgMC4wMCkgICAgICAgIDAgICAgICAgICAgICAg ICAoICAwLjAwKSAgICAgIDM0MCAgICAgICAgICAgICAgICAgICAoICAwLjAwKQ0KDQo+SSB0aGlu ayB5b3UgbmVlZCB0byBpbXByb3ZlIHRoZSBkdXBsaWNhdGUgb3V0cHV0IGluIGNvbHVtbiAiWExP Ry9TV0lUQ0hfSlVOSyIuDQpZZXMgaXQncyBhIGJ1ZyBhbmQgZml4ZWQuDQoNCg0KDQpSZWdhcmRz LA0KSGlnaGdvIFNvZnR3YXJlIChDYW5hZGEvQ2hpbmEvUGFraXN0YW4pIA0KVVJMIDogd3d3Lmhp Z2hnby5jYSANCkVNQUlMOiBtYWlsdG86bW92ZWFkKGRvdClsaShhdCloaWdoZ28oZG90KWNhDQoN Cg== ------=_002_NextPart605463140057_=---- Content-Type: text/html; charset="iso-2022-jp" Content-Transfer-Encoding: quoted-printable =0A
Thanks for review, and sorry for= reply so later.

>I reviewed the patch an= d found some problems. 
>>+ if(startSegNo !=3D endSegNo)
>>+= else if(record->ReadRecPtr / XLOG_BLCKSZ !=3D
>= >+ if(rmid =3D=3D RM_XLOG_ID && info =3D=3D XLOG_SWITCH)=
>>+ if(ri =3D=3D RM_XLOG_ID)
<= span style=3D"font-size: 10.5pt; line-height: 1.5; background-color: trans= parent;">>>+ if(info =3D=3D XLOG_SWITCH)
= >You need to put a space after the "if".
All fix and t= hanks for point the issue. 

>>@@ -24,6 +24,7 @@
>>#include "co= mmon/logging.h"
>>#include "getopt_long.h= "
>>#include "rmgrdesc.h"
>>+#include "catalog/pg_control.h"
&= gt;I think the include statements should be arranged in alphabetica= l order.
Fix.

>>= + info =3D (rj << 4) & ~XLR_INFO_MASK;
><= /span>>+ if(info =3D=3D XLOG_SWITCH)
>>= ;+ XLogDumpStatsRow(psprintf("XLOG/SWITCH_JUNK"),
>= >+ 0, total_count, stats->junk_size, total_rec_len,
>>+ 0, total_fpi_len, stats->junk_size, total_l= en);
 
>Can't be described in= the same way as "XLogDumpStatsRow(psprintf("%s/%s", desc->rm_name, id)= ..."?
>Only this part looks strange.
>Why are the "count" and "fpi_len" fields 0?<= div>The 'SWITCH_JUNK' is not a real record and it relys on =  'XLOG_SWITCH' record, so I think w= e can't count
'SWITCH_JUNK', so the "count" is = 0. And it never contain FPI, so the "

Type = N (%) Record size (%) FPI s= ize (%) Combined size (%)
---- = - --- ----------- --- ---= ----- --- ------------- ---
...
XLOG/SWITCH_J= UNK               -     ( &nb= sp;   -)             11006248   &n= bsp;   ( 72.26)       -         &n= bsp;     (     -)        11006248 =         ( 65.78)
Transaction/COMMIT &= nbsp;           10    (  0.03) &nb= sp;                340   &nbs= p;     (  0.00)        0     =           (  0.00)      340 &= nbsp;                 (  0.00= )

>I think you need to improv= e the duplicate output in column "XLOG/SWITCH_JUNK".
=0A
Ye= s it's a bug and fixed.


=0A
Regards,
Highgo Software (= Canada/China/Pakistan)
URL : w= ww.highgo.ca
EMAIL: mailto:movead(= dot)li(at)highgo(dot)ca
=0A

=0A
=0A ------=_002_NextPart605463140057_=------ ------=_001_NextPart436203334150_=---- Content-Type: application/octet-stream; name="fix_waldump_size_for_wal_switch_v6.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="fix_waldump_size_for_wal_switch_v6.patch" ZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2FjY2Vzcy9ybWdyZGVzYy94bG9nZGVzYy5jIGIvc3Jj L2JhY2tlbmQvYWNjZXNzL3JtZ3JkZXNjL3hsb2dkZXNjLmMKaW5kZXggOTJjYzdlYTA3My4uMDY2 ODUxMTY2MCAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvYWNjZXNzL3JtZ3JkZXNjL3hsb2dkZXNj LmMKKysrIGIvc3JjL2JhY2tlbmQvYWNjZXNzL3JtZ3JkZXNjL3hsb2dkZXNjLmMKQEAgLTc0LDYg Kzc0LDEzIEBAIHhsb2dfZGVzYyhTdHJpbmdJbmZvIGJ1ZiwgWExvZ1JlYWRlclN0YXRlICpyZWNv cmQpCiAJCW1lbWNweSgmbmV4dE9pZCwgcmVjLCBzaXplb2YoT2lkKSk7CiAJCWFwcGVuZFN0cmlu Z0luZm8oYnVmLCAiJXUiLCBuZXh0T2lkKTsKIAl9CisJZWxzZSBpZiAoaW5mbyA9PSBYTE9HX1NX SVRDSCkKKwl7CisJCXVpbnQzMglqdW5rX2xlbjsKKwkJanVua19sZW4gPSB4bG9nX3N3aXRjaF9q dW5rX2xlbihyZWNvcmQpOworCisJCWFwcGVuZFN0cmluZ0luZm8oYnVmLCAidHJhaWxpbmctYnl0 ZXM6ICV1IiwganVua19sZW4pOworCX0KIAllbHNlIGlmIChpbmZvID09IFhMT0dfUkVTVE9SRV9Q T0lOVCkKIAl7CiAJCXhsX3Jlc3RvcmVfcG9pbnQgKnhscmVjID0gKHhsX3Jlc3RvcmVfcG9pbnQg KikgcmVjOwpAQCAtMTQyLDYgKzE0OSwzMyBAQCB4bG9nX2Rlc2MoU3RyaW5nSW5mbyBidWYsIFhM b2dSZWFkZXJTdGF0ZSAqcmVjb3JkKQogCX0KIH0KIAordWludDMyCit4bG9nX3N3aXRjaF9qdW5r X2xlbihYTG9nUmVhZGVyU3RhdGUgKnJlY29yZCkKK3sKKwl1aW50MzIgCQlqdW5rX2xlbjsKKwlY TG9nU2VnTm8Jc3RhcnRTZWdObzsKKwlYTG9nU2VnTm8JZW5kU2VnTm87CisKKwlYTEJ5dGVUb1Nl ZyhyZWNvcmQtPlJlYWRSZWNQdHIsIHN0YXJ0U2VnTm8sIHJlY29yZC0+c2VnY3h0LndzX3NlZ3Np emUpOworCVhMQnl0ZVRvUHJldlNlZyhyZWNvcmQtPkVuZFJlY1B0ciwgZW5kU2VnTm8sIHJlY29y ZC0+c2VnY3h0LndzX3NlZ3NpemUpOworCisJanVua19sZW4gPSByZWNvcmQtPkVuZFJlY1B0ciAt IHJlY29yZC0+UmVhZFJlY1B0ciAtCisJCQkJCQkJCQkJCVhMb2dSZWNHZXRUb3RhbExlbihyZWNv cmQpOworCS8qCisJICogSWYgdGhlIHdhbCBzd2l0Y2ggcmVjb3JkIHNwcmVhZCBvbiB0d28gcGFn ZXMsIHdlIHNob3VsZCBleHRyYSBtaW51cworCSAqIHRoZSBwYWdlIGhlYWQsIGJlIGNhcmVmdWwg aWYgaXQncyBwYWdlIGF0IHRoZSB0b3Agb2YgYSB3YWwgc2VnbWVudC4KKwkgKi8KKwlpZiAoc3Rh cnRTZWdObyAhPSBlbmRTZWdObykKKwkJanVua19sZW4gLT0gU2l6ZU9mWExvZ0xvbmdQSEQ7CisJ ZWxzZSBpZiAocmVjb3JkLT5SZWFkUmVjUHRyIC8gWExPR19CTENLU1ogIT0KKwkJCQkocmVjb3Jk LT5FbmRSZWNQdHIgLSAxKSAvIFhMT0dfQkxDS1NaKQorCQlqdW5rX2xlbiAtPSBTaXplT2ZYTG9n U2hvcnRQSEQ7CisKKwlBc3NlcnQoanVua19sZW4gPj0gMCk7CisKKwlyZXR1cm4ganVua19sZW47 Cit9CisKIGNvbnN0IGNoYXIgKgogeGxvZ19pZGVudGlmeSh1aW50OCBpbmZvKQogewpkaWZmIC0t Z2l0IGEvc3JjL2Jpbi9wZ193YWxkdW1wL3BnX3dhbGR1bXAuYyBiL3NyYy9iaW4vcGdfd2FsZHVt cC9wZ193YWxkdW1wLmMKaW5kZXggMTY0ODY4ZDE2ZS4uYzIwZjdmNTcwMyAxMDA2NDQKLS0tIGEv c3JjL2Jpbi9wZ193YWxkdW1wL3BnX3dhbGR1bXAuYworKysgYi9zcmMvYmluL3BnX3dhbGR1bXAv cGdfd2FsZHVtcC5jCkBAIC0yMCw2ICsyMCw3IEBACiAjaW5jbHVkZSAiYWNjZXNzL3hsb2dfaW50 ZXJuYWwuaCIKICNpbmNsdWRlICJhY2Nlc3MveGxvZ3JlYWRlci5oIgogI2luY2x1ZGUgImFjY2Vz cy94bG9ncmVjb3JkLmgiCisjaW5jbHVkZSAiY2F0YWxvZy9wZ19jb250cm9sLmgiCiAjaW5jbHVk ZSAiY29tbW9uL2ZlX21lbXV0aWxzLmgiCiAjaW5jbHVkZSAiY29tbW9uL2xvZ2dpbmcuaCIKICNp bmNsdWRlICJnZXRvcHRfbG9uZy5oIgpAQCAtNjYsNiArNjcsNyBAQCB0eXBlZGVmIHN0cnVjdCBT dGF0cwogdHlwZWRlZiBzdHJ1Y3QgWExvZ0R1bXBTdGF0cwogewogCXVpbnQ2NAkJY291bnQ7CisJ dWludDMyCQlqdW5rX3NpemU7CiAJU3RhdHMJCXJtZ3Jfc3RhdHNbUk1fTkVYVF9JRF07CiAJU3Rh dHMJCXJlY29yZF9zdGF0c1tSTV9ORVhUX0lEXVtNQVhfWExJTkZPX1RZUEVTXTsKIH0gWExvZ0R1 bXBTdGF0czsKQEAgLTQxNiwxMiArNDE4LDIxIEBAIFhMb2dEdW1wQ291bnRSZWNvcmQoWExvZ0R1 bXBDb25maWcgKmNvbmZpZywgWExvZ0R1bXBTdGF0cyAqc3RhdHMsCiAJdWludDgJCXJlY2lkOwog CXVpbnQzMgkJcmVjX2xlbjsKIAl1aW50MzIJCWZwaV9sZW47CisJdWludDgJCWluZm87CiAKIAlz dGF0cy0+Y291bnQrKzsKIAogCXJtaWQgPSBYTG9nUmVjR2V0Um1pZChyZWNvcmQpOworCWluZm8g PSBYTG9nUmVjR2V0SW5mbyhyZWNvcmQpICYgflhMUl9JTkZPX01BU0s7CiAKIAlYTG9nRHVtcFJl Y29yZExlbihyZWNvcmQsICZyZWNfbGVuLCAmZnBpX2xlbik7CisJLyogQWRkIGp1bmstc3BhY2Ug c3RhdHMgZm9yIFhMT0dfU1dJVENIICAqLworCWlmIChybWlkID09IFJNX1hMT0dfSUQgJiYgaW5m byA9PSBYTE9HX1NXSVRDSCkKKwl7CisJCXVpbnQzMiBqdW5rX2xlbiA9IHhsb2dfc3dpdGNoX2p1 bmtfbGVuKHJlY29yZCk7CisKKwkJc3RhdHMtPmp1bmtfc2l6ZSArPSBqdW5rX2xlbjsKKwl9CiAK IAkvKiBVcGRhdGUgcGVyLXJtZ3Igc3RhdGlzdGljcyAqLwogCkBAIC01OTUsNiArNjA2LDM4IEBA IFhMb2dEdW1wU3RhdHNSb3coY29uc3QgY2hhciAqbmFtZSwKIAkJICAgdG90X2xlbiwgdG90X2xl bl9wY3QpOwogfQogCitzdGF0aWMgdm9pZAorWExvZ0R1bXBTdGF0c1Jvd19qdW5rKGJvb2wgZGV0 YWlsLAorCQkJCSB1aW50NjQgcmVjX2xlbiwgdWludDY0IHRvdGFsX3JlY19sZW4sCisJCQkJIHVp bnQ2NCB0b3RfbGVuLCB1aW50NjQgdG90YWxfbGVuKQoreworCWRvdWJsZQkJcmVjX2xlbl9wY3Qs CisJCQkJdG90X2xlbl9wY3Q7CisJY2hhcgkJKm5hbWUgPSBOVUxMOworCWNoYXIJCXBhZCA9ICct JzsKKworCWlmIChkZXRhaWwpCisJCW5hbWUgPSAiWExPRy9TV0lUQ0hfSlVOSyI7CisJZWxzZQor CQluYW1lID0gIlhMT0dTd2l0Y2hKdW5rIjsKKworCXJlY19sZW5fcGN0ID0gMDsKKwlpZiAodG90 YWxfcmVjX2xlbiAhPSAwKQorCQlyZWNfbGVuX3BjdCA9IDEwMCAqIChkb3VibGUpIHJlY19sZW4g LyB0b3RhbF9yZWNfbGVuOworCisJdG90X2xlbl9wY3QgPSAwOworCWlmICh0b3RhbF9sZW4gIT0g MCkKKwkJdG90X2xlbl9wY3QgPSAxMDAgKiAoZG91YmxlKSB0b3RfbGVuIC8gdG90YWxfbGVuOwor CisJcHJpbnRmKCIlLTI3cyAiCisJCSAgICIlMjBjICglNmMpICIKKwkJICAgIiUyMCIgSU5UNjRf TU9ESUZJRVIgInUgKCU2LjAyZikgIgorCQkgICAiJTIwYyAoJTZjKSAiCisJCSAgICIlMjAiIElO VDY0X01PRElGSUVSICJ1ICglNi4wMmYpXG4iLAorCQkgICBuYW1lLCBwYWQsIHBhZCwgcmVjX2xl biwgcmVjX2xlbl9wY3QsIHBhZCwgcGFkLAorCQkgICB0b3RfbGVuLCB0b3RfbGVuX3BjdCk7Cit9 CisKIAogLyoKICAqIERpc3BsYXkgc3VtbWFyeSBzdGF0aXN0aWNzIGFib3V0IHRoZSByZWNvcmRz IHNlZW4gc28gZmFyLgpAQCAtNjIyLDYgKzY2NSw3IEBAIFhMb2dEdW1wRGlzcGxheVN0YXRzKFhM b2dEdW1wQ29uZmlnICpjb25maWcsIFhMb2dEdW1wU3RhdHMgKnN0YXRzKQogCQl0b3RhbF9yZWNf bGVuICs9IHN0YXRzLT5ybWdyX3N0YXRzW3JpXS5yZWNfbGVuOwogCQl0b3RhbF9mcGlfbGVuICs9 IHN0YXRzLT5ybWdyX3N0YXRzW3JpXS5mcGlfbGVuOwogCX0KKwl0b3RhbF9yZWNfbGVuICs9IHN0 YXRzLT5qdW5rX3NpemU7CiAJdG90YWxfbGVuID0gdG90YWxfcmVjX2xlbiArIHRvdGFsX2ZwaV9s ZW47CiAKIAkvKgpAQCAtNjUyLDEyICs2OTYsMjIgQEAgWExvZ0R1bXBEaXNwbGF5U3RhdHMoWExv Z0R1bXBDb25maWcgKmNvbmZpZywgWExvZ0R1bXBTdGF0cyAqc3RhdHMpCiAJCQlYTG9nRHVtcFN0 YXRzUm93KGRlc2MtPnJtX25hbWUsCiAJCQkJCQkJIGNvdW50LCB0b3RhbF9jb3VudCwgcmVjX2xl biwgdG90YWxfcmVjX2xlbiwKIAkJCQkJCQkgZnBpX2xlbiwgdG90YWxfZnBpX2xlbiwgdG90X2xl biwgdG90YWxfbGVuKTsKKwkJCWlmIChyaSA9PSBSTV9YTE9HX0lEKQorCQkJeworCQkJCVhMb2dE dW1wU3RhdHNSb3dfanVuayhmYWxzZSwKKwkJCQkJCQkJc3RhdHMtPmp1bmtfc2l6ZSwgdG90YWxf cmVjX2xlbiwKKwkJCQkJCQkJc3RhdHMtPmp1bmtfc2l6ZSwgdG90YWxfbGVuKTsKKwkJCX0KKwog CQl9CiAJCWVsc2UKIAkJeworCQkJYm9vbAlnZXRzd2l0Y2ggPSBmYWxzZTsKKwogCQkJZm9yIChy aiA9IDA7IHJqIDwgTUFYX1hMSU5GT19UWVBFUzsgcmorKykKIAkJCXsKIAkJCQljb25zdCBjaGFy ICppZDsKKwkJCQl1aW50OAkJaW5mbzsKIAogCQkJCWNvdW50ID0gc3RhdHMtPnJlY29yZF9zdGF0 c1tyaV1bcmpdLmNvdW50OwogCQkJCXJlY19sZW4gPSBzdGF0cy0+cmVjb3JkX3N0YXRzW3JpXVty al0ucmVjX2xlbjsKQEAgLTY3Niw3ICs3MzAsMTUgQEAgWExvZ0R1bXBEaXNwbGF5U3RhdHMoWExv Z0R1bXBDb25maWcgKmNvbmZpZywgWExvZ0R1bXBTdGF0cyAqc3RhdHMpCiAJCQkJWExvZ0R1bXBT dGF0c1Jvdyhwc3ByaW50ZigiJXMvJXMiLCBkZXNjLT5ybV9uYW1lLCBpZCksCiAJCQkJCQkJCSBj b3VudCwgdG90YWxfY291bnQsIHJlY19sZW4sIHRvdGFsX3JlY19sZW4sCiAJCQkJCQkJCSBmcGlf bGVuLCB0b3RhbF9mcGlfbGVuLCB0b3RfbGVuLCB0b3RhbF9sZW4pOworCQkJCWluZm8gPSAocmog PDwgNCkgJiB+WExSX0lORk9fTUFTSzsKKwkJCQlpZiAocmkgPT0gUk1fWExPR19JRCAmJiBpbmZv ID09IFhMT0dfU1dJVENIKQorCQkJCQlnZXRzd2l0Y2ggPSB0cnVlOworCiAJCQl9CisJCQlpZiAo Z2V0c3dpdGNoKQorCQkJCVhMb2dEdW1wU3RhdHNSb3dfanVuayh0cnVlLAorCQkJCQkJCQkJc3Rh dHMtPmp1bmtfc2l6ZSwgdG90YWxfcmVjX2xlbiwKKwkJCQkJCQkJCXN0YXRzLT5qdW5rX3NpemUs IHRvdGFsX2xlbik7CiAJCX0KIAl9CiAKZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL2FjY2Vzcy94 bG9nX2ludGVybmFsLmggYi9zcmMvaW5jbHVkZS9hY2Nlc3MveGxvZ19pbnRlcm5hbC5oCmluZGV4 IDk1ODVhZDE3YjMuLjY4N2JhOTAyMzggMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL2FjY2Vzcy94 bG9nX2ludGVybmFsLmgKKysrIGIvc3JjL2luY2x1ZGUvYWNjZXNzL3hsb2dfaW50ZXJuYWwuaApA QCAtMzE1LDYgKzMxNSw3IEBAIGV4dGVybiBYTG9nUmVjUHRyIFJlcXVlc3RYTG9nU3dpdGNoKGJv b2wgbWFya191bmltcG9ydGFudCk7CiAKIGV4dGVybiB2b2lkIEdldE9sZGVzdFJlc3RhcnRQb2lu dChYTG9nUmVjUHRyICpvbGRyZWNwdHIsIFRpbWVMaW5lSUQgKm9sZHRsaSk7CiAKK2V4dGVybiB1 aW50MzIgeGxvZ19zd2l0Y2hfanVua19sZW4oWExvZ1JlYWRlclN0YXRlICpyZWNvcmQpOwogLyoK ICAqIEV4cG9ydGVkIGZvciB0aGUgZnVuY3Rpb25zIGluIHRpbWVsaW5lLmMgYW5kIHhsb2dhcmNo aXZlLmMuICBPbmx5IHZhbGlkCiAgKiBpbiB0aGUgc3RhcnR1cCBwcm9jZXNzLgo= ------=_001_NextPart436203334150_=------