Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1w0fZA-0026i6-0q for pgsql-hackers@arkaria.postgresql.org; Thu, 12 Mar 2026 12:55:05 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1w0fZ8-00EwmN-1H for pgsql-hackers@arkaria.postgresql.org; Thu, 12 Mar 2026 12:55:02 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1w0fZ7-00EwmF-32 for pgsql-hackers@lists.postgresql.org; Thu, 12 Mar 2026 12:55:02 +0000 Received: from lahtoruutu.iki.fi ([2a0b:5c81:1c1::37]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1w0fZ5-00000002Ii9-2ku4 for pgsql-hackers@postgresql.org; Thu, 12 Mar 2026 12:55:02 +0000 Received: from [10.0.2.15] (unknown [130.41.208.2]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange x25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: hlinnaka) by lahtoruutu.iki.fi (Postfix) with ESMTPSA id 4fWndT505Hz49PvN; Thu, 12 Mar 2026 14:54:53 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=iki.fi; s=lahtoruutu; t=1773320095; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=D9bOd3mxpA3wwjWNiqdfwIY32AI0ePahealPeZRG0sI=; b=OUSLZppbNIsMR1tdtb9TL3ZSgWDAXvAqsNn9ss73sOqmEnbCR306p8ooEGYQbz878Jvv82 onShp92QrxU5t+Kl/BEy8jnbtegyxUYLlzowiW3aVAkgAoh9Vr3CrqieGg59ju7nJbiY/V Q83UsMO5o9bu+z+36W7aKF+POWDoYXG8DjeSL9J5FclJRGSVdelcm+gj2J7YNs3CDvK8s/ 66tkiTBy5z51AiNC7wN+FK106D3QHJ+2kiVtnio2oIefIurzvJaXeSy2lLhDERUgFQT0N+ Dwng0TMPr3deFU9hGrp1xUmDWGdwd8zpU5WyOvdj/CsqVrShL65wk5kJzpVWjQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=iki.fi; s=lahtoruutu; t=1773320095; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=D9bOd3mxpA3wwjWNiqdfwIY32AI0ePahealPeZRG0sI=; b=F7+r9VbcQ/7Tq0G7s4OQZHYoOgQWez/Z36sZqDsiZSD3sSPaDp30TAOd3uBdG/HxX/trSB ZSPv0uUKzmth2SL/qgxKjRAikJ36zRT+3NtBU1i8lQuXjQ6E3NWVzC78fTG/kJD84Zk3m7 0G8Edy5sapquyX4n+gmKZAYLjSStLTtUO2ouVJAm6iT1U+8Efu1V7DDEh9hIoG2K4fEj5h vbBMF453jvnapTZ8uOwpmG2SYh+LYFaCpxmP+jDwtr/xvp8fLnQ18FC6fj/roUsuC0lC8+ GwH5cA7GOqNGAIUOhxCKYfeDuUyg++OtWsP76QyKUWXGyZHZV4Cc5sEUY2hlfQ== ARC-Authentication-Results: i=1; ORIGINATING; auth=pass smtp.auth=hlinnaka smtp.mailfrom=hlinnaka@iki.fi ARC-Seal: i=1; a=rsa-sha256; d=iki.fi; s=lahtoruutu; cv=none; t=1773320095; b=pSSYKKGb2Crr0duQ3vyR0WepINvMpLhKE0JHL/fW5Mh0lLsAOT4354oxNSxH+6/HBKurdf 4IeI2R9bWVCOSrPn7wXUUPzQM+oNbnsNzZH5CUwR5LBcCHqZNW3NwZpLN4sK+PFadwAuvj sPkylX4GYHDchQIBBExMX/FbVUmO/iyj/sb7BP6Ov2FLThK7XZe4EeOUBb9yuyD/JnRIoY k4pUaQr0zu1ILEsekbMvuUUJ9fq0mUfbL1uRedubkHWiG7IrSURZVkuGiEud33oTbZQ07l ZJ1GhpXfuE8FOQpapHEh5oOd0cVTxHmXV/JjNCmVUJFxJU2X9kTjJr9BAhkcVQ== Content-Type: multipart/mixed; boundary="------------qsOf3v7iRBa3XlIAikw35kzi" Message-ID: Date: Thu, 12 Mar 2026 14:54:52 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: Fix uninitialized xl_running_xacts padding To: Alexander Kuzmenkov Cc: Andres Freund , Anthonin Bonnefoy , Bertrand Drouvot , Michael Paquier , Thomas Munro , PostgreSQL Hackers References: Content-Language: en-US From: Heikki Linnakangas In-Reply-To: List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk This is a multi-part message in MIME format. --------------qsOf3v7iRBa3XlIAikw35kzi Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 11/03/2026 13:07, Alexander Kuzmenkov wrote: > On Wed, Mar 11, 2026 at 11:45 AM Alexander Kuzmenkov > wrote: >> >> On Tue, Mar 10, 2026 at 11:09 PM Heikki Linnakangas wrote: >>> +1 for initializing all padding in WAL records. In fact I thought that >>> we already did that. (Except in this case, apparently) >> >> I found 42 exceptions like this. See the attached patch, it >> initializes some WAL records and removes the WAL-related Valgrind >> suppressions. The regression tests pass under Valgrind with these >> changes. > > I think I'm making some unneeded changes here though. For example in > ginxlogInsertListPage for a two-int struct with no padding. I'll need > to check them again one by one. I experimented with this a little more. Valgrind complained about one more place on 'master': the xl_multixact_create got padding, when MultiXactOffset was widened to 64 bits. That could be fixed by swapping the fields. Another thing I did to find possible initializations: I ran 'pahole bin/postgres' and search for all the "xl_*" structs with padding, and then looked at where they're initialized. Attached patch (0003) shows a few places that look suspicious to me. I don't think I caught all structs used in WAL records, though, like the ginxlogInsertListPage thing mentioned. I wish we could just mark all WAL record structs with pg_attribute_packed(). Unfortunately pg_attribute_packed() is not available on all compilers we support. - Heikki --------------qsOf3v7iRBa3XlIAikw35kzi Content-Type: text/x-patch; charset=UTF-8; name="0001-Initialize-WAL-record-structs.patch" Content-Disposition: attachment; filename="0001-Initialize-WAL-record-structs.patch" Content-Transfer-Encoding: base64 RnJvbSAyYjlhMzYwOTUyYWFlOTRlYjA5YWZkN2E0NmIwZTQxNzBmOTE2NDY0IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBIZWlra2kgTGlubmFrYW5nYXMgPGhlaWtraS5saW5u YWthbmdhc0Bpa2kuZmk+CkRhdGU6IFRodSwgMTIgTWFyIDIwMjYgMTI6NDI6MTEgKzAyMDAK U3ViamVjdDogW1BBVENIIDEvNF0gSW5pdGlhbGl6ZSBXQUwgcmVjb3JkIHN0cnVjdHMKCkF1 dGhvcjogQWxleGFuZGVyIEt1em1lbmtvdiA8YWt1em1lbmtvdkB0aWdlcmRhdGEuY29tPgot LS0KIHNyYy9iYWNrZW5kL2FjY2Vzcy9icmluL2JyaW4uYyAgICAgICAgICB8ICAyICsrCiBz cmMvYmFja2VuZC9hY2Nlc3MvYnJpbi9icmluX3BhZ2VvcHMuYyAgfCAgNiArKysrKysKIHNy Yy9iYWNrZW5kL2FjY2Vzcy9icmluL2JyaW5fcmV2bWFwLmMgICB8ICA0ICsrKysKIHNyYy9i YWNrZW5kL2FjY2Vzcy9naW4vZ2luYnRyZWUuYyAgICAgICB8ICA0ICsrKysKIHNyYy9iYWNr ZW5kL2FjY2Vzcy9naW4vZ2luZmFzdC5jICAgICAgICB8ICA2ICsrKysrKwogc3JjL2JhY2tl bmQvYWNjZXNzL2dpbi9naW51dGlsLmMgICAgICAgIHwgIDIgKysKIHNyYy9iYWNrZW5kL2Fj Y2Vzcy9naW4vZ2ludmFjdXVtLmMgICAgICB8ICAyICsrCiBzcmMvYmFja2VuZC9hY2Nlc3Mv Z2lzdC9naXN0eGxvZy5jICAgICAgfCAgOCArKysrKysrKwogc3JjL2JhY2tlbmQvYWNjZXNz L2hlYXAvaGVhcGFtLmMgICAgICAgIHwgIDMgKysrCiBzcmMvYmFja2VuZC9hY2Nlc3MvaGVh cC9wcnVuZWhlYXAuYyAgICAgfCAgNSArKysrLQogc3JjL2JhY2tlbmQvYWNjZXNzL25idHJl ZS9uYnRpbnNlcnQuYyAgIHwgIDUgKysrKysKIHNyYy9iYWNrZW5kL2FjY2Vzcy9uYnRyZWUv bmJ0cGFnZS5jICAgICB8ICA2ICsrKysrKwogc3JjL2JhY2tlbmQvYWNjZXNzL3NwZ2lzdC9z cGdkb2luc2VydC5jIHwgMTAgKysrKysrKysrKwogc3JjL2JhY2tlbmQvYWNjZXNzL3NwZ2lz dC9zcGd2YWN1dW0uYyAgIHwgIDUgKysrKysKIHNyYy9iYWNrZW5kL3N0b3JhZ2UvaXBjL3N0 YW5kYnkuYyAgICAgICB8ICAyICsrCiBzcmMvdG9vbHMvdmFsZ3JpbmQuc3VwcCAgICAgICAg ICAgICAgICAgfCAxNyAtLS0tLS0tLS0tLS0tLS0tLQogMTYgZmlsZXMgY2hhbmdlZCwgNjkg aW5zZXJ0aW9ucygrKSwgMTggZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tl bmQvYWNjZXNzL2JyaW4vYnJpbi5jIGIvc3JjL2JhY2tlbmQvYWNjZXNzL2JyaW4vYnJpbi5j CmluZGV4IDE5MDljMzI1NGI1Li44OGUzMmM3ZmI3NCAxMDA2NDQKLS0tIGEvc3JjL2JhY2tl bmQvYWNjZXNzL2JyaW4vYnJpbi5jCisrKyBiL3NyYy9iYWNrZW5kL2FjY2Vzcy9icmluL2Jy aW4uYwpAQCAtMTE0MSw2ICsxMTQxLDggQEAgYnJpbmJ1aWxkKFJlbGF0aW9uIGhlYXAsIFJl bGF0aW9uIGluZGV4LCBJbmRleEluZm8gKmluZGV4SW5mbykKIAkJWExvZ1JlY1B0cglyZWNw dHI7CiAJCVBhZ2UJCXBhZ2U7CiAKKwkJbWVtc2V0KCZ4bHJlYywgMCwgc2l6ZW9mKHhscmVj KSk7CisKIAkJeGxyZWMudmVyc2lvbiA9IEJSSU5fQ1VSUkVOVF9WRVJTSU9OOwogCQl4bHJl Yy5wYWdlc1BlclJhbmdlID0gQnJpbkdldFBhZ2VzUGVyUmFuZ2UoaW5kZXgpOwogCmRpZmYg LS1naXQgYS9zcmMvYmFja2VuZC9hY2Nlc3MvYnJpbi9icmluX3BhZ2VvcHMuYyBiL3NyYy9i YWNrZW5kL2FjY2Vzcy9icmluL2JyaW5fcGFnZW9wcy5jCmluZGV4IDdkYTk3YmVjNDNiLi5k YzU2OTMyYWIyMSAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvYWNjZXNzL2JyaW4vYnJpbl9w YWdlb3BzLmMKKysrIGIvc3JjL2JhY2tlbmQvYWNjZXNzL2JyaW4vYnJpbl9wYWdlb3BzLmMK QEAgLTE4Nyw2ICsxODcsOCBAQCBicmluX2RvdXBkYXRlKFJlbGF0aW9uIGlkeHJlbCwgQmxv Y2tOdW1iZXIgcGFnZXNQZXJSYW5nZSwKIAkJCVhMb2dSZWNQdHIJcmVjcHRyOwogCQkJdWlu dDgJCWluZm8gPSBYTE9HX0JSSU5fU0FNRVBBR0VfVVBEQVRFOwogCisJCQltZW1zZXQoJnhs cmVjLCAwLCBzaXplb2YoeGxyZWMpKTsKKwogCQkJeGxyZWMub2ZmbnVtID0gb2xkb2ZmOwog CiAJCQlYTG9nQmVnaW5JbnNlcnQoKTsKQEAgLTI3MSw2ICsyNzMsOCBAQCBicmluX2RvdXBk YXRlKFJlbGF0aW9uIGlkeHJlbCwgQmxvY2tOdW1iZXIgcGFnZXNQZXJSYW5nZSwKIAkJCVhM b2dSZWNQdHIJcmVjcHRyOwogCQkJdWludDgJCWluZm87CiAKKwkJCW1lbXNldCgmeGxyZWMs IDAsIHNpemVvZih4bHJlYykpOworCiAJCQlpbmZvID0gWExPR19CUklOX1VQREFURSB8IChl eHRlbmRlZCA/IFhMT0dfQlJJTl9JTklUX1BBR0UgOiAwKTsKIAogCQkJeGxyZWMuaW5zZXJ0 Lm9mZm51bSA9IG5ld29mZjsKQEAgLTQyNyw2ICs0MzEsOCBAQCBicmluX2RvaW5zZXJ0KFJl bGF0aW9uIGlkeHJlbCwgQmxvY2tOdW1iZXIgcGFnZXNQZXJSYW5nZSwKIAkJWExvZ1JlY1B0 cglyZWNwdHI7CiAJCXVpbnQ4CQlpbmZvOwogCisJCW1lbXNldCgmeGxyZWMsIDAsIHNpemVv Zih4bHJlYykpOworCiAJCWluZm8gPSBYTE9HX0JSSU5fSU5TRVJUIHwgKGV4dGVuZGVkID8g WExPR19CUklOX0lOSVRfUEFHRSA6IDApOwogCQl4bHJlYy5oZWFwQmxrID0gaGVhcEJsazsK IAkJeGxyZWMucGFnZXNQZXJSYW5nZSA9IHBhZ2VzUGVyUmFuZ2U7CmRpZmYgLS1naXQgYS9z cmMvYmFja2VuZC9hY2Nlc3MvYnJpbi9icmluX3Jldm1hcC5jIGIvc3JjL2JhY2tlbmQvYWNj ZXNzL2JyaW4vYnJpbl9yZXZtYXAuYwppbmRleCAyMzMzNTVjYjJkNS4uYzlkYjRlNTk4MjIg MTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2FjY2Vzcy9icmluL2JyaW5fcmV2bWFwLmMKKysr IGIvc3JjL2JhY2tlbmQvYWNjZXNzL2JyaW4vYnJpbl9yZXZtYXAuYwpAQCAtNDExLDYgKzQx MSw4IEBAIGJyaW5SZXZtYXBEZXN1bW1hcml6ZVJhbmdlKFJlbGF0aW9uIGlkeHJlbCwgQmxv Y2tOdW1iZXIgaGVhcEJsaykKIAkJeGxfYnJpbl9kZXN1bW1hcml6ZSB4bHJlYzsKIAkJWExv Z1JlY1B0cglyZWNwdHI7CiAKKwkJbWVtc2V0KCZ4bHJlYywgMCwgc2l6ZW9mKHhscmVjKSk7 CisKIAkJeGxyZWMucGFnZXNQZXJSYW5nZSA9IHJldm1hcC0+cm1fcGFnZXNQZXJSYW5nZTsK IAkJeGxyZWMuaGVhcEJsayA9IGhlYXBCbGs7CiAJCXhscmVjLnJlZ09mZnNldCA9IHJlZ09m ZnNldDsKQEAgLTYyNCw2ICs2MjYsOCBAQCByZXZtYXBfcGh5c2ljYWxfZXh0ZW5kKEJyaW5S ZXZtYXAgKnJldm1hcCkKIAkJeGxfYnJpbl9yZXZtYXBfZXh0ZW5kIHhscmVjOwogCQlYTG9n UmVjUHRyCXJlY3B0cjsKIAorCQltZW1zZXQoJnhscmVjLCAwLCBzaXplb2YoeGxyZWMpKTsK KwogCQl4bHJlYy50YXJnZXRCbGsgPSBtYXBCbGs7CiAKIAkJWExvZ0JlZ2luSW5zZXJ0KCk7 CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9hY2Nlc3MvZ2luL2dpbmJ0cmVlLmMgYi9zcmMv YmFja2VuZC9hY2Nlc3MvZ2luL2dpbmJ0cmVlLmMKaW5kZXggM2QzYTlkYTU2YjEuLjZlYWVl YmY3OWJjIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9hY2Nlc3MvZ2luL2dpbmJ0cmVlLmMK KysrIGIvc3JjL2JhY2tlbmQvYWNjZXNzL2dpbi9naW5idHJlZS5jCkBAIC00MjEsNiArNDIx LDggQEAgZ2luUGxhY2VUb1BhZ2UoR2luQnRyZWUgYnRyZWUsIEdpbkJ0cmVlU3RhY2sgKnN0 YWNrLAogCQkJZ2lueGxvZ0luc2VydCB4bHJlYzsKIAkJCUJsb2NrSWREYXRhIGNoaWxkYmxr bm9zWzJdOwogCisJCQltZW1zZXQoJnhscmVjLCAwLCBzaXplb2YoeGxyZWMpKTsKKwogCQkJ eGxyZWMuZmxhZ3MgPSB4bGZsYWdzOwogCiAJCQlYTG9nUmVnaXN0ZXJEYXRhKCZ4bHJlYywg c2l6ZW9mKGdpbnhsb2dJbnNlcnQpKTsKQEAgLTQ2MSw2ICs0NjMsOCBAQCBnaW5QbGFjZVRv UGFnZShHaW5CdHJlZSBidHJlZSwgR2luQnRyZWVTdGFjayAqc3RhY2ssCiAJCUJ1ZmZlcgkJ bGJ1ZmZlciA9IEludmFsaWRCdWZmZXI7CiAJCVBhZ2UJCW5ld3Jvb3RwZyA9IE5VTEw7CiAK KwkJbWVtc2V0KCZkYXRhLCAwLCBzaXplb2YoZGF0YSkpOworCiAJCS8qIEdldCBhIG5ldyBp bmRleCBwYWdlIHRvIGJlY29tZSB0aGUgcmlnaHQgcGFnZSAqLwogCQlyYnVmZmVyID0gR2lu TmV3QnVmZmVyKGJ0cmVlLT5pbmRleCk7CiAKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2Fj Y2Vzcy9naW4vZ2luZmFzdC5jIGIvc3JjL2JhY2tlbmQvYWNjZXNzL2dpbi9naW5mYXN0LmMK aW5kZXggZjUwODQ4ZWI2NWEuLjcxMGMxNjg4N2RmIDEwMDY0NAotLS0gYS9zcmMvYmFja2Vu ZC9hY2Nlc3MvZ2luL2dpbmZhc3QuYworKysgYi9zcmMvYmFja2VuZC9hY2Nlc3MvZ2luL2dp bmZhc3QuYwpAQCAtMTE4LDYgKzExOCw4IEBAIHdyaXRlTGlzdFBhZ2UoUmVsYXRpb24gaW5k ZXgsIEJ1ZmZlciBidWZmZXIsCiAJCWdpbnhsb2dJbnNlcnRMaXN0UGFnZSBkYXRhOwogCQlY TG9nUmVjUHRyCXJlY3B0cjsKIAorCQltZW1zZXQoJmRhdGEsIDAsIHNpemVvZihkYXRhKSk7 CisKIAkJZGF0YS5yaWdodGxpbmsgPSByaWdodGxpbms7CiAJCWRhdGEubnR1cGxlcyA9IG50 dXBsZXM7CiAKQEAgLTIzMCw2ICsyMzIsOCBAQCBnaW5IZWFwVHVwbGVGYXN0SW5zZXJ0KEdp blN0YXRlICpnaW5zdGF0ZSwgR2luVHVwbGVDb2xsZWN0b3IgKmNvbGxlY3RvcikKIAlpbnQJ CQljbGVhbnVwU2l6ZTsKIAlib29sCQluZWVkV2FsOwogCisJbWVtc2V0KCZkYXRhLCAwLCBz aXplb2YoZGF0YSkpOworCiAJaWYgKGNvbGxlY3Rvci0+bnR1cGxlcyA9PSAwKQogCQlyZXR1 cm47CiAKQEAgLTU3MSw2ICs1NzUsOCBAQCBzaGlmdExpc3QoUmVsYXRpb24gaW5kZXgsIEJ1 ZmZlciBtZXRhYnVmZmVyLCBCbG9ja051bWJlciBuZXdIZWFkLAogCQlCdWZmZXIJCWJ1ZmZl cnNbR0lOX05ERUxFVEVfQVRfT05DRV07CiAJCUJsb2NrTnVtYmVyIGZyZWVzcGFjZVtHSU5f TkRFTEVURV9BVF9PTkNFXTsKIAorCQltZW1zZXQoJmRhdGEsIDAsIHNpemVvZihkYXRhKSk7 CisKIAkJZGF0YS5uZGVsZXRlZCA9IDA7CiAJCXdoaWxlIChkYXRhLm5kZWxldGVkIDwgR0lO X05ERUxFVEVfQVRfT05DRSAmJiBibGtub1RvRGVsZXRlICE9IG5ld0hlYWQpCiAJCXsKZGlm ZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2FjY2Vzcy9naW4vZ2ludXRpbC5jIGIvc3JjL2JhY2tl bmQvYWNjZXNzL2dpbi9naW51dGlsLmMKaW5kZXggZmY5MjcyNzljYzMuLjc2YmU1NmU5MzJi IDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9hY2Nlc3MvZ2luL2dpbnV0aWwuYworKysgYi9z cmMvYmFja2VuZC9hY2Nlc3MvZ2luL2dpbnV0aWwuYwpAQCAtNjUwLDYgKzY1MCw4IEBAIGdp blVwZGF0ZVN0YXRzKFJlbGF0aW9uIGluZGV4LCBjb25zdCBHaW5TdGF0c0RhdGEgKnN0YXRz LCBib29sIGlzX2J1aWxkKQogCQlYTG9nUmVjUHRyCXJlY3B0cjsKIAkJZ2lueGxvZ1VwZGF0 ZU1ldGEgZGF0YTsKIAorCQltZW1zZXQoJmRhdGEsIDAsIHNpemVvZihkYXRhKSk7CisKIAkJ ZGF0YS5sb2NhdG9yID0gaW5kZXgtPnJkX2xvY2F0b3I7CiAJCWRhdGEubnR1cGxlcyA9IDA7 CiAJCWRhdGEubmV3UmlnaHRsaW5rID0gZGF0YS5wcmV2VGFpbCA9IEludmFsaWRCbG9ja051 bWJlcjsKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2FjY2Vzcy9naW4vZ2ludmFjdXVtLmMg Yi9zcmMvYmFja2VuZC9hY2Nlc3MvZ2luL2dpbnZhY3V1bS5jCmluZGV4IGQ1YzhiZWY1Y2Vi Li5hZDNjNDExNTU5MyAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvYWNjZXNzL2dpbi9naW52 YWN1dW0uYworKysgYi9zcmMvYmFja2VuZC9hY2Nlc3MvZ2luL2dpbnZhY3V1bS5jCkBAIC0y MDAsNiArMjAwLDggQEAgZ2luRGVsZXRlUGFnZShHaW5WYWN1dW1TdGF0ZSAqZ3ZzLCBCbG9j a051bWJlciBkZWxldGVCbGtubywgQmxvY2tOdW1iZXIgbGVmdEJsa24KIAkJWExvZ1JlY1B0 cglyZWNwdHI7CiAJCWdpbnhsb2dEZWxldGVQYWdlIGRhdGE7CiAKKwkJbWVtc2V0KCZkYXRh LCAwLCBzaXplb2YoZGF0YSkpOworCiAJCS8qCiAJCSAqIFdlIGNhbid0IHBhc3MgUkVHQlVG X1NUQU5EQVJEIGZvciB0aGUgZGVsZXRlZCBwYWdlLCBiZWNhdXNlIHdlCiAJCSAqIGRpZG4n dCBzZXQgcGRfbG93ZXIgb24gcHJlLTkuNCB2ZXJzaW9ucy4gVGhlIHBhZ2UgbWlnaHQndmUg YmVlbgpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvYWNjZXNzL2dpc3QvZ2lzdHhsb2cuYyBi L3NyYy9iYWNrZW5kL2FjY2Vzcy9naXN0L2dpc3R4bG9nLmMKaW5kZXggYzc4MzgzODQ5NWYu Ljg2Mjk1MTRlMjY1IDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9hY2Nlc3MvZ2lzdC9naXN0 eGxvZy5jCisrKyBiL3NyYy9iYWNrZW5kL2FjY2Vzcy9naXN0L2dpc3R4bG9nLmMKQEAgLTUw MSw2ICs1MDEsOCBAQCBnaXN0WExvZ1NwbGl0KGJvb2wgcGFnZV9pc19sZWFmLAogCVhMb2dS ZWNQdHIJcmVjcHRyOwogCWludAkJCWk7CiAKKwltZW1zZXQoJnhscmVjLCAwLCBzaXplb2Yo eGxyZWMpKTsKKwogCWZvciAocHRyID0gZGlzdDsgcHRyOyBwdHIgPSBwdHItPm5leHQpCiAJ CW5wYWdlKys7CiAKQEAgLTU1Myw2ICs1NTUsOCBAQCBnaXN0WExvZ1BhZ2VEZWxldGUoQnVm ZmVyIGJ1ZmZlciwgRnVsbFRyYW5zYWN0aW9uSWQgeGlkLAogCWdpc3R4bG9nUGFnZURlbGV0 ZSB4bHJlYzsKIAlYTG9nUmVjUHRyCXJlY3B0cjsKIAorCW1lbXNldCgmeGxyZWMsIDAsIHNp emVvZih4bHJlYykpOworCiAJeGxyZWMuZGVsZXRlWGlkID0geGlkOwogCXhscmVjLmRvd25s aW5rT2Zmc2V0ID0gZG93bmxpbmtPZmZzZXQ7CiAKQEAgLTYzMyw2ICs2MzcsOCBAQCBnaXN0 WExvZ1VwZGF0ZShCdWZmZXIgYnVmZmVyLAogCWludAkJCWk7CiAJWExvZ1JlY1B0cglyZWNw dHI7CiAKKwltZW1zZXQoJnhscmVjLCAwLCBzaXplb2YoeGxyZWMpKTsKKwogCXhscmVjLm50 b2RlbGV0ZSA9IG50b2RlbGV0ZTsKIAl4bHJlYy5udG9pbnNlcnQgPSBpdHVwbGVuOwogCkBA IC02NzEsNiArNjc3LDggQEAgZ2lzdFhMb2dEZWxldGUoQnVmZmVyIGJ1ZmZlciwgT2Zmc2V0 TnVtYmVyICp0b2RlbGV0ZSwgaW50IG50b2RlbGV0ZSwKIAlnaXN0eGxvZ0RlbGV0ZSB4bHJl YzsKIAlYTG9nUmVjUHRyCXJlY3B0cjsKIAorCW1lbXNldCgmeGxyZWMsIDAsIHNpemVvZih4 bHJlYykpOworCiAJeGxyZWMuaXNDYXRhbG9nUmVsID0gUmVsYXRpb25Jc0FjY2Vzc2libGVJ bkxvZ2ljYWxEZWNvZGluZyhoZWFwcmVsKTsKIAl4bHJlYy5zbmFwc2hvdENvbmZsaWN0SG9y aXpvbiA9IHNuYXBzaG90Q29uZmxpY3RIb3Jpem9uOwogCXhscmVjLm50b2RlbGV0ZSA9IG50 b2RlbGV0ZTsKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2FjY2Vzcy9oZWFwL2hlYXBhbS5j IGIvc3JjL2JhY2tlbmQvYWNjZXNzL2hlYXAvaGVhcGFtLmMKaW5kZXggOGYxYzExYTkzNTAu LmIxMWRiYTgxYWVmIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9hY2Nlc3MvaGVhcC9oZWFw YW0uYworKysgYi9zcmMvYmFja2VuZC9hY2Nlc3MvaGVhcC9oZWFwYW0uYwpAQCAtMjQyOCw2 ICsyNDI4LDggQEAgaGVhcF9tdWx0aV9pbnNlcnQoUmVsYXRpb24gcmVsYXRpb24sIFR1cGxl VGFibGVTbG90ICoqc2xvdHMsIGludCBudHVwbGVzLAogCWludAkJCW5wYWdlcyA9IDA7CiAJ aW50CQkJbnBhZ2VzX3VzZWQgPSAwOwogCisJbWVtc2V0KCZzY3JhdGNoLCAwLCBzaXplb2Yo c2NyYXRjaCkpOworCiAJLyogY3VycmVudGx5IG5vdCBuZWVkZWQgKHRodXMgdW5zdXBwb3J0 ZWQpIGZvciBoZWFwX211bHRpX2luc2VydCgpICovCiAJQXNzZXJ0KCEob3B0aW9ucyAmIEhF QVBfSU5TRVJUX05PX0xPR0lDQUwpKTsKIApAQCAtNjY1NCw2ICs2NjU2LDcgQEAgaGVhcF9p bnBsYWNlX3VwZGF0ZV9hbmRfdW5sb2NrKFJlbGF0aW9uIHJlbGF0aW9uLAogCQlCbG9ja051 bWJlciBibGtubzsKIAkJWExvZ1JlY1B0cglyZWNwdHI7CiAKKwkJbWVtc2V0KCZ4bHJlYywg MCwgc2l6ZW9mKHhscmVjKSk7CiAJCXhscmVjLm9mZm51bSA9IEl0ZW1Qb2ludGVyR2V0T2Zm c2V0TnVtYmVyKCZ0dXBsZS0+dF9zZWxmKTsKIAkJeGxyZWMuZGJJZCA9IE15RGF0YWJhc2VJ ZDsKIAkJeGxyZWMudHNJZCA9IE15RGF0YWJhc2VUYWJsZVNwYWNlOwpkaWZmIC0tZ2l0IGEv c3JjL2JhY2tlbmQvYWNjZXNzL2hlYXAvcHJ1bmVoZWFwLmMgYi9zcmMvYmFja2VuZC9hY2Nl c3MvaGVhcC9wcnVuZWhlYXAuYwppbmRleCA2YmVlYjY5NTZlMy4uNTRiNGE1YWIwYzggMTAw NjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2FjY2Vzcy9oZWFwL3BydW5laGVhcC5jCisrKyBiL3Ny Yy9iYWNrZW5kL2FjY2Vzcy9oZWFwL3BydW5laGVhcC5jCkBAIC0yMDU4LDYgKzIwNTgsNyBA QCBoZWFwX2xvZ19mcmVlemVfY21wKGNvbnN0IHZvaWQgKmFyZzEsIGNvbnN0IHZvaWQgKmFy ZzIpCiBzdGF0aWMgaW5saW5lIHZvaWQKIGhlYXBfbG9nX2ZyZWV6ZV9uZXdfcGxhbih4bGhw X2ZyZWV6ZV9wbGFuICpwbGFuLCBIZWFwVHVwbGVGcmVlemUgKmZyeikKIHsKKwltZW1zZXQo cGxhbiwgMCwgc2l6ZW9mKCpwbGFuKSk7CiAJcGxhbi0+eG1heCA9IGZyei0+eG1heDsKIAlw bGFuLT50X2luZm9tYXNrMiA9IGZyei0+dF9pbmZvbWFzazI7CiAJcGxhbi0+dF9pbmZvbWFz ayA9IGZyei0+dF9pbmZvbWFzazsKQEAgLTIxODIsNyArMjE4Myw5IEBAIGxvZ19oZWFwX3By dW5lX2FuZF9mcmVlemUoUmVsYXRpb24gcmVsYXRpb24sIEJ1ZmZlciBidWZmZXIsCiAKIAlB c3NlcnQoKHZtZmxhZ3MgJiBWSVNJQklMSVRZTUFQX1ZBTElEX0JJVFMpID09IHZtZmxhZ3Mp OwogCi0JeGxyZWMuZmxhZ3MgPSAwOworCW1lbXNldCgmeGxyZWMsIDAsIHNpemVvZih4bHJl YykpOworCW1lbXNldCgmZnJlZXplX3BsYW5zLCAwLCBzaXplb2YoZnJlZXplX3BsYW5zKSk7 CisKIAlyZWdidWZfZmxhZ3NfaGVhcCA9IFJFR0JVRl9TVEFOREFSRDsKIAogCS8qCmRpZmYg LS1naXQgYS9zcmMvYmFja2VuZC9hY2Nlc3MvbmJ0cmVlL25idGluc2VydC5jIGIvc3JjL2Jh Y2tlbmQvYWNjZXNzL25idHJlZS9uYnRpbnNlcnQuYwppbmRleCA3OTZlMTUxM2RkZi4uYTRh NmQ0ZTg5OTUgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2FjY2Vzcy9uYnRyZWUvbmJ0aW5z ZXJ0LmMKKysrIGIvc3JjL2JhY2tlbmQvYWNjZXNzL25idHJlZS9uYnRpbnNlcnQuYwpAQCAt MTMzNiw2ICsxMzM2LDggQEAgX2J0X2luc2VydG9ucGcoUmVsYXRpb24gcmVsLAogCQkJWExv Z1JlY1B0cglyZWNwdHI7CiAJCQl1aW50MTYJCXVwb3N0aW5nb2ZmOwogCisJCQltZW1zZXQo JnhscmVjLCAwLCBzaXplb2YoeGxyZWMpKTsKKwkJCW1lbXNldCgmeGxtZXRhLCAwLCBzaXpl b2YoeGxtZXRhKSk7CiAJCQl4bHJlYy5vZmZudW0gPSBuZXdpdGVtb2ZmOwogCiAJCQlYTG9n QmVnaW5JbnNlcnQoKTsKQEAgLTE5OTYsNiArMTk5OCw3IEBAIF9idF9zcGxpdChSZWxhdGlv biByZWwsIFJlbGF0aW9uIGhlYXByZWwsIEJUU2Nhbkluc2VydCBpdHVwX2tleSwgQnVmZmVy IGJ1ZiwKIAkJdWludDgJCXhsaW5mbzsKIAkJWExvZ1JlY1B0cglyZWNwdHI7CiAKKwkJbWVt c2V0KCZ4bHJlYywgMCwgc2l6ZW9mKHhscmVjKSk7CiAJCXhscmVjLmxldmVsID0gcm9wYXF1 ZS0+YnRwb19sZXZlbDsKIAkJLyogU2VlIGNvbW1lbnRzIGJlbG93IG9uIG5ld2l0ZW0sIG9y aWduZXdpdGVtLCBhbmQgcG9zdGluZyBsaXN0cyAqLwogCQl4bHJlYy5maXJzdHJpZ2h0b2Zm ID0gZmlyc3RyaWdodG9mZjsKQEAgLTI1ODUsNiArMjU4OCw4IEBAIF9idF9uZXdsZXZlbChS ZWxhdGlvbiByZWwsIFJlbGF0aW9uIGhlYXByZWwsIEJ1ZmZlciBsYnVmLCBCdWZmZXIgcmJ1 ZikKIAkJWExvZ1JlY1B0cglyZWNwdHI7CiAJCXhsX2J0cmVlX21ldGFkYXRhIG1kOwogCisJ CW1lbXNldCgmeGxyZWMsIDAsIHNpemVvZih4bHJlYykpOworCQltZW1zZXQoJm1kLCAwLCBz aXplb2YobWQpKTsKIAkJeGxyZWMucm9vdGJsayA9IHJvb3RibGtudW07CiAJCXhscmVjLmxl dmVsID0gbWV0YWQtPmJ0bV9sZXZlbDsKIApkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvYWNj ZXNzL25idHJlZS9uYnRwYWdlLmMgYi9zcmMvYmFja2VuZC9hY2Nlc3MvbmJ0cmVlL25idHBh Z2UuYwppbmRleCA0MTI1YzE4NWU4Yi4uMTc2MDkwZTY1NTggMTAwNjQ0Ci0tLSBhL3NyYy9i YWNrZW5kL2FjY2Vzcy9uYnRyZWUvbmJ0cGFnZS5jCisrKyBiL3NyYy9iYWNrZW5kL2FjY2Vz cy9uYnRyZWUvbmJ0cGFnZS5jCkBAIC0yODgsNiArMjg4LDcgQEAgX2J0X3NldF9jbGVhbnVw X2luZm8oUmVsYXRpb24gcmVsLCBCbG9ja051bWJlciBudW1fZGVscGFnZXMpCiAJCXhsX2J0 cmVlX21ldGFkYXRhIG1kOwogCQlYTG9nUmVjUHRyCXJlY3B0cjsKIAorCQltZW1zZXQoJm1k LCAwLCBzaXplb2YobWQpKTsKIAkJWExvZ0JlZ2luSW5zZXJ0KCk7CiAJCVhMb2dSZWdpc3Rl ckJ1ZmZlcigwLCBtZXRhYnVmLCBSRUdCVUZfV0lMTF9JTklUIHwgUkVHQlVGX1NUQU5EQVJE KTsKIApAQCAtNDc2LDYgKzQ3Nyw4IEBAIF9idF9nZXRyb290KFJlbGF0aW9uIHJlbCwgUmVs YXRpb24gaGVhcHJlbCwgaW50IGFjY2VzcykKIAkJCVhMb2dSZWNQdHIJcmVjcHRyOwogCQkJ eGxfYnRyZWVfbWV0YWRhdGEgbWQ7CiAKKwkJCW1lbXNldCgmeGxyZWMsIDAsIHNpemVvZih4 bHJlYykpOworCQkJbWVtc2V0KCZtZCwgMCwgc2l6ZW9mKG1kKSk7CiAJCQlYTG9nQmVnaW5J bnNlcnQoKTsKIAkJCVhMb2dSZWdpc3RlckJ1ZmZlcigwLCByb290YnVmLCBSRUdCVUZfV0lM TF9JTklUKTsKIAkJCVhMb2dSZWdpc3RlckJ1ZmZlcigyLCBtZXRhYnVmLCBSRUdCVUZfV0lM TF9JTklUIHwgUkVHQlVGX1NUQU5EQVJEKTsKQEAgLTIyNTUsNiArMjI1OCw3IEBAIF9idF9t YXJrX3BhZ2VfaGFsZmRlYWQoUmVsYXRpb24gcmVsLCBSZWxhdGlvbiBoZWFwcmVsLCBCdWZm ZXIgbGVhZmJ1ZiwKIAkJeGxfYnRyZWVfbWFya19wYWdlX2hhbGZkZWFkIHhscmVjOwogCQlY TG9nUmVjUHRyCXJlY3B0cjsKIAorCQltZW1zZXQoJnhscmVjLCAwLCBzaXplb2YoeGxyZWMp KTsKIAkJeGxyZWMucG9mZnNldCA9IHBvZmZzZXQ7CiAJCXhscmVjLmxlYWZibGsgPSBsZWFm Ymxrbm87CiAJCWlmICh0b3BwYXJlbnQgIT0gbGVhZmJsa25vKQpAQCAtMjY3OCw2ICsyNjgy LDggQEAgX2J0X3VubGlua19oYWxmZGVhZF9wYWdlKFJlbGF0aW9uIHJlbCwgQnVmZmVyIGxl YWZidWYsIEJsb2NrTnVtYmVyIHNjYW5ibGtubywKIAkJdWludDgJCXhsaW5mbzsKIAkJWExv Z1JlY1B0cglyZWNwdHI7CiAKKwkJbWVtc2V0KCZ4bHJlYywgMCwgc2l6ZW9mKHhscmVjKSk7 CisJCW1lbXNldCgmeGxtZXRhLCAwLCBzaXplb2YoeGxtZXRhKSk7CiAJCVhMb2dCZWdpbklu c2VydCgpOwogCiAJCVhMb2dSZWdpc3RlckJ1ZmZlcigwLCBidWYsIFJFR0JVRl9XSUxMX0lO SVQpOwpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvYWNjZXNzL3NwZ2lzdC9zcGdkb2luc2Vy dC5jIGIvc3JjL2JhY2tlbmQvYWNjZXNzL3NwZ2lzdC9zcGdkb2luc2VydC5jCmluZGV4IDdj NzM3MWM2OWU4Li5lOTZiMjBjMzBiZCAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvYWNjZXNz L3NwZ2lzdC9zcGdkb2luc2VydC5jCisrKyBiL3NyYy9iYWNrZW5kL2FjY2Vzcy9zcGdpc3Qv c3BnZG9pbnNlcnQuYwpAQCAtMjA0LDYgKzIwNCw4IEBAIGFkZExlYWZUdXBsZShSZWxhdGlv biBpbmRleCwgU3BHaXN0U3RhdGUgKnN0YXRlLCBTcEdpc3RMZWFmVHVwbGUgbGVhZlR1cGxl LAogewogCXNwZ3hsb2dBZGRMZWFmIHhscmVjOwogCisJbWVtc2V0KCZ4bHJlYywgMCwgc2l6 ZW9mKHhscmVjKSk7CisKIAl4bHJlYy5uZXdQYWdlID0gaXNOZXc7CiAJeGxyZWMuc3RvcmVz TnVsbHMgPSBpc051bGxzOwogCkBAIC00MDMsNiArNDA1LDggQEAgbW92ZUxlYWZzKFJlbGF0 aW9uIGluZGV4LCBTcEdpc3RTdGF0ZSAqc3RhdGUsCiAJY2hhcgkgICAqbGVhZmRhdGEsCiAJ CQkgICAqbGVhZnB0cjsKIAorCW1lbXNldCgmeGxyZWMsIDAsIHNpemVvZih4bHJlYykpOwor CiAJLyogVGhpcyBkb2Vzbid0IHdvcmsgb24gcm9vdCBwYWdlICovCiAJQXNzZXJ0KHBhcmVu dC0+YnVmZmVyICE9IEludmFsaWRCdWZmZXIpOwogCUFzc2VydChwYXJlbnQtPmJ1ZmZlciAh PSBjdXJyZW50LT5idWZmZXIpOwpAQCAtNzEwLDYgKzcxNCw4IEBAIGRvUGlja1NwbGl0KFJl bGF0aW9uIGluZGV4LCBTcEdpc3RTdGF0ZSAqc3RhdGUsCiAJCQkJblRvSW5zZXJ0LAogCQkJ CW1heFRvSW5jbHVkZTsKIAorCW1lbXNldCgmeGxyZWMsIDAsIHNpemVvZih4bHJlYykpOwor CiAJaW4ubGV2ZWwgPSBsZXZlbDsKIAogCS8qCkBAIC0xNTE0LDYgKzE1MjAsOCBAQCBzcGdB ZGROb2RlQWN0aW9uKFJlbGF0aW9uIGluZGV4LCBTcEdpc3RTdGF0ZSAqc3RhdGUsCiAJU3BH aXN0SW5uZXJUdXBsZSBuZXdJbm5lclR1cGxlOwogCXNwZ3hsb2dBZGROb2RlIHhscmVjOwog CisJbWVtc2V0KCZ4bHJlYywgMCwgc2l6ZW9mKHhscmVjKSk7CisKIAkvKiBTaG91bGQgbm90 IGJlIGFwcGxpZWQgdG8gbnVsbHMgKi8KIAlBc3NlcnQoIVNwR2lzdFBhZ2VTdG9yZXNOdWxs cyhjdXJyZW50LT5wYWdlKSk7CiAKQEAgLTE3MjIsNiArMTczMCw4IEBAIHNwZ1NwbGl0Tm9k ZUFjdGlvbihSZWxhdGlvbiBpbmRleCwgU3BHaXN0U3RhdGUgKnN0YXRlLAogCXNwZ3hsb2dT cGxpdFR1cGxlIHhscmVjOwogCUJ1ZmZlcgkJbmV3QnVmZmVyID0gSW52YWxpZEJ1ZmZlcjsK IAorCW1lbXNldCgmeGxyZWMsIDAsIHNpemVvZih4bHJlYykpOworCiAJLyogU2hvdWxkIG5v dCBiZSBhcHBsaWVkIHRvIG51bGxzICovCiAJQXNzZXJ0KCFTcEdpc3RQYWdlU3RvcmVzTnVs bHMoY3VycmVudC0+cGFnZSkpOwogCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9hY2Nlc3Mv c3BnaXN0L3NwZ3ZhY3V1bS5jIGIvc3JjL2JhY2tlbmQvYWNjZXNzL3NwZ2lzdC9zcGd2YWN1 dW0uYwppbmRleCA2YjcxMTdiNTZiMi4uOWU2YWNiODczZWYgMTAwNjQ0Ci0tLSBhL3NyYy9i YWNrZW5kL2FjY2Vzcy9zcGdpc3Qvc3BndmFjdXVtLmMKKysrIGIvc3JjL2JhY2tlbmQvYWNj ZXNzL3NwZ2lzdC9zcGd2YWN1dW0uYwpAQCAtMTQwLDYgKzE0MCw3IEBAIHZhY3V1bUxlYWZQ YWdlKHNwZ0J1bGtEZWxldGVTdGF0ZSAqYmRzLCBSZWxhdGlvbiBpbmRleCwgQnVmZmVyIGJ1 ZmZlciwKIAlPZmZzZXROdW1iZXIgaSwKIAkJCQltYXggPSBQYWdlR2V0TWF4T2Zmc2V0TnVt YmVyKHBhZ2UpOwogCisJbWVtc2V0KCZ4bHJlYywgMCwgc2l6ZW9mKHhscmVjKSk7CiAJbWVt c2V0KHByZWRlY2Vzc29yLCAwLCBzaXplb2YocHJlZGVjZXNzb3IpKTsKIAltZW1zZXQoZGVs ZXRhYmxlLCAwLCBzaXplb2YoZGVsZXRhYmxlKSk7CiAJbkRlbGV0YWJsZSA9IDA7CkBAIC00 MTQsNiArNDE1LDggQEAgdmFjdXVtTGVhZlJvb3Qoc3BnQnVsa0RlbGV0ZVN0YXRlICpiZHMs IFJlbGF0aW9uIGluZGV4LCBCdWZmZXIgYnVmZmVyKQogCU9mZnNldE51bWJlciBpLAogCQkJ CW1heCA9IFBhZ2VHZXRNYXhPZmZzZXROdW1iZXIocGFnZSk7CiAKKwltZW1zZXQoJnhscmVj LCAwLCBzaXplb2YoeGxyZWMpKTsKKwogCXhscmVjLm5EZWxldGUgPSAwOwogCiAJLyogU2Nh biBwYWdlLCBpZGVudGlmeSB0dXBsZXMgdG8gZGVsZXRlLCBhY2N1bXVsYXRlIHN0YXRzICov CkBAIC01MDUsNiArNTA4LDggQEAgdmFjdXVtUmVkaXJlY3RBbmRQbGFjZWhvbGRlcihSZWxh dGlvbiBpbmRleCwgUmVsYXRpb24gaGVhcHJlbCwgQnVmZmVyIGJ1ZmZlcikKIAlzcGd4bG9n VmFjdXVtUmVkaXJlY3QgeGxyZWM7CiAJR2xvYmFsVmlzU3RhdGUgKnZpc3Rlc3Q7CiAKKwlt ZW1zZXQoJnhscmVjLCAwLCBzaXplb2YoeGxyZWMpKTsKKwogCXhscmVjLmlzQ2F0YWxvZ1Jl bCA9IFJlbGF0aW9uSXNBY2Nlc3NpYmxlSW5Mb2dpY2FsRGVjb2RpbmcoaGVhcHJlbCk7CiAJ eGxyZWMublRvUGxhY2Vob2xkZXIgPSAwOwogCXhscmVjLnNuYXBzaG90Q29uZmxpY3RIb3Jp em9uID0gSW52YWxpZFRyYW5zYWN0aW9uSWQ7CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9z dG9yYWdlL2lwYy9zdGFuZGJ5LmMgYi9zcmMvYmFja2VuZC9zdG9yYWdlL2lwYy9zdGFuZGJ5 LmMKaW5kZXggZjNhZDkwYzdjN2EuLjRhZTViZTI3OTJiIDEwMDY0NAotLS0gYS9zcmMvYmFj a2VuZC9zdG9yYWdlL2lwYy9zdGFuZGJ5LmMKKysrIGIvc3JjL2JhY2tlbmQvc3RvcmFnZS9p cGMvc3RhbmRieS5jCkBAIC0xMzU3LDYgKzEzNTcsOCBAQCBMb2dDdXJyZW50UnVubmluZ1hh Y3RzKFJ1bm5pbmdUcmFuc2FjdGlvbnMgQ3VyclJ1bm5pbmdYYWN0cykKIAl4bF9ydW5uaW5n X3hhY3RzIHhscmVjOwogCVhMb2dSZWNQdHIJcmVjcHRyOwogCisJbWVtc2V0KCZ4bHJlYywg MCwgc2l6ZW9mKHhscmVjKSk7CisKIAl4bHJlYy54Y250ID0gQ3VyclJ1bm5pbmdYYWN0cy0+ eGNudDsKIAl4bHJlYy5zdWJ4Y250ID0gQ3VyclJ1bm5pbmdYYWN0cy0+c3VieGNudDsKIAl4 bHJlYy5zdWJ4aWRfb3ZlcmZsb3cgPSAoQ3VyclJ1bm5pbmdYYWN0cy0+c3VieGlkX3N0YXR1 cyAhPSBTVUJYSURTX0lOX0FSUkFZKTsKZGlmZiAtLWdpdCBhL3NyYy90b29scy92YWxncmlu ZC5zdXBwIGIvc3JjL3Rvb2xzL3ZhbGdyaW5kLnN1cHAKaW5kZXggZDU2Nzk0YjRmN2UuLmYy YWIwYzhhMDUyIDEwMDY0NAotLS0gYS9zcmMvdG9vbHMvdmFsZ3JpbmQuc3VwcAorKysgYi9z cmMvdG9vbHMvdmFsZ3JpbmQuc3VwcApAQCAtMjMsMjMgKzIzLDYgQEAKIAlmdW46cGdzdGF0 X3dyaXRlX3N0YXRzZmlsZXMKIH0KIAotewotCXBhZGRpbmdfWExvZ1JlY0RhdGFfQ1JDCi0J TWVtY2hlY2s6VmFsdWU4Ci0KLQlmdW46cGdfY29tcF9jcmMzMmMqCi0JZnVuOlhMb2dSZWNv cmRBc3NlbWJsZQotfQotCi17Ci0JcGFkZGluZ19YTG9nUmVjRGF0YV93cml0ZQotCU1lbWNo ZWNrOlBhcmFtCi0JcHdyaXRlNjQoYnVmKQotCi0JLi4uCi0JZnVuOlhMb2dXcml0ZQotfQot CiB7CiAJcGFkZGluZ19yZWxjYWNoZQogCU1lbWNoZWNrOlBhcmFtCi0tIAoyLjQ3LjMKCg== --------------qsOf3v7iRBa3XlIAikw35kzi Content-Type: text/x-patch; charset=UTF-8; name="0002-Avoid-padding-in-xl_multixact_create-WAL-record.patch" Content-Disposition: attachment; filename*0="0002-Avoid-padding-in-xl_multixact_create-WAL-record.patch" Content-Transfer-Encoding: base64 RnJvbSA3NGQwMDg0ZmFlZjNiYzZkNzQ4YmQxZTI2ZTM5YzI2ODNkMjdkZTFhIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBIZWlra2kgTGlubmFrYW5nYXMgPGhlaWtraS5saW5u YWthbmdhc0Bpa2kuZmk+CkRhdGU6IFRodSwgMTIgTWFyIDIwMjYgMTQ6MzA6MTMgKzAyMDAK U3ViamVjdDogW1BBVENIIDIvNF0gQXZvaWQgcGFkZGluZyBpbiB4bF9tdWx0aXhhY3RfY3Jl YXRlIFdBTCByZWNvcmQKCldoZW4gTXVsdGlYYWN0T2Zmc2V0IHdhcyB3aWRlbmVkIHRvIDY0 IGJpdHMgaW4gY29tbWl0IGJkOGQ5YzliZGYsIHRoZQpzdHJ1Y3Qgc3RhcnRlZCB0byBuZWVk IGFsaWdubWVudCBwYWRkaW5nIGZvciB0aGUgJ21vZmYnIGZpZWxkLiBSZW9yZGVyCnRoZSBm aWVsZHMgdG8gYXZvaWQgaXQuCgpEaXNjdXNzaW9uOiBodHRwczovL3d3dy5wb3N0Z3Jlc3Fs Lm9yZy9tZXNzYWdlLWlkL0NBTHpoeXF6S1RSVnNRR2orcUREUlZzM09vMEV2ZmZ1UXZWTzB2 NHJicFdVPVNvWEt1Z0BtYWlsLmdtYWlsLmNvbQotLS0KIHNyYy9pbmNsdWRlL2FjY2Vzcy9t dWx0aXhhY3QuaCAgICAgfCAyICstCiBzcmMvaW5jbHVkZS9hY2Nlc3MveGxvZ19pbnRlcm5h bC5oIHwgMiArLQogMiBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvYWNjZXNzL211bHRpeGFjdC5oIGIv c3JjL2luY2x1ZGUvYWNjZXNzL211bHRpeGFjdC5oCmluZGV4IDJhZThiNTcxZGNjLi43NTdj NjMxZTcyNSAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvYWNjZXNzL211bHRpeGFjdC5oCisr KyBiL3NyYy9pbmNsdWRlL2FjY2Vzcy9tdWx0aXhhY3QuaApAQCAtNzIsOCArNzIsOCBAQCB0 eXBlZGVmIHN0cnVjdCBNdWx0aVhhY3RNZW1iZXIKIHR5cGVkZWYgc3RydWN0IHhsX211bHRp eGFjdF9jcmVhdGUKIHsKIAlNdWx0aVhhY3RJZCBtaWQ7CQkJLyogbmV3IE11bHRpWGFjdCdz IElEICovCi0JTXVsdGlYYWN0T2Zmc2V0IG1vZmY7CQkvKiBpdHMgc3RhcnRpbmcgb2Zmc2V0 IGluIG1lbWJlcnMgZmlsZSAqLwogCWludDMyCQlubWVtYmVyczsJCS8qIG51bWJlciBvZiBt ZW1iZXIgWElEcyAqLworCU11bHRpWGFjdE9mZnNldCBtb2ZmOwkJLyogaXRzIHN0YXJ0aW5n IG9mZnNldCBpbiBtZW1iZXJzIGZpbGUgKi8KIAlNdWx0aVhhY3RNZW1iZXIgbWVtYmVyc1tG TEVYSUJMRV9BUlJBWV9NRU1CRVJdOwogfSB4bF9tdWx0aXhhY3RfY3JlYXRlOwogCmRpZmYg LS1naXQgYS9zcmMvaW5jbHVkZS9hY2Nlc3MveGxvZ19pbnRlcm5hbC5oIGIvc3JjL2luY2x1 ZGUvYWNjZXNzL3hsb2dfaW50ZXJuYWwuaAppbmRleCA1OGFlMTJiYjIwZi4uNjI5YWMzYTdk M2UgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL2FjY2Vzcy94bG9nX2ludGVybmFsLmgKKysr IGIvc3JjL2luY2x1ZGUvYWNjZXNzL3hsb2dfaW50ZXJuYWwuaApAQCAtMzEsNyArMzEsNyBA QAogLyoKICAqIEVhY2ggcGFnZSBvZiBYTE9HIGZpbGUgaGFzIGEgaGVhZGVyIGxpa2UgdGhp czoKICAqLwotI2RlZmluZSBYTE9HX1BBR0VfTUFHSUMgMHhEMTFDCS8qIGNhbiBiZSB1c2Vk IGFzIFdBTCB2ZXJzaW9uIGluZGljYXRvciAqLworI2RlZmluZSBYTE9HX1BBR0VfTUFHSUMg MHhEMTFECS8qIGNhbiBiZSB1c2VkIGFzIFdBTCB2ZXJzaW9uIGluZGljYXRvciAqLwogCiB0 eXBlZGVmIHN0cnVjdCBYTG9nUGFnZUhlYWRlckRhdGEKIHsKLS0gCjIuNDcuMwoK --------------qsOf3v7iRBa3XlIAikw35kzi Content-Type: text/x-patch; charset=UTF-8; name="0003-XXX-a-few-more-places-that-maybe-need-clearing.patch" Content-Disposition: attachment; filename*0="0003-XXX-a-few-more-places-that-maybe-need-clearing.patch" Content-Transfer-Encoding: base64 RnJvbSBhNjBlM2NiNDkxMTkxMWZmZjk2OGVhZGI0ZTBmMzE4YzJlZGQxZGJiIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBIZWlra2kgTGlubmFrYW5nYXMgPGhlaWtraS5saW5u YWthbmdhc0Bpa2kuZmk+CkRhdGU6IFRodSwgMTIgTWFyIDIwMjYgMTQ6NDA6MjUgKzAyMDAK U3ViamVjdDogW1BBVENIIDMvNF0gWFhYOiBhIGZldyBtb3JlIHBsYWNlcyB0aGF0IG1heWJl IG5lZWQgY2xlYXJpbmc/CgpJIHNwb3R0ZWQgdGhlc2UgYnkgZG9pbmcgJ3BhaG9sZSBiaW4v cG9zdGdyZXMnLCBhbmQgc2VhcmNoaW5nIGZvcgoieGxfKiIgc3RydWN0cyB0aGF0IGhhdmUg cGFkZGluZyBpbiB0aGVtLiBUaGVuIEkgc2VhcmNoZWQgd2hlcmUKdGhleSdyZSBpbml0aWFs aXplZC4KLS0tCiBzcmMvYmFja2VuZC9hY2Nlc3MvaGFzaC9oYXNoaW5zZXJ0LmMgICAgICB8 IDIgKysKIHNyYy9iYWNrZW5kL2FjY2Vzcy9oZWFwL2hlYXBhbS5jICAgICAgICAgIHwgNiAr KysrKysKIHNyYy9iYWNrZW5kL2FjY2Vzcy9oZWFwL3Jld3JpdGVoZWFwLmMgICAgIHwgMiAr Kwogc3JjL2JhY2tlbmQvYWNjZXNzL3RyYW5zYW0vdHdvcGhhc2UuYyAgICAgfCAyICsrCiBz cmMvYmFja2VuZC9jb21tYW5kcy90YWJsZWNtZHMuYyAgICAgICAgICB8IDIgKysKIHNyYy9i YWNrZW5kL3JlcGxpY2F0aW9uL2xvZ2ljYWwvbWVzc2FnZS5jIHwgMiArKwogNiBmaWxlcyBj aGFuZ2VkLCAxNiBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvYWNj ZXNzL2hhc2gvaGFzaGluc2VydC5jIGIvc3JjL2JhY2tlbmQvYWNjZXNzL2hhc2gvaGFzaGlu c2VydC5jCmluZGV4IDBjZWZiYWNjOTZlLi40NWU2MTNjZWRkYiAxMDA2NDQKLS0tIGEvc3Jj L2JhY2tlbmQvYWNjZXNzL2hhc2gvaGFzaGluc2VydC5jCisrKyBiL3NyYy9iYWNrZW5kL2Fj Y2Vzcy9oYXNoL2hhc2hpbnNlcnQuYwpAQCAtNDI2LDYgKzQyNiw4IEBAIF9oYXNoX3ZhY3V1 bV9vbmVfcGFnZShSZWxhdGlvbiByZWwsIFJlbGF0aW9uIGhyZWwsIEJ1ZmZlciBtZXRhYnVm LCBCdWZmZXIgYnVmKQogCQkJeGxfaGFzaF92YWN1dW1fb25lX3BhZ2UgeGxyZWM7CiAJCQlY TG9nUmVjUHRyCXJlY3B0cjsKIAorCQkJLyogWFhYOiBjbGVhciBwYWRkaW5nPyAqLworCiAJ CQl4bHJlYy5pc0NhdGFsb2dSZWwgPSBSZWxhdGlvbklzQWNjZXNzaWJsZUluTG9naWNhbERl Y29kaW5nKGhyZWwpOwogCQkJeGxyZWMuc25hcHNob3RDb25mbGljdEhvcml6b24gPSBzbmFw c2hvdENvbmZsaWN0SG9yaXpvbjsKIAkJCXhscmVjLm50dXBsZXMgPSBuZGVsZXRhYmxlOwpk aWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvYWNjZXNzL2hlYXAvaGVhcGFtLmMgYi9zcmMvYmFj a2VuZC9hY2Nlc3MvaGVhcC9oZWFwYW0uYwppbmRleCBiMTFkYmE4MWFlZi4uNTQ5NDNiZTYx MjYgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2FjY2Vzcy9oZWFwL2hlYXBhbS5jCisrKyBi L3NyYy9iYWNrZW5kL2FjY2Vzcy9oZWFwL2hlYXBhbS5jCkBAIC0yNjE2LDYgKzI2MTYsMTIg QEAgaGVhcF9tdWx0aV9pbnNlcnQoUmVsYXRpb24gcmVsYXRpb24sIFR1cGxlVGFibGVTbG90 ICoqc2xvdHMsIGludCBudHVwbGVzLAogCQkJeGxyZWMgPSAoeGxfaGVhcF9tdWx0aV9pbnNl cnQgKikgc2NyYXRjaHB0cjsKIAkJCXNjcmF0Y2hwdHIgKz0gU2l6ZU9mSGVhcE11bHRpSW5z ZXJ0OwogCisJCQkvKgorCQkJICogWFhYOiBuZWVkIHRvIGNsZWFyIHBhZGRpbmcgaW4geGxf aGVhcF9tdWx0aV9pbnNlcnQ/IFRoZSBzY3JhdGNoCisJCQkgKiBhcmVhIHdhcyB6ZXJvZWQg YXQgdGhlIHRvcCBvZiB0aGUgZnVuY3Rpb24sIGJ1dCB3ZSdyZSByZXVzaW5nCisJCQkgKiBp dCBmb3IgbXVsdGlwbGUgcmVjb3Jkcy4KKwkJCSAqLworCiAJCQkvKgogCQkJICogQWxsb2Nh dGUgb2Zmc2V0cyBhcnJheS4gVW5sZXNzIHdlJ3JlIHJlaW5pdGlhbGl6aW5nIHRoZSBwYWdl LAogCQkJICogaW4gdGhhdCBjYXNlIHRoZSB0dXBsZXMgYXJlIHN0b3JlZCBpbiBvcmRlciBz dGFydGluZyBhdApkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvYWNjZXNzL2hlYXAvcmV3cml0 ZWhlYXAuYyBiL3NyYy9iYWNrZW5kL2FjY2Vzcy9oZWFwL3Jld3JpdGVoZWFwLmMKaW5kZXgg NmIxOWFjMzAzMGQuLmI2ZDc4NDU3MmVjIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9hY2Nl c3MvaGVhcC9yZXdyaXRlaGVhcC5jCisrKyBiL3NyYy9iYWNrZW5kL2FjY2Vzcy9oZWFwL3Jl d3JpdGVoZWFwLmMKQEAgLTg0Miw2ICs4NDIsOCBAQCBsb2dpY2FsX2hlYXBfcmV3cml0ZV9m bHVzaF9tYXBwaW5ncyhSZXdyaXRlU3RhdGUgc3RhdGUpCiAJCWVsc2UKIAkJCWRib2lkID0g TXlEYXRhYmFzZUlkOwogCisJCS8qIFhYWDogY2xlYXIgcGFkZGluZz8gKi8KKwogCQl4bHJl Yy5udW1fbWFwcGluZ3MgPSBudW1fbWFwcGluZ3M7CiAJCXhscmVjLm1hcHBlZF9yZWwgPSBS ZWxhdGlvbkdldFJlbGlkKHN0YXRlLT5yc19vbGRfcmVsKTsKIAkJeGxyZWMubWFwcGVkX3hp ZCA9IHNyYy0+eGlkOwpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvYWNjZXNzL3RyYW5zYW0v dHdvcGhhc2UuYyBiL3NyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL3R3b3BoYXNlLmMKaW5k ZXggNTViOWYzODkyN2QuLmMyMmFiOTM5NjVlIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9h Y2Nlc3MvdHJhbnNhbS90d29waGFzZS5jCisrKyBiL3NyYy9iYWNrZW5kL2FjY2Vzcy90cmFu c2FtL3R3b3BoYXNlLmMKQEAgLTEwNzYsNiArMTA3Niw4IEBAIFN0YXJ0UHJlcGFyZShHbG9i YWxUcmFuc2FjdGlvbiBneGFjdCkKIAogCXJlY29yZHMudG90YWxfbGVuID0gMDsKIAorCS8q IFhYWDogQ2xlYXIgcGFkZGluZz8gKi8KKwogCS8qIENyZWF0ZSBoZWFkZXIgKi8KIAloZHIu bWFnaWMgPSBUV09QSEFTRV9NQUdJQzsKIAloZHIudG90YWxfbGVuID0gMDsJCQkvKiBFbmRQ cmVwYXJlIHdpbGwgZmlsbCB0aGlzIGluICovCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9j b21tYW5kcy90YWJsZWNtZHMuYyBiL3NyYy9iYWNrZW5kL2NvbW1hbmRzL3RhYmxlY21kcy5j CmluZGV4IGE3YzMyNjc5YjIyLi4xYmY1OWY3N2FlMSAxMDA2NDQKLS0tIGEvc3JjL2JhY2tl bmQvY29tbWFuZHMvdGFibGVjbWRzLmMKKysrIGIvc3JjL2JhY2tlbmQvY29tbWFuZHMvdGFi bGVjbWRzLmMKQEAgLTIzMjUsNiArMjMyNSw4IEBAIEV4ZWN1dGVUcnVuY2F0ZUd1dHMoTGlz dCAqZXhwbGljaXRfcmVscywKIAkJZm9yZWFjaChjZWxsLCByZWxpZHNfbG9nZ2VkKQogCQkJ bG9ncmVsaWRzW2krK10gPSBsZmlyc3Rfb2lkKGNlbGwpOwogCisJCS8qIFhYWDogY2xlYXIg cGFkZGluZz8gKi8KKwogCQl4bHJlYy5kYklkID0gTXlEYXRhYmFzZUlkOwogCQl4bHJlYy5u cmVsaWRzID0gbGlzdF9sZW5ndGgocmVsaWRzX2xvZ2dlZCk7CiAJCXhscmVjLmZsYWdzID0g MDsKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9uL2xvZ2ljYWwvbWVzc2Fn ZS5jIGIvc3JjL2JhY2tlbmQvcmVwbGljYXRpb24vbG9naWNhbC9tZXNzYWdlLmMKaW5kZXgg MDY4MjVkNjZlN2YuLjQwZDAzMmE0ZmZjIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9yZXBs aWNhdGlvbi9sb2dpY2FsL21lc3NhZ2UuYworKysgYi9zcmMvYmFja2VuZC9yZXBsaWNhdGlv bi9sb2dpY2FsL21lc3NhZ2UuYwpAQCAtNTUsNiArNTUsOCBAQCBMb2dMb2dpY2FsTWVzc2Fn ZShjb25zdCBjaGFyICpwcmVmaXgsIGNvbnN0IGNoYXIgKm1lc3NhZ2UsIHNpemVfdCBzaXpl LAogCQlHZXRDdXJyZW50VHJhbnNhY3Rpb25JZCgpOwogCX0KIAorCS8qIFhYWDogY2xlYXIg cGFkZGluZz8gKi8KKwogCXhscmVjLmRiSWQgPSBNeURhdGFiYXNlSWQ7CiAJeGxyZWMudHJh bnNhY3Rpb25hbCA9IHRyYW5zYWN0aW9uYWw7CiAJLyogdHJhaWxpbmcgemVybyBpcyBjcml0 aWNhbDsgc2VlIGxvZ2ljYWxtc2dfZGVzYyAqLwotLSAKMi40Ny4zCgo= --------------qsOf3v7iRBa3XlIAikw35kzi Content-Type: text/x-patch; charset=UTF-8; name="0004-Add-an-explicit-valgrind-check-in-XLogInsert-for-uni.patch" Content-Disposition: attachment; filename*0="0004-Add-an-explicit-valgrind-check-in-XLogInsert-for-uni.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSBmMzZjMmUxYTA1MmFlMzBkNmZiZGM5NDZmOTkwYWIwNzkyMzRlMzMyIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBIZWlra2kgTGlubmFrYW5nYXMgPGhlaWtraS5saW5u YWthbmdhc0Bpa2kuZmk+CkRhdGU6IFRodSwgMTIgTWFyIDIwMjYgMTI6NTI6NDEgKzAyMDAK U3ViamVjdDogW1BBVENIIDQvNF0gQWRkIGFuIGV4cGxpY2l0IHZhbGdyaW5kIGNoZWNrIGlu IFhMb2dJbnNlcnQoKSBmb3IKIHVuaW5pdGlhbGl6ZWQgZGF0YQoKRXZlbiB3aXRob3V0IHRo aXMsIFZhbGdyaW5kIGNvbXBsYWlucyBpZiB1bmluaXRpYWxpemVkIG1lbW9yeSBjb3BpZWQK aW50byB0aGUgV0FMLCB3aGVuIHRoZSBXQUwgaXMgZmx1c2hlZCB0byBkaXNrLiBXaXRoIHRo aXMgY29tbWl0LCBpdCdzCmNhdWdodCBlYXJsaWVyLCBpbiBYTG9nSW5zZXJ0KCksIHdoaWNo IG1ha2VzIGl0IG1vcmUgY2xlYXIgd2hlcmUgdGhlCnVuaW5pdGlhbGl6ZWQgZGF0YSBpcyBj b21pbmcgZnJvbS4KLS0tCiBzcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS94bG9nLmMgfCAz ICsrKwogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL3Ny Yy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL3hsb2cuYyBiL3NyYy9iYWNrZW5kL2FjY2Vzcy90 cmFuc2FtL3hsb2cuYwppbmRleCBiOWI2NzhmMzcyMi4uOGVhZTI5YTM1NDggMTAwNjQ0Ci0t LSBhL3NyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL3hsb2cuYworKysgYi9zcmMvYmFja2Vu ZC9hY2Nlc3MvdHJhbnNhbS94bG9nLmMKQEAgLTk4LDYgKzk4LDcgQEAKICNpbmNsdWRlICJ1 dGlscy9ndWNfaG9va3MuaCIKICNpbmNsdWRlICJ1dGlscy9ndWNfdGFibGVzLmgiCiAjaW5j bHVkZSAidXRpbHMvaW5qZWN0aW9uX3BvaW50LmgiCisjaW5jbHVkZSAidXRpbHMvbWVtZGVi dWcuaCIKICNpbmNsdWRlICJ1dGlscy9wZ3N0YXRfaW50ZXJuYWwuaCIKICNpbmNsdWRlICJ1 dGlscy9wc19zdGF0dXMuaCIKICNpbmNsdWRlICJ1dGlscy9yZWxtYXBwZXIuaCIKQEAgLTEy NTksNiArMTI2MCw4IEBAIENvcHlYTG9nUmVjb3JkVG9XQUwoaW50IHdyaXRlX2xlbiwgYm9v bCBpc0xvZ1N3aXRjaCwgWExvZ1JlY0RhdGEgKnJkYXRhLAogCQljb25zdCBjaGFyICpyZGF0 YV9kYXRhID0gcmRhdGEtPmRhdGE7CiAJCWludAkJCXJkYXRhX2xlbiA9IHJkYXRhLT5sZW47 CiAKKwkJVkFMR1JJTkRfQ0hFQ0tfTUVNX0lTX0RFRklORUQocmRhdGFfZGF0YSwgcmRhdGFf bGVuKTsKKwogCQl3aGlsZSAocmRhdGFfbGVuID4gZnJlZXNwYWNlKQogCQl7CiAJCQkvKgot LSAKMi40Ny4zCgo= --------------qsOf3v7iRBa3XlIAikw35kzi--