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 1vvHFR-00BeQS-3B for pgsql-hackers@arkaria.postgresql.org; Wed, 25 Feb 2026 15:56:26 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vvHFQ-006vje-2t for pgsql-hackers@arkaria.postgresql.org; Wed, 25 Feb 2026 15:56:24 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vvHFQ-006vjT-0h for pgsql-hackers@lists.postgresql.org; Wed, 25 Feb 2026 15:56:24 +0000 Received: from mail-qt1-x836.google.com ([2607:f8b0:4864:20::836]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1vvHFN-000000018kB-0hxk for pgsql-hackers@lists.postgresql.org; Wed, 25 Feb 2026 15:56:23 +0000 Received: by mail-qt1-x836.google.com with SMTP id d75a77b69052e-506a65d8698so6450801cf.3 for ; Wed, 25 Feb 2026 07:56:22 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1772034981; cv=none; d=google.com; s=arc-20240605; b=dPLXRdl6nvpo1EUh5T7mU6IbTqxDugimAPBJ188CN1ob7WXBO/oCUCrdsGVeVSTvFD eDrOu5td9HfhwhnoxC3ItuZIZyFBJlw0fNZaOX1pH3bqgwRUJ/31GIH2nJDiaSb4whN/ oIyOm7vpvZoJzr9Bahu+5AD5bZoMfhwCutf6Wq+old1iHGm5WuVLlpcrEjkJmS4Vj5P8 yVARjK9q4qIK06qyzv6dKR/TQyTDEifYIgW/HSNGw3DLCtbiASfln+IC+kTKRcfbwrX+ ZCizuOj78c9O2Ljiwcb2Hnp7GV3H7DHxGmNedoABfN3vR5Lp4nFGvUcYcePnSCrF4RMZ J1Zg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=uboaJBSmd6sktQRQkkPVR2WOolVk0SULvWbjuVIg9H8=; fh=+eU1jaGObh+LXyAPEZpGNDUUJt0jF6Xwr1VY/wSZ9ZQ=; b=J9ADxaBKWj1haWXMgRdLk06TbrvDGMDeJwhTRcy1/m6Vrab/iYA+KdHfoeWAXkvcb1 NvbtgS9utn4ErmaoL2YdvYIT3f1C97KTOWb7ojRn/7gJN+CbHHsCcxeF2eP5fXQUcltJ AZ1MvZQkS6bEluDyvfqnGfrZ53Z/Wk7PzbHUb02FV7pYskbTAIXqHdpy8bar5aUVs1gx zt/1cqKOgwpDuBaZQGAwkRt3ImSCtN0N+VN27fIR/PYXmOs8ARGKOulp5QQUFEydGmPV E+SGsge5BPFE6YlpuSl8hUhSHRIX31RQgcG7o5hM9BNfv9fZUK5um3l1GhcWbfprQnjQ XTag==; darn=lists.postgresql.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1772034981; x=1772639781; darn=lists.postgresql.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=uboaJBSmd6sktQRQkkPVR2WOolVk0SULvWbjuVIg9H8=; b=J9YtQHccGzPdLyc3Blmb3VQlWwaczBAp4gef/OLtK9x/bdReQskhxTpY322o3u3YhD nI5WC2Q8Zt1WGCAjwz3GT8LL+2CotdDN2oxbqCqNfshMFG2qr1958CVL08VcFVrrB4u+ 2he/33laMOd3TeWH2Uh2YcKati7guyIl643v6bdpv7KOcG4MybyzTREZD3cthKusLJNN DqCyV3tnUKAmlgqcNJl1yJElyj9ppNt7XlQidtIqKGxm5xmiKizWbPypTjYvxbyhYoyY FR0ASlvGDdzrNcD7fr39N7eooMapVQnf4yOMeX0HWqRyCvJMvKxqVGN3NeFlmVkS5JI3 AZiw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772034981; x=1772639781; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=uboaJBSmd6sktQRQkkPVR2WOolVk0SULvWbjuVIg9H8=; b=LnoWIbj1npUzZ7tbFLf+z7IGKmZE/k/ONkkB32oMUr3McLayZY2uDW6ov+afTfHWfm BUL4rr4tpnvCI3nPcJiEqSqFbqaQKSSuaVrWVOORZML3iX3wvxx1+rHpcrKWeme/fiMf 0MI+XhdpLGIG1ypVkYKAh1HV2G7TCTSP0O+JzIS1PbYG7J+JxKlaNCujBjjCg+ZiacDq OzOsfml+cBMWg+Irt5K/Glh2fDlVfoPO802mUTclNvYYV6Cge5VJGrumHRRrzuWA3+n6 LX2edHccr+xzxJ8IfRgTI2EKUWeL/JeOB+hjNYNOLcZB/Bs4IEMpVMlfB+6MFHET1jRv SvNg== X-Forwarded-Encrypted: i=1; AJvYcCUXJyIvx3QoguSGaPH1aOtPZTrROWcDZ/99fB4W5WqNJynB3Fk+6PaIxYeI91hhKedsm3bx9pr4dUJwuxxo@lists.postgresql.org X-Gm-Message-State: AOJu0YyCKJIQDHWLQ8dJYnpCwS17bKCt0KHGxJOdQP+W2kazlF/pXXDz +Phzi7INpVoK5mrhSduRg6tfEm9E5jXLR8mH+nk5X06HYztwoA8R0fr+JfNXeTubrgQnNSoEmeb 9TWnrG6zdaPxC39WvWep+6WBr3UZ/h+8= X-Gm-Gg: ATEYQzwjBX2cxGKDqOwUcuDo7VU0rozhYgGhNsXOK9Q5TxHOEO/sBa9LGgwV2QXHwOm SKsnMGPtCNS8pNspMR22+yf0z3WNz/VeJ7RtQKMEjQgYAgTKsGehhPGLX4kGKe6SkJMlc/QeHor mdlLZB8FdpQpGAMmRXhQ/gmijFYf1FMT3McwzeMQi2LAEAlunXPAvWhwYnfydxa8BrlpF1Rql43 pxHvkIyVbJ3vSADSPTm003zXiMI1xgOth4Ujq0r6ej0yDdUISHYdh31Y2CUyd9bFW92wj4cfuU4 aqrxgdc= X-Received: by 2002:a05:622a:64e:b0:502:9ed4:eea3 with SMTP id d75a77b69052e-5070bd1b26amr175015901cf.9.1772034981235; Wed, 25 Feb 2026 07:56:21 -0800 (PST) MIME-Version: 1.0 References: <36531c0e-292c-409d-bbc7-a252cf6e910a@iki.fi> <54aa8f65-f0e4-4464-b543-e0399c1cab1e@iki.fi> <4a9dda70-0af7-41a4-9636-b168f2fc48ef@iki.fi> <46cc45e9-fddd-44bc-bcb3-96889aafd921@iki.fi> <6c298bc4-7029-4c1d-bf16-3e094842ce32@iki.fi> <2c62322e-a0e3-49cd-b369-370718a8efd8@iki.fi> <3624730d-6dae-42bf-9458-76c4c965fb27@iki.fi> <6dc0880b-15fb-42cf-abfc-62d9d80dd287@iki.fi> In-Reply-To: From: Maxim Orlov Date: Wed, 25 Feb 2026 18:56:08 +0300 X-Gm-Features: AaiRm52kVwJQpoEoPniO4aQS1UmQPCrhri0QQgUoikVO5cU2TvRrqCJ_wSbx_vM Message-ID: Subject: Re: POC: make mxidoff 64 bits To: Heikki Linnakangas Cc: Alexander Lakhin , Ashutosh Bapat , Alvaro Herrera , Alexander Korotkov , wenhui qiu , Postgres hackers Content-Type: multipart/mixed; boundary="00000000000096321f064ba80b3f" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --00000000000096321f064ba80b3f Content-Type: multipart/alternative; boundary="00000000000096321e064ba80b3d" --00000000000096321e064ba80b3d Content-Type: text/plain; charset="UTF-8" Something of this kind? Should we start a new thread? -- Best regards, Maxim Orlov. --00000000000096321e064ba80b3d Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Something of this kind?
Should we start=C2= =A0a new thread?

--
=
Best regards,
Maxim Orlov.
--00000000000096321e064ba80b3d-- --00000000000096321f064ba80b3f Content-Type: application/octet-stream; name="v1-0001-Make-SlruReportIOError-accept-64-bit-values.patch" Content-Disposition: attachment; filename="v1-0001-Make-SlruReportIOError-accept-64-bit-values.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mm27pobv0 RnJvbSAwMjExMmM2ZmFhNjZlZjQ4NGVkOGVmYzUzNzRmN2E4N2VkMjc3MTFiIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBNYXhpbSBPcmxvdiA8b3Jsb3ZtZ0BnbWFpbC5jb20+CkRhdGU6 IEZyaSwgMjAgRmViIDIwMjYgMTE6MjI6MTggKzAzMDAKU3ViamVjdDogW1BBVENIIHYxXSBNYWtl IFNscnVSZXBvcnRJT0Vycm9yIGFjY2VwdCA2NC1iaXQgdmFsdWVzCgpFeHBhbmRpbmcgU0xSVSBz ZWdtZW50IHZhbHVlcyB0byA2NCBiaXRzIHJlcXVpcmVzIGFuIGV4dGVuZGVkIGZvcm1hdApmb3Ig YW4gZXJyb3Igb3V0cHV0IGluIFNscnVSZXBvcnRJT0Vycm9yLiBQcmV2aW91c2x5LCB0aGUgdmFs dWVzIHdlcmUKaW1wbGljaXRseSBjb252ZXJ0ZWQgdG8gMzIgYml0cyB3aXRob3V0IHByZXNlcnZp bmcgdGhlIGVwb2NoLgotLS0KIHNyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL3NscnUuYyB8IDMz ICsrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0KIHNyYy9pbmNsdWRlL2FjY2Vzcy9zbHJ1 LmggICAgICAgICB8ICAyICstCiAyIGZpbGVzIGNoYW5nZWQsIDIzIGluc2VydGlvbnMoKyksIDEy IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL3Ns cnUuYyBiL3NyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL3NscnUuYwppbmRleCA1NDljN2UzZTY0 Yi4uYWI0MDE4Mzg0ZjkgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL3Ns cnUuYworKysgYi9zcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS9zbHJ1LmMKQEAgLTE4MSw3ICsx ODEsNyBAQCBzdGF0aWMgdm9pZCBTbHJ1SW50ZXJuYWxXcml0ZVBhZ2UoU2xydUN0bCBjdGwsIGlu dCBzbG90bm8sIFNscnVXcml0ZUFsbCBmZGF0YSk7CiBzdGF0aWMgYm9vbCBTbHJ1UGh5c2ljYWxS ZWFkUGFnZShTbHJ1Q3RsIGN0bCwgaW50NjQgcGFnZW5vLCBpbnQgc2xvdG5vKTsKIHN0YXRpYyBi b29sIFNscnVQaHlzaWNhbFdyaXRlUGFnZShTbHJ1Q3RsIGN0bCwgaW50NjQgcGFnZW5vLCBpbnQg c2xvdG5vLAogCQkJCQkJCQkgIFNscnVXcml0ZUFsbCBmZGF0YSk7Ci1zdGF0aWMgdm9pZCBTbHJ1 UmVwb3J0SU9FcnJvcihTbHJ1Q3RsIGN0bCwgaW50NjQgcGFnZW5vLCBUcmFuc2FjdGlvbklkIHhp ZCk7CitzdGF0aWMgdm9pZCBTbHJ1UmVwb3J0SU9FcnJvcihTbHJ1Q3RsIGN0bCwgaW50NjQgcGFn ZW5vLCB1aW50NjQgdmFsdWUpOwogc3RhdGljIGludAlTbHJ1U2VsZWN0TFJVUGFnZShTbHJ1Q3Rs IGN0bCwgaW50NjQgcGFnZW5vKTsKIAogc3RhdGljIGJvb2wgU2xydVNjYW5EaXJDYkRlbGV0ZUN1 dG9mZihTbHJ1Q3RsIGN0bCwgY2hhciAqZmlsZW5hbWUsCkBAIC01MjUsNyArNTI1LDcgQEAgU2lt cGxlTHJ1V2FpdElPKFNscnVDdGwgY3RsLCBpbnQgc2xvdG5vKQogICovCiBpbnQKIFNpbXBsZUxy dVJlYWRQYWdlKFNscnVDdGwgY3RsLCBpbnQ2NCBwYWdlbm8sIGJvb2wgd3JpdGVfb2ssCi0JCQkJ ICBUcmFuc2FjdGlvbklkIHhpZCkKKwkJCQkgIHVpbnQ2NCB4aWQpCiB7CiAJU2xydVNoYXJlZAlz aGFyZWQgPSBjdGwtPnNoYXJlZDsKIAlMV0xvY2sJICAgKmJhbmtsb2NrID0gU2ltcGxlTHJ1R2V0 QmFua0xvY2soY3RsLCBwYWdlbm8pOwpAQCAtMTA3MCwxMiArMTA3MCwxNSBAQCBTbHJ1UGh5c2lj YWxXcml0ZVBhZ2UoU2xydUN0bCBjdGwsIGludDY0IHBhZ2VubywgaW50IHNsb3RubywgU2xydVdy aXRlQWxsIGZkYXRhKQogICogU2xydVBoeXNpY2FsV3JpdGVQYWdlLiAgQ2FsbCB0aGlzIGFmdGVy IGNsZWFuaW5nIHVwIHNoYXJlZC1tZW1vcnkgc3RhdGUuCiAgKi8KIHN0YXRpYyB2b2lkCi1TbHJ1 UmVwb3J0SU9FcnJvcihTbHJ1Q3RsIGN0bCwgaW50NjQgcGFnZW5vLCBUcmFuc2FjdGlvbklkIHhp ZCkKK1NscnVSZXBvcnRJT0Vycm9yKFNscnVDdGwgY3RsLCBpbnQ2NCBwYWdlbm8sIHVpbnQ2NCB2 YWx1ZSkKIHsKIAlpbnQ2NAkJc2Vnbm8gPSBwYWdlbm8gLyBTTFJVX1BBR0VTX1BFUl9TRUdNRU5U OwogCWludAkJCXJwYWdlbm8gPSBwYWdlbm8gJSBTTFJVX1BBR0VTX1BFUl9TRUdNRU5UOwogCWlu dAkJCW9mZnNldCA9IHJwYWdlbm8gKiBCTENLU1o7CiAJY2hhcgkJcGF0aFtNQVhQR1BBVEhdOwor CUZ1bGxUcmFuc2FjdGlvbklkCWZ4aWQgPSBGdWxsVHJhbnNhY3Rpb25JZEZyb21VNjQodmFsdWUp OworCVRyYW5zYWN0aW9uSWQJCXhpZCA9IFhpZEZyb21GdWxsVHJhbnNhY3Rpb25JZChmeGlkKTsK Kwl1aW50MzIJCQkJZXBvY2ggPSBFcG9jaEZyb21GdWxsVHJhbnNhY3Rpb25JZChmeGlkKTsKIAog CVNscnVGaWxlTmFtZShjdGwsIHBhdGgsIHNlZ25vKTsKIAllcnJubyA9IHNscnVfZXJybm87CkBA IC0xMDg0LDEzICsxMDg3LDE1IEBAIFNscnVSZXBvcnRJT0Vycm9yKFNscnVDdGwgY3RsLCBpbnQ2 NCBwYWdlbm8sIFRyYW5zYWN0aW9uSWQgeGlkKQogCQljYXNlIFNMUlVfT1BFTl9GQUlMRUQ6CiAJ CQllcmVwb3J0KEVSUk9SLAogCQkJCQkoZXJyY29kZV9mb3JfZmlsZV9hY2Nlc3MoKSwKLQkJCQkJ IGVycm1zZygiY291bGQgbm90IGFjY2VzcyBzdGF0dXMgb2YgdHJhbnNhY3Rpb24gJXUiLCB4aWQp LAorCQkJCQkgZXJybXNnKCJjb3VsZCBub3QgYWNjZXNzIHN0YXR1cyBvZiB0cmFuc2FjdGlvbiAl dToldSIsCisJCQkJCQkJZXBvY2gsIHhpZCksCiAJCQkJCSBlcnJkZXRhaWwoIkNvdWxkIG5vdCBv cGVuIGZpbGUgXCIlc1wiOiAlbS4iLCBwYXRoKSkpOwogCQkJYnJlYWs7CiAJCWNhc2UgU0xSVV9T RUVLX0ZBSUxFRDoKIAkJCWVyZXBvcnQoRVJST1IsCiAJCQkJCShlcnJjb2RlX2Zvcl9maWxlX2Fj Y2VzcygpLAotCQkJCQkgZXJybXNnKCJjb3VsZCBub3QgYWNjZXNzIHN0YXR1cyBvZiB0cmFuc2Fj dGlvbiAldSIsIHhpZCksCisJCQkJCSBlcnJtc2coImNvdWxkIG5vdCBhY2Nlc3Mgc3RhdHVzIG9m IHRyYW5zYWN0aW9uICV1OiV1IiwKKwkJCQkJCQllcG9jaCwgeGlkKSwKIAkJCQkJIGVycmRldGFp bCgiQ291bGQgbm90IHNlZWsgaW4gZmlsZSBcIiVzXCIgdG8gb2Zmc2V0ICVkOiAlbS4iLAogCQkJ CQkJCSAgIHBhdGgsIG9mZnNldCkpKTsKIAkJCWJyZWFrOwpAQCAtMTA5OCwzOCArMTEwMyw0NCBA QCBTbHJ1UmVwb3J0SU9FcnJvcihTbHJ1Q3RsIGN0bCwgaW50NjQgcGFnZW5vLCBUcmFuc2FjdGlv bklkIHhpZCkKIAkJCWlmIChlcnJubykKIAkJCQllcmVwb3J0KEVSUk9SLAogCQkJCQkJKGVycmNv ZGVfZm9yX2ZpbGVfYWNjZXNzKCksCi0JCQkJCQkgZXJybXNnKCJjb3VsZCBub3QgYWNjZXNzIHN0 YXR1cyBvZiB0cmFuc2FjdGlvbiAldSIsIHhpZCksCisJCQkJCQkgZXJybXNnKCJjb3VsZCBub3Qg YWNjZXNzIHN0YXR1cyBvZiB0cmFuc2FjdGlvbiAldToldSIsCisJCQkJCQkJCWVwb2NoLCB4aWQp LAogCQkJCQkJIGVycmRldGFpbCgiQ291bGQgbm90IHJlYWQgZnJvbSBmaWxlIFwiJXNcIiBhdCBv ZmZzZXQgJWQ6ICVtLiIsCiAJCQkJCQkJCSAgIHBhdGgsIG9mZnNldCkpKTsKIAkJCWVsc2UKIAkJ CQllcmVwb3J0KEVSUk9SLAotCQkJCQkJKGVycm1zZygiY291bGQgbm90IGFjY2VzcyBzdGF0dXMg b2YgdHJhbnNhY3Rpb24gJXUiLCB4aWQpLAorCQkJCQkJKGVycm1zZygiY291bGQgbm90IGFjY2Vz cyBzdGF0dXMgb2YgdHJhbnNhY3Rpb24gJXU6JXUiLAorCQkJCQkJCQllcG9jaCwgeGlkKSwKIAkJ CQkJCSBlcnJkZXRhaWwoIkNvdWxkIG5vdCByZWFkIGZyb20gZmlsZSBcIiVzXCIgYXQgb2Zmc2V0 ICVkOiByZWFkIHRvbyBmZXcgYnl0ZXMuIiwgcGF0aCwgb2Zmc2V0KSkpOwogCQkJYnJlYWs7CiAJ CWNhc2UgU0xSVV9XUklURV9GQUlMRUQ6CiAJCQlpZiAoZXJybm8pCiAJCQkJZXJlcG9ydChFUlJP UiwKIAkJCQkJCShlcnJjb2RlX2Zvcl9maWxlX2FjY2VzcygpLAotCQkJCQkJIGVycm1zZygiY291 bGQgbm90IGFjY2VzcyBzdGF0dXMgb2YgdHJhbnNhY3Rpb24gJXUiLCB4aWQpLAorCQkJCQkJIGVy cm1zZygiY291bGQgbm90IGFjY2VzcyBzdGF0dXMgb2YgdHJhbnNhY3Rpb24gJXU6JXUiLAorCQkJ CQkJCQllcG9jaCwgeGlkKSwKIAkJCQkJCSBlcnJkZXRhaWwoIkNvdWxkIG5vdCB3cml0ZSB0byBm aWxlIFwiJXNcIiBhdCBvZmZzZXQgJWQ6ICVtLiIsCiAJCQkJCQkJCSAgIHBhdGgsIG9mZnNldCkp KTsKIAkJCWVsc2UKIAkJCQllcmVwb3J0KEVSUk9SLAotCQkJCQkJKGVycm1zZygiY291bGQgbm90 IGFjY2VzcyBzdGF0dXMgb2YgdHJhbnNhY3Rpb24gJXUiLCB4aWQpLAorCQkJCQkJKGVycm1zZygi Y291bGQgbm90IGFjY2VzcyBzdGF0dXMgb2YgdHJhbnNhY3Rpb24gJXU6JXUiLAorCQkJCQkJCQll cG9jaCwgeGlkKSwKIAkJCQkJCSBlcnJkZXRhaWwoIkNvdWxkIG5vdCB3cml0ZSB0byBmaWxlIFwi JXNcIiBhdCBvZmZzZXQgJWQ6IHdyb3RlIHRvbyBmZXcgYnl0ZXMuIiwKIAkJCQkJCQkJICAgcGF0 aCwgb2Zmc2V0KSkpOwogCQkJYnJlYWs7CiAJCWNhc2UgU0xSVV9GU1lOQ19GQUlMRUQ6CiAJCQll cmVwb3J0KGRhdGFfc3luY19lbGV2ZWwoRVJST1IpLAogCQkJCQkoZXJyY29kZV9mb3JfZmlsZV9h Y2Nlc3MoKSwKLQkJCQkJIGVycm1zZygiY291bGQgbm90IGFjY2VzcyBzdGF0dXMgb2YgdHJhbnNh Y3Rpb24gJXUiLCB4aWQpLAorCQkJCQkgZXJybXNnKCJjb3VsZCBub3QgYWNjZXNzIHN0YXR1cyBv ZiB0cmFuc2FjdGlvbiAldToldSIsCisJCQkJCQkJZXBvY2gsIHhpZCksCiAJCQkJCSBlcnJkZXRh aWwoIkNvdWxkIG5vdCBmc3luYyBmaWxlIFwiJXNcIjogJW0uIiwKIAkJCQkJCQkgICBwYXRoKSkp OwogCQkJYnJlYWs7CiAJCWNhc2UgU0xSVV9DTE9TRV9GQUlMRUQ6CiAJCQllcmVwb3J0KEVSUk9S LAogCQkJCQkoZXJyY29kZV9mb3JfZmlsZV9hY2Nlc3MoKSwKLQkJCQkJIGVycm1zZygiY291bGQg bm90IGFjY2VzcyBzdGF0dXMgb2YgdHJhbnNhY3Rpb24gJXUiLCB4aWQpLAorCQkJCQkgZXJybXNn KCJjb3VsZCBub3QgYWNjZXNzIHN0YXR1cyBvZiB0cmFuc2FjdGlvbiAldToldSIsCisJCQkJCQkJ ZXBvY2gsIHhpZCksCiAJCQkJCSBlcnJkZXRhaWwoIkNvdWxkIG5vdCBjbG9zZSBmaWxlIFwiJXNc IjogJW0uIiwKIAkJCQkJCQkgICBwYXRoKSkpOwogCQkJYnJlYWs7CmRpZmYgLS1naXQgYS9zcmMv aW5jbHVkZS9hY2Nlc3Mvc2xydS5oIGIvc3JjL2luY2x1ZGUvYWNjZXNzL3NscnUuaAppbmRleCA0 Y2I4ZjQ3OGZjZS4uZWM1YzE5NGU3YWMgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL2FjY2Vzcy9z bHJ1LmgKKysrIGIvc3JjL2luY2x1ZGUvYWNjZXNzL3NscnUuaApAQCAtMTc0LDcgKzE3NCw3IEBA IGV4dGVybiB2b2lkIFNpbXBsZUxydUluaXQoU2xydUN0bCBjdGwsIGNvbnN0IGNoYXIgKm5hbWUs IGludCBuc2xvdHMsIGludCBubHNucywKIGV4dGVybiBpbnQJU2ltcGxlTHJ1WmVyb1BhZ2UoU2xy dUN0bCBjdGwsIGludDY0IHBhZ2Vubyk7CiBleHRlcm4gdm9pZCBTaW1wbGVMcnVaZXJvQW5kV3Jp dGVQYWdlKFNscnVDdGwgY3RsLCBpbnQ2NCBwYWdlbm8pOwogZXh0ZXJuIGludAlTaW1wbGVMcnVS ZWFkUGFnZShTbHJ1Q3RsIGN0bCwgaW50NjQgcGFnZW5vLCBib29sIHdyaXRlX29rLAotCQkJCQkJ CSAgVHJhbnNhY3Rpb25JZCB4aWQpOworCQkJCQkJCSAgdWludDY0IHhpZCk7CiBleHRlcm4gaW50 CVNpbXBsZUxydVJlYWRQYWdlX1JlYWRPbmx5KFNscnVDdGwgY3RsLCBpbnQ2NCBwYWdlbm8sCiAJ CQkJCQkJCQkgICBUcmFuc2FjdGlvbklkIHhpZCk7CiBleHRlcm4gdm9pZCBTaW1wbGVMcnVXcml0 ZVBhZ2UoU2xydUN0bCBjdGwsIGludCBzbG90bm8pOwotLSAKMi40My4wCgo= --00000000000096321f064ba80b3f Content-Type: application/octet-stream; name="v2-0002-Add-test-case-for-custom-SLRU-IO-error.patch" Content-Disposition: attachment; filename="v2-0002-Add-test-case-for-custom-SLRU-IO-error.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mm27pocj2 RnJvbSAzNDNkNjgzNmU3MTQ3YjFjZjU2ZGY4Y2IwNDM2NWVlMjE0ZWEzNTdmIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBNYXhpbSBPcmxvdiA8b3Jsb3ZtZ0BnbWFpbC5jb20+CkRhdGU6 IFdlZCwgMjUgRmViIDIwMjYgMTc6NDg6NDIgKzAzMDAKU3ViamVjdDogW1BBVENIIHYyIDIvNV0g QWRkIHRlc3QgY2FzZSBmb3IgY3VzdG9tIFNMUlUgSU8gZXJyb3IKCi0tLQogc3JjL3Rlc3QvbW9k dWxlcy90ZXN0X3NscnUvZXhwZWN0ZWQvdGVzdF9zbHJ1Lm91dCB8ICA3ICsrKysrKysKIHNyYy90 ZXN0L21vZHVsZXMvdGVzdF9zbHJ1L3NxbC90ZXN0X3NscnUuc3FsICAgICAgfCAgNCArKysrCiBz cmMvdGVzdC9tb2R1bGVzL3Rlc3Rfc2xydS90ZXN0X3NscnUtLTEuMC5zcWwgICAgIHwgIDIgKy0K IHNyYy90ZXN0L21vZHVsZXMvdGVzdF9zbHJ1L3Rlc3Rfc2xydS5jICAgICAgICAgICAgfCAxNSAr KysrKysrKysrKysrLS0KIDQgZmlsZXMgY2hhbmdlZCwgMjUgaW5zZXJ0aW9ucygrKSwgMyBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmMvdGVzdC9tb2R1bGVzL3Rlc3Rfc2xydS9leHBlY3Rl ZC90ZXN0X3NscnUub3V0IGIvc3JjL3Rlc3QvbW9kdWxlcy90ZXN0X3NscnUvZXhwZWN0ZWQvdGVz dF9zbHJ1Lm91dAppbmRleCAxODVjNTZlNWQ2Mi4uMGRkYTZiNjBmMGIgMTAwNjQ0Ci0tLSBhL3Ny Yy90ZXN0L21vZHVsZXMvdGVzdF9zbHJ1L2V4cGVjdGVkL3Rlc3Rfc2xydS5vdXQKKysrIGIvc3Jj L3Rlc3QvbW9kdWxlcy90ZXN0X3NscnUvZXhwZWN0ZWQvdGVzdF9zbHJ1Lm91dApAQCAtMjMsNiAr MjMsMTMgQEAgU0VMRUNUIHRlc3Rfc2xydV9wYWdlX2V4aXN0cygxMjM0NSk7CiAgdAogKDEgcm93 KQogCistLSBzaG91bGQgZmFpbCB3aXRoIGN1c3RvbSBlcnJvciBtc2cKK1NFTEVDVCB0ZXN0X3Ns cnVfcGFnZV9yZWFkKDU0MzIxKTsKK0VSUk9SOiAgY291bGQgbm90IGFjY2VzcyB0ZXN0X3NscnUg ZW50cnkKK0RFVEFJTDogIENvdWxkIG5vdCBvcGVuIGZpbGUgInBnX3Rlc3Rfc2xydS8wMDAwMDAw MDAwMDA2QTEiOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5LgorU0VMRUNUIHRlc3Rfc2xydV9w YWdlX3JlYWQoNTQzMjEsIGZhbHNlLCAnMTIzJzo6eGlkKTsKK0VSUk9SOiAgY291bGQgbm90IGFj Y2VzcyB0ZXN0X3NscnUgZW50cnkgMTIzCitERVRBSUw6ICBDb3VsZCBub3Qgb3BlbiBmaWxlICJw Z190ZXN0X3NscnUvMDAwMDAwMDAwMDAwNkExIjogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeS4K IC0tIDQ4IGV4dHJhIHBhZ2VzCiBTRUxFQ1QgY291bnQodGVzdF9zbHJ1X3BhZ2Vfd3JpdGUoYSwg J1Rlc3QgU0xSVScpKQogICBGUk9NIGdlbmVyYXRlX3NlcmllcygxMjM0NiwgMTIzOTMsIDEpIGFz IGE7CmRpZmYgLS1naXQgYS9zcmMvdGVzdC9tb2R1bGVzL3Rlc3Rfc2xydS9zcWwvdGVzdF9zbHJ1 LnNxbCBiL3NyYy90ZXN0L21vZHVsZXMvdGVzdF9zbHJ1L3NxbC90ZXN0X3NscnUuc3FsCmluZGV4 IGIxYjM3NjU4MWFiLi40ZjY2ZjQyMDdiNyAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvbW9kdWxlcy90 ZXN0X3NscnUvc3FsL3Rlc3Rfc2xydS5zcWwKKysrIGIvc3JjL3Rlc3QvbW9kdWxlcy90ZXN0X3Ns cnUvc3FsL3Rlc3Rfc2xydS5zcWwKQEAgLTUsNiArNSwxMCBAQCBTRUxFQ1QgdGVzdF9zbHJ1X3Bh Z2Vfd3JpdGUoMTIzNDUsICdUZXN0IFNMUlUnKTsKIFNFTEVDVCB0ZXN0X3NscnVfcGFnZV9yZWFk KDEyMzQ1KTsKIFNFTEVDVCB0ZXN0X3NscnVfcGFnZV9leGlzdHMoMTIzNDUpOwogCistLSBzaG91 bGQgZmFpbCB3aXRoIGN1c3RvbSBlcnJvciBtc2cKK1NFTEVDVCB0ZXN0X3NscnVfcGFnZV9yZWFk KDU0MzIxKTsKK1NFTEVDVCB0ZXN0X3NscnVfcGFnZV9yZWFkKDU0MzIxLCBmYWxzZSwgJzEyMyc6 OnhpZCk7CisKIC0tIDQ4IGV4dHJhIHBhZ2VzCiBTRUxFQ1QgY291bnQodGVzdF9zbHJ1X3BhZ2Vf d3JpdGUoYSwgJ1Rlc3QgU0xSVScpKQogICBGUk9NIGdlbmVyYXRlX3NlcmllcygxMjM0NiwgMTIz OTMsIDEpIGFzIGE7CmRpZmYgLS1naXQgYS9zcmMvdGVzdC9tb2R1bGVzL3Rlc3Rfc2xydS90ZXN0 X3NscnUtLTEuMC5zcWwgYi9zcmMvdGVzdC9tb2R1bGVzL3Rlc3Rfc2xydS90ZXN0X3NscnUtLTEu MC5zcWwKaW5kZXggYWJlY2I1ZTIxODMuLjIyZjRmNjRiOTg4IDEwMDY0NAotLS0gYS9zcmMvdGVz dC9tb2R1bGVzL3Rlc3Rfc2xydS90ZXN0X3NscnUtLTEuMC5zcWwKKysrIGIvc3JjL3Rlc3QvbW9k dWxlcy90ZXN0X3NscnUvdGVzdF9zbHJ1LS0xLjAuc3FsCkBAIC03LDcgKzcsNyBAQCBDUkVBVEUg T1IgUkVQTEFDRSBGVU5DVElPTiB0ZXN0X3NscnVfcGFnZV93cml0ZWFsbCgpIFJFVFVSTlMgVk9J RAogICBBUyAnTU9EVUxFX1BBVEhOQU1FJywgJ3Rlc3Rfc2xydV9wYWdlX3dyaXRlYWxsJyBMQU5H VUFHRSBDOwogQ1JFQVRFIE9SIFJFUExBQ0UgRlVOQ1RJT04gdGVzdF9zbHJ1X3BhZ2Vfc3luYyhi aWdpbnQpIFJFVFVSTlMgVk9JRAogICBBUyAnTU9EVUxFX1BBVEhOQU1FJywgJ3Rlc3Rfc2xydV9w YWdlX3N5bmMnIExBTkdVQUdFIEM7Ci1DUkVBVEUgT1IgUkVQTEFDRSBGVU5DVElPTiB0ZXN0X3Ns cnVfcGFnZV9yZWFkKGJpZ2ludCwgYm9vbCBERUZBVUxUIHRydWUpIFJFVFVSTlMgdGV4dAorQ1JF QVRFIE9SIFJFUExBQ0UgRlVOQ1RJT04gdGVzdF9zbHJ1X3BhZ2VfcmVhZChiaWdpbnQsIGJvb2wg REVGQVVMVCB0cnVlLCB4aWQgREVGQVVMVCBOVUxMKSBSRVRVUk5TIHRleHQKICAgQVMgJ01PRFVM RV9QQVRITkFNRScsICd0ZXN0X3NscnVfcGFnZV9yZWFkJyBMQU5HVUFHRSBDOwogQ1JFQVRFIE9S IFJFUExBQ0UgRlVOQ1RJT04gdGVzdF9zbHJ1X3BhZ2VfcmVhZG9ubHkoYmlnaW50KSBSRVRVUk5T IHRleHQKICAgQVMgJ01PRFVMRV9QQVRITkFNRScsICd0ZXN0X3NscnVfcGFnZV9yZWFkb25seScg TEFOR1VBR0UgQzsKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L21vZHVsZXMvdGVzdF9zbHJ1L3Rlc3Rf c2xydS5jIGIvc3JjL3Rlc3QvbW9kdWxlcy90ZXN0X3NscnUvdGVzdF9zbHJ1LmMKaW5kZXggNTlj ZTQ5MDAxNzMuLjE5YzY5YjM2NjQ2IDEwMDY0NAotLS0gYS9zcmMvdGVzdC9tb2R1bGVzL3Rlc3Rf c2xydS90ZXN0X3NscnUuYworKysgYi9zcmMvdGVzdC9tb2R1bGVzL3Rlc3Rfc2xydS90ZXN0X3Ns cnUuYwpAQCAtOTMsNiArOTMsNyBAQCB0ZXN0X3NscnVfcGFnZV9yZWFkKFBHX0ZVTkNUSU9OX0FS R1MpCiB7CiAJaW50NjQJCXBhZ2VubyA9IFBHX0dFVEFSR19JTlQ2NCgwKTsKIAlib29sCQl3cml0 ZV9vayA9IFBHX0dFVEFSR19CT09MKDEpOworCVRyYW5zYWN0aW9uSWQgeGlkID0gUEdfR0VUQVJH X1RSQU5TQUNUSU9OSUQoMik7CiAJY2hhcgkgICAqZGF0YSA9IE5VTEw7CiAJaW50CQkJc2xvdG5v OwogCUxXTG9jawkgICAqbG9jayA9IFNpbXBsZUxydUdldEJhbmtMb2NrKFRlc3RTbHJ1Q3RsLCBw YWdlbm8pOwpAQCAtMTAwLDcgKzEwMSw3IEBAIHRlc3Rfc2xydV9wYWdlX3JlYWQoUEdfRlVOQ1RJ T05fQVJHUykKIAkvKiBmaW5kIHBhZ2UgaW4gYnVmZmVycywgcmVhZGluZyBpdCBpZiBuZWNlc3Nh cnkgKi8KIAlMV0xvY2tBY3F1aXJlKGxvY2ssIExXX0VYQ0xVU0lWRSk7CiAJc2xvdG5vID0gU2lt cGxlTHJ1UmVhZFBhZ2UoVGVzdFNscnVDdGwsIHBhZ2VubywKLQkJCQkJCQkgICB3cml0ZV9vaywg TlVMTCk7CisJCQkJCQkJICAgd3JpdGVfb2ssIFBHX0FSR0lTTlVMTCgyKSA/IE5VTEwgOiAmeGlk KTsKIAlkYXRhID0gKGNoYXIgKikgVGVzdFNscnVDdGwtPnNoYXJlZC0+cGFnZV9idWZmZXJbc2xv dG5vXTsKIAlMV0xvY2tSZWxlYXNlKGxvY2spOwogCkBAIC0yMTAsNiArMjExLDE2IEBAIHRlc3Rf c2xydV9wYWdlX3ByZWNlZGVzX2xvZ2ljYWxseShpbnQ2NCBwYWdlMSwgaW50NjQgcGFnZTIpCiAJ cmV0dXJuIHBhZ2UxIDwgcGFnZTI7CiB9CiAKK3N0YXRpYyBpbmxpbmUgY2hhciAqCit0ZXN0X2lv X2Vycm9yX21zZyhjb25zdCB2b2lkICpvcGFxdWVfZGF0YSkKK3sKKwlpZiAob3BhcXVlX2RhdGEp CisJCXJldHVybiBwc3ByaW50ZigiY291bGQgbm90IGFjY2VzcyB0ZXN0X3NscnUgZW50cnkgJXUi LAorCQkJCQkJKihUcmFuc2FjdGlvbklkICopIG9wYXF1ZV9kYXRhKTsKKworCXJldHVybiBwc3By aW50ZigiY291bGQgbm90IGFjY2VzcyB0ZXN0X3NscnUgZW50cnkiKTsKK30KKwogc3RhdGljIHZv aWQKIHRlc3Rfc2xydV9zaG1lbV9zdGFydHVwKHZvaWQpCiB7CkBAIC0yNDUsNyArMjU2LDcgQEAg dGVzdF9zbHJ1X3NobWVtX3N0YXJ0dXAodm9pZCkKIAl9CiAKIAlUZXN0U2xydUN0bC0+UGFnZVBy ZWNlZGVzID0gdGVzdF9zbHJ1X3BhZ2VfcHJlY2VkZXNfbG9naWNhbGx5OwotCVRlc3RTbHJ1Q3Rs LT5Jb0Vycm9yTXNnID0gVHJhbnNhY3Rpb25JZElvRXJyb3JNc2c7CisJVGVzdFNscnVDdGwtPklv RXJyb3JNc2cgPSB0ZXN0X2lvX2Vycm9yX21zZzsKIAlTaW1wbGVMcnVJbml0KFRlc3RTbHJ1Q3Rs LCAiVGVzdFNMUlUiLAogCQkJCSAgTlVNX1RFU1RfQlVGRkVSUywgMCwgc2xydV9kaXJfbmFtZSwK IAkJCQkgIHRlc3RfYnVmZmVyX3RyYW5jaGVfaWQsIHRlc3RfdHJhbmNoZV9pZCwgU1lOQ19IQU5E TEVSX05PTkUsCi0tIAoyLjUwLjEgKEFwcGxlIEdpdC0xNTUpCgo= --00000000000096321f064ba80b3f Content-Type: application/octet-stream; name="v2-0001-Add-a-callback-for-generating-an-I-O-message-in-t.patch" Content-Disposition: attachment; filename="v2-0001-Add-a-callback-for-generating-an-I-O-message-in-t.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mm27pocf1 RnJvbSAxNTk5YTA5ZmNlNTg2ZTIwZDE3MmEzMGJmZjcyYzU1ODYyNjBiYTM3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBNYXhpbSBPcmxvdiA8b3Jsb3ZtZ0BnbWFpbC5jb20+CkRhdGU6 IFdlZCwgMjUgRmViIDIwMjYgMTY6NTk6MzggKzAzMDAKU3ViamVjdDogW1BBVENIIHYyIDEvNV0g QWRkIGEgY2FsbGJhY2sgZm9yIGdlbmVyYXRpbmcgYW4gSS9PIG1lc3NhZ2UgaW4gdGhlCiBTTFJV CgpIaXN0b3JpY2FsbHksIHRoZSBTTFJVIG1vZHVsZSB3YXMgZGVzaWduZWQgdG8gd29yayB3aXRo IHRyYW5zYWN0aW9uIElEcy4KQnV0IG5vdyB3ZSB1c2UgaXQgdG8gd29yayB3aXRoIGRpZmZlcmVu dCBvYmplY3RzLCBhbmQgZXZlbiBvZiBkaWZmZXJlbnQKdHlwZXMuIEhvd2V2ZXIsIEkvTyBlcnJv cnMgY29udGludWVkIHRvIGJlIG91dHB1dCBpbiB0aGUKY29ycmVzcG9uZGluZyBYSURzIGZvcm1h dC4KClRoaXMgY29tbWl0IGFkZHMgYSBjYWxsYmFjayB0aGF0IHdpbGwgYWxsb3cgdG8gY3JlYXRl IGN1c3RvbSBJTyBlcnJvcgptZXNzYWdlcyBmb3IgbW9kdWxlcyB0aGF0IGRvbid0IHdvcmsgd2l0 aCB0cmFuc2FjdGlvbiBJRHMuCgpObyB1c2VyLXZpc2libGUgYmVoYXZpb3IgY2hhbmdlIGlzIGV4 cGVjdGVkIGluIHRoaXMgY29tbWl0LgotLS0KIHNyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL2Ns b2cuYyAgICAgIHwgIDggKystLS0KIHNyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL2NvbW1pdF90 cy5jIHwgIDUgKy0tCiBzcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS9tdWx0aXhhY3QuYyB8IDIx ICsrKysrKystLS0tLS0KIHNyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL3NscnUuYyAgICAgIHwg NDMgKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0KIHNyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2Ft L3N1YnRyYW5zLmMgIHwgIDUgKy0tCiBzcmMvYmFja2VuZC9jb21tYW5kcy9hc3luYy5jICAgICAg ICAgICB8IDEwICsrKy0tLQogc3JjL2JhY2tlbmQvc3RvcmFnZS9sbWdyL3ByZWRpY2F0ZS5jICAg fCAgNSArLS0KIHNyYy9pbmNsdWRlL2FjY2Vzcy9zbHJ1LmggICAgICAgICAgICAgIHwgMjYgKysr KysrKysrKysrKystLQogc3JjL3Rlc3QvbW9kdWxlcy90ZXN0X3NscnUvdGVzdF9zbHJ1LmMgfCAg NSArLS0KIDkgZmlsZXMgY2hhbmdlZCwgODMgaW5zZXJ0aW9ucygrKSwgNDUgZGVsZXRpb25zKC0p CgpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvYWNjZXNzL3RyYW5zYW0vY2xvZy5jIGIvc3JjL2Jh Y2tlbmQvYWNjZXNzL3RyYW5zYW0vY2xvZy5jCmluZGV4IGI1YzM4YmJiMTYyLi4xYzYyNjcyZDY1 NiAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvYWNjZXNzL3RyYW5zYW0vY2xvZy5jCisrKyBiL3Ny Yy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL2Nsb2cuYwpAQCAtMzgxLDggKzM4MSw3IEBAIFRyYW5z YWN0aW9uSWRTZXRQYWdlU3RhdHVzSW50ZXJuYWwoVHJhbnNhY3Rpb25JZCB4aWQsIGludCBuc3Vi eGlkcywKIAkgKiB3cml0ZS1idXN5LCBzaW5jZSB3ZSBkb24ndCBjYXJlIGlmIHRoZSB1cGRhdGUg cmVhY2hlcyBkaXNrIHNvb25lciB0aGFuCiAJICogd2UgdGhpbmsuCiAJICovCi0Jc2xvdG5vID0g U2ltcGxlTHJ1UmVhZFBhZ2UoWGFjdEN0bCwgcGFnZW5vLCAhWExvZ1JlY1B0cklzVmFsaWQobHNu KSwKLQkJCQkJCQkgICB4aWQpOworCXNsb3RubyA9IFNpbXBsZUxydVJlYWRQYWdlKFhhY3RDdGws IHBhZ2VubywgIVhMb2dSZWNQdHJJc1ZhbGlkKGxzbiksICZ4aWQpOwogCiAJLyoKIAkgKiBTZXQg dGhlIG1haW4gdHJhbnNhY3Rpb24gaWQsIGlmIGFueS4KQEAgLTc0Myw3ICs3NDIsNyBAQCBUcmFu c2FjdGlvbklkR2V0U3RhdHVzKFRyYW5zYWN0aW9uSWQgeGlkLCBYTG9nUmVjUHRyICpsc24pCiAK IAkvKiBsb2NrIGlzIGFjcXVpcmVkIGJ5IFNpbXBsZUxydVJlYWRQYWdlX1JlYWRPbmx5ICovCiAK LQlzbG90bm8gPSBTaW1wbGVMcnVSZWFkUGFnZV9SZWFkT25seShYYWN0Q3RsLCBwYWdlbm8sIHhp ZCk7CisJc2xvdG5vID0gU2ltcGxlTHJ1UmVhZFBhZ2VfUmVhZE9ubHkoWGFjdEN0bCwgcGFnZW5v LCAmeGlkKTsKIAlieXRlcHRyID0gWGFjdEN0bC0+c2hhcmVkLT5wYWdlX2J1ZmZlcltzbG90bm9d ICsgYnl0ZW5vOwogCiAJc3RhdHVzID0gKCpieXRlcHRyID4+IGJzaGlmdCkgJiBDTE9HX1hBQ1Rf QklUTUFTSzsKQEAgLTgwNyw2ICs4MDYsNyBAQCBDTE9HU2htZW1Jbml0KHZvaWQpCiAJQXNzZXJ0 KHRyYW5zYWN0aW9uX2J1ZmZlcnMgIT0gMCk7CiAKIAlYYWN0Q3RsLT5QYWdlUHJlY2VkZXMgPSBD TE9HUGFnZVByZWNlZGVzOworCVhhY3RDdGwtPklvRXJyb3JNc2cgPSBUcmFuc2FjdGlvbklkSW9F cnJvck1zZzsKIAlTaW1wbGVMcnVJbml0KFhhY3RDdGwsICJ0cmFuc2FjdGlvbiIsIENMT0dTaG1l bUJ1ZmZlcnMoKSwgQ0xPR19MU05TX1BFUl9QQUdFLAogCQkJCSAgInBnX3hhY3QiLCBMV1RSQU5D SEVfWEFDVF9CVUZGRVIsCiAJCQkJICBMV1RSQU5DSEVfWEFDVF9TTFJVLCBTWU5DX0hBTkRMRVJf Q0xPRywgZmFsc2UpOwpAQCAtODgyLDcgKzg4Miw3IEBAIFRyaW1DTE9HKHZvaWQpCiAJCWludAkJ CXNsb3RubzsKIAkJY2hhcgkgICAqYnl0ZXB0cjsKIAotCQlzbG90bm8gPSBTaW1wbGVMcnVSZWFk UGFnZShYYWN0Q3RsLCBwYWdlbm8sIGZhbHNlLCB4aWQpOworCQlzbG90bm8gPSBTaW1wbGVMcnVS ZWFkUGFnZShYYWN0Q3RsLCBwYWdlbm8sIGZhbHNlLCAmeGlkKTsKIAkJYnl0ZXB0ciA9IFhhY3RD dGwtPnNoYXJlZC0+cGFnZV9idWZmZXJbc2xvdG5vXSArIGJ5dGVubzsKIAogCQkvKiBaZXJvIHNv LWZhci11bnVzZWQgcG9zaXRpb25zIGluIHRoZSBjdXJyZW50IGJ5dGUgKi8KZGlmZiAtLWdpdCBh L3NyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL2NvbW1pdF90cy5jIGIvc3JjL2JhY2tlbmQvYWNj ZXNzL3RyYW5zYW0vY29tbWl0X3RzLmMKaW5kZXggNmZhMjE3OGYxZGQuLjk2Nzc1ODg1ZDM5IDEw MDY0NAotLS0gYS9zcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS9jb21taXRfdHMuYworKysgYi9z cmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS9jb21taXRfdHMuYwpAQCAtMjI3LDcgKzIyNyw3IEBA IFNldFhpZENvbW1pdFRzSW5QYWdlKFRyYW5zYWN0aW9uSWQgeGlkLCBpbnQgbnN1YnhpZHMsCiAK IAlMV0xvY2tBY3F1aXJlKGxvY2ssIExXX0VYQ0xVU0lWRSk7CiAKLQlzbG90bm8gPSBTaW1wbGVM cnVSZWFkUGFnZShDb21taXRUc0N0bCwgcGFnZW5vLCB0cnVlLCB4aWQpOworCXNsb3RubyA9IFNp bXBsZUxydVJlYWRQYWdlKENvbW1pdFRzQ3RsLCBwYWdlbm8sIHRydWUsICZ4aWQpOwogCiAJVHJh bnNhY3Rpb25JZFNldENvbW1pdFRzKHhpZCwgdHMsIG5vZGVpZCwgc2xvdG5vKTsKIAlmb3IgKGkg PSAwOyBpIDwgbnN1YnhpZHM7IGkrKykKQEAgLTMzMiw3ICszMzIsNyBAQCBUcmFuc2FjdGlvbklk R2V0Q29tbWl0VHNEYXRhKFRyYW5zYWN0aW9uSWQgeGlkLCBUaW1lc3RhbXBUeiAqdHMsCiAJfQog CiAJLyogbG9jayBpcyBhY3F1aXJlZCBieSBTaW1wbGVMcnVSZWFkUGFnZV9SZWFkT25seSAqLwot CXNsb3RubyA9IFNpbXBsZUxydVJlYWRQYWdlX1JlYWRPbmx5KENvbW1pdFRzQ3RsLCBwYWdlbm8s IHhpZCk7CisJc2xvdG5vID0gU2ltcGxlTHJ1UmVhZFBhZ2VfUmVhZE9ubHkoQ29tbWl0VHNDdGws IHBhZ2VubywgJnhpZCk7CiAJbWVtY3B5KCZlbnRyeSwKIAkJICAgQ29tbWl0VHNDdGwtPnNoYXJl ZC0+cGFnZV9idWZmZXJbc2xvdG5vXSArCiAJCSAgIFNpemVPZkNvbW1pdFRpbWVzdGFtcEVudHJ5 ICogZW50cnlubywKQEAgLTU1MSw2ICs1NTEsNyBAQCBDb21taXRUc1NobWVtSW5pdCh2b2lkKQog CUFzc2VydChjb21taXRfdGltZXN0YW1wX2J1ZmZlcnMgIT0gMCk7CiAKIAlDb21taXRUc0N0bC0+ UGFnZVByZWNlZGVzID0gQ29tbWl0VHNQYWdlUHJlY2VkZXM7CisJQ29tbWl0VHNDdGwtPklvRXJy b3JNc2cgPSBUcmFuc2FjdGlvbklkSW9FcnJvck1zZzsKIAlTaW1wbGVMcnVJbml0KENvbW1pdFRz Q3RsLCAiY29tbWl0X3RpbWVzdGFtcCIsIENvbW1pdFRzU2htZW1CdWZmZXJzKCksIDAsCiAJCQkJ ICAicGdfY29tbWl0X3RzIiwgTFdUUkFOQ0hFX0NPTU1JVFRTX0JVRkZFUiwKIAkJCQkgIExXVFJB TkNIRV9DT01NSVRUU19TTFJVLApkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvYWNjZXNzL3RyYW5z YW0vbXVsdGl4YWN0LmMgYi9zcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS9tdWx0aXhhY3QuYwpp bmRleCA5MGVjODdkOWRkNi4uNjNkNTI1NjgyM2UgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2Fj Y2Vzcy90cmFuc2FtL211bHRpeGFjdC5jCisrKyBiL3NyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2Ft L211bHRpeGFjdC5jCkBAIC03OTgsNyArNzk4LDcgQEAgUmVjb3JkTmV3TXVsdGlYYWN0KE11bHRp WGFjdElkIG11bHRpLCBNdWx0aVhhY3RPZmZzZXQgb2Zmc2V0LAogCSAqIGVub3VnaCB0aGF0IGEg TXVsdGlYYWN0SWQgaXMgcmVhbGx5IGludm9sdmVkLiAgUGVyaGFwcyBzb21lZGF5IHdlJ2xsCiAJ ICogdGFrZSB0aGUgdHJvdWJsZSB0byBnZW5lcmFsaXplIHRoZSBzbHJ1LmMgZXJyb3IgcmVwb3J0 aW5nIGNvZGUuCiAJICovCi0Jc2xvdG5vID0gU2ltcGxlTHJ1UmVhZFBhZ2UoTXVsdGlYYWN0T2Zm c2V0Q3RsLCBwYWdlbm8sIHRydWUsIG11bHRpKTsKKwlzbG90bm8gPSBTaW1wbGVMcnVSZWFkUGFn ZShNdWx0aVhhY3RPZmZzZXRDdGwsIHBhZ2VubywgdHJ1ZSwgJm11bHRpKTsKIAlvZmZwdHIgPSAo TXVsdGlYYWN0T2Zmc2V0ICopIE11bHRpWGFjdE9mZnNldEN0bC0+c2hhcmVkLT5wYWdlX2J1ZmZl cltzbG90bm9dOwogCW9mZnB0ciArPSBlbnRyeW5vOwogCkBAIC04MjcsNyArODI3LDcgQEAgUmVj b3JkTmV3TXVsdGlYYWN0KE11bHRpWGFjdElkIG11bHRpLCBNdWx0aVhhY3RPZmZzZXQgb2Zmc2V0 LAogCQlsb2NrID0gU2ltcGxlTHJ1R2V0QmFua0xvY2soTXVsdGlYYWN0T2Zmc2V0Q3RsLCBuZXh0 X3BhZ2Vubyk7CiAJCUxXTG9ja0FjcXVpcmUobG9jaywgTFdfRVhDTFVTSVZFKTsKIAotCQlzbG90 bm8gPSBTaW1wbGVMcnVSZWFkUGFnZShNdWx0aVhhY3RPZmZzZXRDdGwsIG5leHRfcGFnZW5vLCB0 cnVlLCBuZXh0KTsKKwkJc2xvdG5vID0gU2ltcGxlTHJ1UmVhZFBhZ2UoTXVsdGlYYWN0T2Zmc2V0 Q3RsLCBuZXh0X3BhZ2VubywgdHJ1ZSwgJm5leHQpOwogCQluZXh0X29mZnB0ciA9IChNdWx0aVhh Y3RPZmZzZXQgKikgTXVsdGlYYWN0T2Zmc2V0Q3RsLT5zaGFyZWQtPnBhZ2VfYnVmZmVyW3Nsb3Ru b107CiAJCW5leHRfb2ZmcHRyICs9IG5leHRfZW50cnlubzsKIAl9CkBAIC04ODEsNyArODgxLDcg QEAgUmVjb3JkTmV3TXVsdGlYYWN0KE11bHRpWGFjdElkIG11bHRpLCBNdWx0aVhhY3RPZmZzZXQg b2Zmc2V0LAogCQkJCUxXTG9ja0FjcXVpcmUobG9jaywgTFdfRVhDTFVTSVZFKTsKIAkJCQlwcmV2 bG9jayA9IGxvY2s7CiAJCQl9Ci0JCQlzbG90bm8gPSBTaW1wbGVMcnVSZWFkUGFnZShNdWx0aVhh Y3RNZW1iZXJDdGwsIHBhZ2VubywgdHJ1ZSwgbXVsdGkpOworCQkJc2xvdG5vID0gU2ltcGxlTHJ1 UmVhZFBhZ2UoTXVsdGlYYWN0TWVtYmVyQ3RsLCBwYWdlbm8sIHRydWUsICZtdWx0aSk7CiAJCQlw cmV2X3BhZ2VubyA9IHBhZ2VubzsKIAkJfQogCkBAIC0xMjA2LDcgKzEyMDYsNyBAQCBHZXRNdWx0 aVhhY3RJZE1lbWJlcnMoTXVsdGlYYWN0SWQgbXVsdGksIE11bHRpWGFjdE1lbWJlciAqKm1lbWJl cnMsCiAJTFdMb2NrQWNxdWlyZShsb2NrLCBMV19FWENMVVNJVkUpOwogCiAJLyogcmVhZCB0aGlz IG11bHRpJ3Mgb2Zmc2V0ICovCi0Jc2xvdG5vID0gU2ltcGxlTHJ1UmVhZFBhZ2UoTXVsdGlYYWN0 T2Zmc2V0Q3RsLCBwYWdlbm8sIHRydWUsIG11bHRpKTsKKwlzbG90bm8gPSBTaW1wbGVMcnVSZWFk UGFnZShNdWx0aVhhY3RPZmZzZXRDdGwsIHBhZ2VubywgdHJ1ZSwgJm11bHRpKTsKIAlvZmZwdHIg PSAoTXVsdGlYYWN0T2Zmc2V0ICopIE11bHRpWGFjdE9mZnNldEN0bC0+c2hhcmVkLT5wYWdlX2J1 ZmZlcltzbG90bm9dOwogCW9mZnB0ciArPSBlbnRyeW5vOwogCW9mZnNldCA9ICpvZmZwdHI7CkBA IC0xMjQ0LDcgKzEyNDQsNyBAQCBHZXRNdWx0aVhhY3RJZE1lbWJlcnMoTXVsdGlYYWN0SWQgbXVs dGksIE11bHRpWGFjdE1lbWJlciAqKm1lbWJlcnMsCiAJCQkJTFdMb2NrQWNxdWlyZShuZXdsb2Nr LCBMV19FWENMVVNJVkUpOwogCQkJCWxvY2sgPSBuZXdsb2NrOwogCQkJfQotCQkJc2xvdG5vID0g U2ltcGxlTHJ1UmVhZFBhZ2UoTXVsdGlYYWN0T2Zmc2V0Q3RsLCBwYWdlbm8sIHRydWUsIHRtcE1Y YWN0KTsKKwkJCXNsb3RubyA9IFNpbXBsZUxydVJlYWRQYWdlKE11bHRpWGFjdE9mZnNldEN0bCwg cGFnZW5vLCB0cnVlLCAmdG1wTVhhY3QpOwogCQl9CiAKIAkJb2ZmcHRyID0gKE11bHRpWGFjdE9m ZnNldCAqKSBNdWx0aVhhY3RPZmZzZXRDdGwtPnNoYXJlZC0+cGFnZV9idWZmZXJbc2xvdG5vXTsK QEAgLTEzMDksNyArMTMwOSw3IEBAIEdldE11bHRpWGFjdElkTWVtYmVycyhNdWx0aVhhY3RJZCBt dWx0aSwgTXVsdGlYYWN0TWVtYmVyICoqbWVtYmVycywKIAkJCQlsb2NrID0gbmV3bG9jazsKIAkJ CX0KIAotCQkJc2xvdG5vID0gU2ltcGxlTHJ1UmVhZFBhZ2UoTXVsdGlYYWN0TWVtYmVyQ3RsLCBw YWdlbm8sIHRydWUsIG11bHRpKTsKKwkJCXNsb3RubyA9IFNpbXBsZUxydVJlYWRQYWdlKE11bHRp WGFjdE1lbWJlckN0bCwgcGFnZW5vLCB0cnVlLCAmbXVsdGkpOwogCQkJcHJldl9wYWdlbm8gPSBw YWdlbm87CiAJCX0KIApAQCAtMTczMCw2ICsxNzMwLDkgQEAgTXVsdGlYYWN0U2htZW1Jbml0KHZv aWQpCiAJTXVsdGlYYWN0T2Zmc2V0Q3RsLT5QYWdlUHJlY2VkZXMgPSBNdWx0aVhhY3RPZmZzZXRQ YWdlUHJlY2VkZXM7CiAJTXVsdGlYYWN0TWVtYmVyQ3RsLT5QYWdlUHJlY2VkZXMgPSBNdWx0aVhh Y3RNZW1iZXJQYWdlUHJlY2VkZXM7CiAKKwlNdWx0aVhhY3RPZmZzZXRDdGwtPklvRXJyb3JNc2cg PSBUcmFuc2FjdGlvbklkSW9FcnJvck1zZzsKKwlNdWx0aVhhY3RNZW1iZXJDdGwtPklvRXJyb3JN c2cgPSBUcmFuc2FjdGlvbklkSW9FcnJvck1zZzsKKwogCVNpbXBsZUxydUluaXQoTXVsdGlYYWN0 T2Zmc2V0Q3RsLAogCQkJCSAgIm11bHRpeGFjdF9vZmZzZXQiLCBtdWx0aXhhY3Rfb2Zmc2V0X2J1 ZmZlcnMsIDAsCiAJCQkJICAicGdfbXVsdGl4YWN0L29mZnNldHMiLCBMV1RSQU5DSEVfTVVMVElY QUNUT0ZGU0VUX0JVRkZFUiwKQEAgLTE4NzksNyArMTg4Miw3IEBAIFRyaW1NdWx0aVhhY3Qodm9p ZCkKIAkJaWYgKGVudHJ5bm8gPT0gMCB8fCBuZXh0TVhhY3QgPT0gRmlyc3RNdWx0aVhhY3RJZCkK IAkJCXNsb3RubyA9IFNpbXBsZUxydVplcm9QYWdlKE11bHRpWGFjdE9mZnNldEN0bCwgcGFnZW5v KTsKIAkJZWxzZQotCQkJc2xvdG5vID0gU2ltcGxlTHJ1UmVhZFBhZ2UoTXVsdGlYYWN0T2Zmc2V0 Q3RsLCBwYWdlbm8sIHRydWUsIG5leHRNWGFjdCk7CisJCQlzbG90bm8gPSBTaW1wbGVMcnVSZWFk UGFnZShNdWx0aVhhY3RPZmZzZXRDdGwsIHBhZ2VubywgdHJ1ZSwgJm5leHRNWGFjdCk7CiAJCW9m ZnB0ciA9IChNdWx0aVhhY3RPZmZzZXQgKikgTXVsdGlYYWN0T2Zmc2V0Q3RsLT5zaGFyZWQtPnBh Z2VfYnVmZmVyW3Nsb3Rub107CiAJCW9mZnB0ciArPSBlbnRyeW5vOwogCkBAIC0xOTE0LDcgKzE5 MTcsNyBAQCBUcmltTXVsdGlYYWN0KHZvaWQpCiAKIAkJTFdMb2NrQWNxdWlyZShsb2NrLCBMV19F WENMVVNJVkUpOwogCQltZW1iZXJvZmYgPSBNWE9mZnNldFRvTWVtYmVyT2Zmc2V0KG9mZnNldCk7 Ci0JCXNsb3RubyA9IFNpbXBsZUxydVJlYWRQYWdlKE11bHRpWGFjdE1lbWJlckN0bCwgcGFnZW5v LCB0cnVlLCBvZmZzZXQpOworCQlzbG90bm8gPSBTaW1wbGVMcnVSZWFkUGFnZShNdWx0aVhhY3RN ZW1iZXJDdGwsIHBhZ2VubywgdHJ1ZSwgJm9mZnNldCk7CiAJCXhpZHB0ciA9IChUcmFuc2FjdGlv bklkICopCiAJCQkoTXVsdGlYYWN0TWVtYmVyQ3RsLT5zaGFyZWQtPnBhZ2VfYnVmZmVyW3Nsb3Ru b10gKyBtZW1iZXJvZmYpOwogCkBAIC0yNDQ0LDcgKzI0NDcsNyBAQCBmaW5kX211bHRpeGFjdF9z dGFydChNdWx0aVhhY3RJZCBtdWx0aSwgTXVsdGlYYWN0T2Zmc2V0ICpyZXN1bHQpCiAJCXJldHVy biBmYWxzZTsKIAogCS8qIGxvY2sgaXMgYWNxdWlyZWQgYnkgU2ltcGxlTHJ1UmVhZFBhZ2VfUmVh ZE9ubHkgKi8KLQlzbG90bm8gPSBTaW1wbGVMcnVSZWFkUGFnZV9SZWFkT25seShNdWx0aVhhY3RP ZmZzZXRDdGwsIHBhZ2VubywgbXVsdGkpOworCXNsb3RubyA9IFNpbXBsZUxydVJlYWRQYWdlX1Jl YWRPbmx5KE11bHRpWGFjdE9mZnNldEN0bCwgcGFnZW5vLCAmbXVsdGkpOwogCW9mZnB0ciA9IChN dWx0aVhhY3RPZmZzZXQgKikgTXVsdGlYYWN0T2Zmc2V0Q3RsLT5zaGFyZWQtPnBhZ2VfYnVmZmVy W3Nsb3Rub107CiAJb2ZmcHRyICs9IGVudHJ5bm87CiAJb2Zmc2V0ID0gKm9mZnB0cjsKZGlmZiAt LWdpdCBhL3NyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL3NscnUuYyBiL3NyYy9iYWNrZW5kL2Fj Y2Vzcy90cmFuc2FtL3NscnUuYwppbmRleCA1NDljN2UzZTY0Yi4uYTg3YjBmZTgzMGEgMTAwNjQ0 Ci0tLSBhL3NyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL3NscnUuYworKysgYi9zcmMvYmFja2Vu ZC9hY2Nlc3MvdHJhbnNhbS9zbHJ1LmMKQEAgLTE4MSw3ICsxODEsOCBAQCBzdGF0aWMgdm9pZCBT bHJ1SW50ZXJuYWxXcml0ZVBhZ2UoU2xydUN0bCBjdGwsIGludCBzbG90bm8sIFNscnVXcml0ZUFs bCBmZGF0YSk7CiBzdGF0aWMgYm9vbCBTbHJ1UGh5c2ljYWxSZWFkUGFnZShTbHJ1Q3RsIGN0bCwg aW50NjQgcGFnZW5vLCBpbnQgc2xvdG5vKTsKIHN0YXRpYyBib29sIFNscnVQaHlzaWNhbFdyaXRl UGFnZShTbHJ1Q3RsIGN0bCwgaW50NjQgcGFnZW5vLCBpbnQgc2xvdG5vLAogCQkJCQkJCQkgIFNs cnVXcml0ZUFsbCBmZGF0YSk7Ci1zdGF0aWMgdm9pZCBTbHJ1UmVwb3J0SU9FcnJvcihTbHJ1Q3Rs IGN0bCwgaW50NjQgcGFnZW5vLCBUcmFuc2FjdGlvbklkIHhpZCk7CitzdGF0aWMgdm9pZCBTbHJ1 UmVwb3J0SU9FcnJvcihTbHJ1Q3RsIGN0bCwgaW50NjQgcGFnZW5vLAorCQkJCQkJCSAgY29uc3Qg dm9pZCAqb3BhcXVlX2RhdGEpOwogc3RhdGljIGludAlTbHJ1U2VsZWN0TFJVUGFnZShTbHJ1Q3Rs IGN0bCwgaW50NjQgcGFnZW5vKTsKIAogc3RhdGljIGJvb2wgU2xydVNjYW5EaXJDYkRlbGV0ZUN1 dG9mZihTbHJ1Q3RsIGN0bCwgY2hhciAqZmlsZW5hbWUsCkBAIC01MjUsMTEgKzUyNiwxMyBAQCBT aW1wbGVMcnVXYWl0SU8oU2xydUN0bCBjdGwsIGludCBzbG90bm8pCiAgKi8KIGludAogU2ltcGxl THJ1UmVhZFBhZ2UoU2xydUN0bCBjdGwsIGludDY0IHBhZ2VubywgYm9vbCB3cml0ZV9vaywKLQkJ CQkgIFRyYW5zYWN0aW9uSWQgeGlkKQorCQkJCSAgY29uc3Qgdm9pZCAqb3BhcXVlX2RhdGEpCiB7 CiAJU2xydVNoYXJlZAlzaGFyZWQgPSBjdGwtPnNoYXJlZDsKIAlMV0xvY2sJICAgKmJhbmtsb2Nr ID0gU2ltcGxlTHJ1R2V0QmFua0xvY2soY3RsLCBwYWdlbm8pOwogCisJQXNzZXJ0KGN0bC0+SW9F cnJvck1zZyAhPSBOVUxMKTsKKwogCUFzc2VydChMV0xvY2tIZWxkQnlNZUluTW9kZShiYW5rbG9j aywgTFdfRVhDTFVTSVZFKSk7CiAKIAkvKiBPdXRlciBsb29wIGhhbmRsZXMgcmVzdGFydCBpZiB3 ZSBtdXN0IHdhaXQgZm9yIHNvbWVvbmUgZWxzZSdzIEkvTyAqLwpAQCAtNjAxLDcgKzYwNCw3IEBA IFNpbXBsZUxydVJlYWRQYWdlKFNscnVDdGwgY3RsLCBpbnQ2NCBwYWdlbm8sIGJvb2wgd3JpdGVf b2ssCiAKIAkJLyogTm93IGl0J3Mgb2theSB0byBlcmVwb3J0IGlmIHdlIGZhaWxlZCAqLwogCQlp ZiAoIW9rKQotCQkJU2xydVJlcG9ydElPRXJyb3IoY3RsLCBwYWdlbm8sIHhpZCk7CisJCQlTbHJ1 UmVwb3J0SU9FcnJvcihjdGwsIHBhZ2Vubywgb3BhcXVlX2RhdGEpOwogCiAJCVNscnVSZWNlbnRs eVVzZWQoc2hhcmVkLCBzbG90bm8pOwogCkBAIC02MjcsNyArNjMwLDcgQEAgU2ltcGxlTHJ1UmVh ZFBhZ2UoU2xydUN0bCBjdGwsIGludDY0IHBhZ2VubywgYm9vbCB3cml0ZV9vaywKICAqIEl0IGlz IHVuc3BlY2lmaWVkIHdoZXRoZXIgdGhlIGxvY2sgd2lsbCBiZSBzaGFyZWQgb3IgZXhjbHVzaXZl LgogICovCiBpbnQKLVNpbXBsZUxydVJlYWRQYWdlX1JlYWRPbmx5KFNscnVDdGwgY3RsLCBpbnQ2 NCBwYWdlbm8sIFRyYW5zYWN0aW9uSWQgeGlkKQorU2ltcGxlTHJ1UmVhZFBhZ2VfUmVhZE9ubHko U2xydUN0bCBjdGwsIGludDY0IHBhZ2VubywgY29uc3Qgdm9pZCAqb3BhcXVlX2RhdGEpCiB7CiAJ U2xydVNoYXJlZAlzaGFyZWQgPSBjdGwtPnNoYXJlZDsKIAlMV0xvY2sJICAgKmJhbmtsb2NrID0g U2ltcGxlTHJ1R2V0QmFua0xvY2soY3RsLCBwYWdlbm8pOwpAQCAtNjU5LDcgKzY2Miw3IEBAIFNp bXBsZUxydVJlYWRQYWdlX1JlYWRPbmx5KFNscnVDdGwgY3RsLCBpbnQ2NCBwYWdlbm8sIFRyYW5z YWN0aW9uSWQgeGlkKQogCUxXTG9ja1JlbGVhc2UoYmFua2xvY2spOwogCUxXTG9ja0FjcXVpcmUo YmFua2xvY2ssIExXX0VYQ0xVU0lWRSk7CiAKLQlyZXR1cm4gU2ltcGxlTHJ1UmVhZFBhZ2UoY3Rs LCBwYWdlbm8sIHRydWUsIHhpZCk7CisJcmV0dXJuIFNpbXBsZUxydVJlYWRQYWdlKGN0bCwgcGFn ZW5vLCB0cnVlLCBvcGFxdWVfZGF0YSk7CiB9CiAKIC8qCkBAIC02ODEsNyArNjg0LDEwIEBAIFNs cnVJbnRlcm5hbFdyaXRlUGFnZShTbHJ1Q3RsIGN0bCwgaW50IHNsb3RubywgU2xydVdyaXRlQWxs IGZkYXRhKQogCWludAkJCWJhbmtubyA9IFNsb3RHZXRCYW5rTnVtYmVyKHNsb3Rubyk7CiAJYm9v bAkJb2s7CiAKKwlBc3NlcnQoY3RsLT5Jb0Vycm9yTXNnICE9IE5VTEwpOworCiAJQXNzZXJ0KHNo YXJlZC0+cGFnZV9zdGF0dXNbc2xvdG5vXSAhPSBTTFJVX1BBR0VfRU1QVFkpOworCiAJQXNzZXJ0 KExXTG9ja0hlbGRCeU1lSW5Nb2RlKFNpbXBsZUxydUdldEJhbmtMb2NrKGN0bCwgcGFnZW5vKSwg TFdfRVhDTFVTSVZFKSk7CiAKIAkvKiBJZiBhIHdyaXRlIGlzIGluIHByb2dyZXNzLCB3YWl0IGZv ciBpdCB0byBmaW5pc2ggKi8KQEAgLTczOSw3ICs3NDUsNyBAQCBTbHJ1SW50ZXJuYWxXcml0ZVBh Z2UoU2xydUN0bCBjdGwsIGludCBzbG90bm8sIFNscnVXcml0ZUFsbCBmZGF0YSkKIAogCS8qIE5v dyBpdCdzIG9rYXkgdG8gZXJlcG9ydCBpZiB3ZSBmYWlsZWQgKi8KIAlpZiAoIW9rKQotCQlTbHJ1 UmVwb3J0SU9FcnJvcihjdGwsIHBhZ2VubywgSW52YWxpZFRyYW5zYWN0aW9uSWQpOworCQlTbHJ1 UmVwb3J0SU9FcnJvcihjdGwsIHBhZ2VubywgTlVMTCk7CiAKIAkvKiBJZiBwYXJ0IG9mIGEgY2hl Y2twb2ludCwgY291bnQgdGhpcyBhcyBhIFNMUlUgYnVmZmVyIHdyaXR0ZW4uICovCiAJaWYgKGZk YXRhKQpAQCAtNzc4LDYgKzc4NCw4IEBAIFNpbXBsZUxydURvZXNQaHlzaWNhbFBhZ2VFeGlzdChT bHJ1Q3RsIGN0bCwgaW50NjQgcGFnZW5vKQogCWJvb2wJCXJlc3VsdDsKIAlvZmZfdAkJZW5kcG9z OwogCisJQXNzZXJ0KGN0bC0+SW9FcnJvck1zZyAhPSBOVUxMKTsKKwogCS8qIHVwZGF0ZSB0aGUg c3RhdHMgY291bnRlciBvZiBjaGVja2VkIHBhZ2VzICovCiAJcGdzdGF0X2NvdW50X3NscnVfYmxv Y2tzX2V4aXN0cyhjdGwtPnNoYXJlZC0+c2xydV9zdGF0c19pZHgpOwogCkBAIC0xMDcwLDEyICsx MDc4LDEzIEBAIFNscnVQaHlzaWNhbFdyaXRlUGFnZShTbHJ1Q3RsIGN0bCwgaW50NjQgcGFnZW5v LCBpbnQgc2xvdG5vLCBTbHJ1V3JpdGVBbGwgZmRhdGEpCiAgKiBTbHJ1UGh5c2ljYWxXcml0ZVBh Z2UuICBDYWxsIHRoaXMgYWZ0ZXIgY2xlYW5pbmcgdXAgc2hhcmVkLW1lbW9yeSBzdGF0ZS4KICAq Lwogc3RhdGljIHZvaWQKLVNscnVSZXBvcnRJT0Vycm9yKFNscnVDdGwgY3RsLCBpbnQ2NCBwYWdl bm8sIFRyYW5zYWN0aW9uSWQgeGlkKQorU2xydVJlcG9ydElPRXJyb3IoU2xydUN0bCBjdGwsIGlu dDY0IHBhZ2VubywgY29uc3Qgdm9pZCAqb3BhcXVlX2RhdGEpCiB7CiAJaW50NjQJCXNlZ25vID0g cGFnZW5vIC8gU0xSVV9QQUdFU19QRVJfU0VHTUVOVDsKIAlpbnQJCQlycGFnZW5vID0gcGFnZW5v ICUgU0xSVV9QQUdFU19QRVJfU0VHTUVOVDsKIAlpbnQJCQlvZmZzZXQgPSBycGFnZW5vICogQkxD S1NaOwogCWNoYXIJCXBhdGhbTUFYUEdQQVRIXTsKKwljaGFyCSAgICptc2cgPSBjdGwtPklvRXJy b3JNc2cob3BhcXVlX2RhdGEpOwogCiAJU2xydUZpbGVOYW1lKGN0bCwgcGF0aCwgc2Vnbm8pOwog CWVycm5vID0gc2xydV9lcnJubzsKQEAgLTEwODQsMTMgKzEwOTMsMTMgQEAgU2xydVJlcG9ydElP RXJyb3IoU2xydUN0bCBjdGwsIGludDY0IHBhZ2VubywgVHJhbnNhY3Rpb25JZCB4aWQpCiAJCWNh c2UgU0xSVV9PUEVOX0ZBSUxFRDoKIAkJCWVyZXBvcnQoRVJST1IsCiAJCQkJCShlcnJjb2RlX2Zv cl9maWxlX2FjY2VzcygpLAotCQkJCQkgZXJybXNnKCJjb3VsZCBub3QgYWNjZXNzIHN0YXR1cyBv ZiB0cmFuc2FjdGlvbiAldSIsIHhpZCksCisJCQkJCSBlcnJtc2coIiVzIiwgbXNnKSwKIAkJCQkJ IGVycmRldGFpbCgiQ291bGQgbm90IG9wZW4gZmlsZSBcIiVzXCI6ICVtLiIsIHBhdGgpKSk7CiAJ CQlicmVhazsKIAkJY2FzZSBTTFJVX1NFRUtfRkFJTEVEOgogCQkJZXJlcG9ydChFUlJPUiwKIAkJ CQkJKGVycmNvZGVfZm9yX2ZpbGVfYWNjZXNzKCksCi0JCQkJCSBlcnJtc2coImNvdWxkIG5vdCBh Y2Nlc3Mgc3RhdHVzIG9mIHRyYW5zYWN0aW9uICV1IiwgeGlkKSwKKwkJCQkJIGVycm1zZygiJXMi LCBtc2cpLAogCQkJCQkgZXJyZGV0YWlsKCJDb3VsZCBub3Qgc2VlayBpbiBmaWxlIFwiJXNcIiB0 byBvZmZzZXQgJWQ6ICVtLiIsCiAJCQkJCQkJICAgcGF0aCwgb2Zmc2V0KSkpOwogCQkJYnJlYWs7 CkBAIC0xMDk4LDM4ICsxMTA3LDM4IEBAIFNscnVSZXBvcnRJT0Vycm9yKFNscnVDdGwgY3RsLCBp bnQ2NCBwYWdlbm8sIFRyYW5zYWN0aW9uSWQgeGlkKQogCQkJaWYgKGVycm5vKQogCQkJCWVyZXBv cnQoRVJST1IsCiAJCQkJCQkoZXJyY29kZV9mb3JfZmlsZV9hY2Nlc3MoKSwKLQkJCQkJCSBlcnJt c2coImNvdWxkIG5vdCBhY2Nlc3Mgc3RhdHVzIG9mIHRyYW5zYWN0aW9uICV1IiwgeGlkKSwKKwkJ CQkJCSBlcnJtc2coIiVzIiwgbXNnKSwKIAkJCQkJCSBlcnJkZXRhaWwoIkNvdWxkIG5vdCByZWFk IGZyb20gZmlsZSBcIiVzXCIgYXQgb2Zmc2V0ICVkOiAlbS4iLAogCQkJCQkJCQkgICBwYXRoLCBv ZmZzZXQpKSk7CiAJCQllbHNlCiAJCQkJZXJlcG9ydChFUlJPUiwKLQkJCQkJCShlcnJtc2coImNv dWxkIG5vdCBhY2Nlc3Mgc3RhdHVzIG9mIHRyYW5zYWN0aW9uICV1IiwgeGlkKSwKKwkJCQkJCShl cnJtc2coIiVzIiwgbXNnKSwKIAkJCQkJCSBlcnJkZXRhaWwoIkNvdWxkIG5vdCByZWFkIGZyb20g ZmlsZSBcIiVzXCIgYXQgb2Zmc2V0ICVkOiByZWFkIHRvbyBmZXcgYnl0ZXMuIiwgcGF0aCwgb2Zm c2V0KSkpOwogCQkJYnJlYWs7CiAJCWNhc2UgU0xSVV9XUklURV9GQUlMRUQ6CiAJCQlpZiAoZXJy bm8pCiAJCQkJZXJlcG9ydChFUlJPUiwKIAkJCQkJCShlcnJjb2RlX2Zvcl9maWxlX2FjY2Vzcygp LAotCQkJCQkJIGVycm1zZygiY291bGQgbm90IGFjY2VzcyBzdGF0dXMgb2YgdHJhbnNhY3Rpb24g JXUiLCB4aWQpLAorCQkJCQkJIGVycm1zZygiJXMiLCBtc2cpLAogCQkJCQkJIGVycmRldGFpbCgi Q291bGQgbm90IHdyaXRlIHRvIGZpbGUgXCIlc1wiIGF0IG9mZnNldCAlZDogJW0uIiwKIAkJCQkJ CQkJICAgcGF0aCwgb2Zmc2V0KSkpOwogCQkJZWxzZQogCQkJCWVyZXBvcnQoRVJST1IsCi0JCQkJ CQkoZXJybXNnKCJjb3VsZCBub3QgYWNjZXNzIHN0YXR1cyBvZiB0cmFuc2FjdGlvbiAldSIsIHhp ZCksCisJCQkJCQkoZXJybXNnKCIlcyIsIG1zZyksCiAJCQkJCQkgZXJyZGV0YWlsKCJDb3VsZCBu b3Qgd3JpdGUgdG8gZmlsZSBcIiVzXCIgYXQgb2Zmc2V0ICVkOiB3cm90ZSB0b28gZmV3IGJ5dGVz LiIsCiAJCQkJCQkJCSAgIHBhdGgsIG9mZnNldCkpKTsKIAkJCWJyZWFrOwogCQljYXNlIFNMUlVf RlNZTkNfRkFJTEVEOgogCQkJZXJlcG9ydChkYXRhX3N5bmNfZWxldmVsKEVSUk9SKSwKIAkJCQkJ KGVycmNvZGVfZm9yX2ZpbGVfYWNjZXNzKCksCi0JCQkJCSBlcnJtc2coImNvdWxkIG5vdCBhY2Nl c3Mgc3RhdHVzIG9mIHRyYW5zYWN0aW9uICV1IiwgeGlkKSwKKwkJCQkJIGVycm1zZygiJXMiLCBt c2cpLAogCQkJCQkgZXJyZGV0YWlsKCJDb3VsZCBub3QgZnN5bmMgZmlsZSBcIiVzXCI6ICVtLiIs CiAJCQkJCQkJICAgcGF0aCkpKTsKIAkJCWJyZWFrOwogCQljYXNlIFNMUlVfQ0xPU0VfRkFJTEVE OgogCQkJZXJlcG9ydChFUlJPUiwKIAkJCQkJKGVycmNvZGVfZm9yX2ZpbGVfYWNjZXNzKCksCi0J CQkJCSBlcnJtc2coImNvdWxkIG5vdCBhY2Nlc3Mgc3RhdHVzIG9mIHRyYW5zYWN0aW9uICV1Iiwg eGlkKSwKKwkJCQkJIGVycm1zZygiJXMiLCBtc2cpLAogCQkJCQkgZXJyZGV0YWlsKCJDb3VsZCBu b3QgY2xvc2UgZmlsZSBcIiVzXCI6ICVtLiIsCiAJCQkJCQkJICAgcGF0aCkpKTsKIAkJCWJyZWFr OwpAQCAtMTM1Miw2ICsxMzYxLDggQEAgU2ltcGxlTHJ1V3JpdGVBbGwoU2xydUN0bCBjdGwsIGJv b2wgYWxsb3dfcmVkaXJ0aWVkKQogCWludAkJCXByZXZiYW5rID0gU2xvdEdldEJhbmtOdW1iZXIo MCk7CiAJYm9vbAkJb2s7CiAKKwlBc3NlcnQoY3RsLT5Jb0Vycm9yTXNnICE9IE5VTEwpOworCiAJ LyogdXBkYXRlIHRoZSBzdGF0cyBjb3VudGVyIG9mIGZsdXNoZXMgKi8KIAlwZ3N0YXRfY291bnRf c2xydV9mbHVzaChzaGFyZWQtPnNscnVfc3RhdHNfaWR4KTsKIApAQCAtMTQxMSw3ICsxNDIyLDcg QEAgU2ltcGxlTHJ1V3JpdGVBbGwoU2xydUN0bCBjdGwsIGJvb2wgYWxsb3dfcmVkaXJ0aWVkKQog CQl9CiAJfQogCWlmICghb2spCi0JCVNscnVSZXBvcnRJT0Vycm9yKGN0bCwgcGFnZW5vLCBJbnZh bGlkVHJhbnNhY3Rpb25JZCk7CisJCVNscnVSZXBvcnRJT0Vycm9yKGN0bCwgcGFnZW5vLCBOVUxM KTsKIAogCS8qIEVuc3VyZSB0aGF0IGRpcmVjdG9yeSBlbnRyaWVzIGZvciBuZXcgZmlsZXMgYXJl IG9uIGRpc2suICovCiAJaWYgKGN0bC0+c3luY19oYW5kbGVyICE9IFNZTkNfSEFORExFUl9OT05F KQpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvYWNjZXNzL3RyYW5zYW0vc3VidHJhbnMuYyBiL3Ny Yy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL3N1YnRyYW5zLmMKaW5kZXggYzA5ODdmNDNmMTEuLjM3 ZjFmNzRhYjM2IDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS9zdWJ0cmFu cy5jCisrKyBiL3NyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL3N1YnRyYW5zLmMKQEAgLTk1LDcg Kzk1LDcgQEAgU3ViVHJhbnNTZXRQYXJlbnQoVHJhbnNhY3Rpb25JZCB4aWQsIFRyYW5zYWN0aW9u SWQgcGFyZW50KQogCWxvY2sgPSBTaW1wbGVMcnVHZXRCYW5rTG9jayhTdWJUcmFuc0N0bCwgcGFn ZW5vKTsKIAlMV0xvY2tBY3F1aXJlKGxvY2ssIExXX0VYQ0xVU0lWRSk7CiAKLQlzbG90bm8gPSBT aW1wbGVMcnVSZWFkUGFnZShTdWJUcmFuc0N0bCwgcGFnZW5vLCB0cnVlLCB4aWQpOworCXNsb3Ru byA9IFNpbXBsZUxydVJlYWRQYWdlKFN1YlRyYW5zQ3RsLCBwYWdlbm8sIHRydWUsICZ4aWQpOwog CXB0ciA9IChUcmFuc2FjdGlvbklkICopIFN1YlRyYW5zQ3RsLT5zaGFyZWQtPnBhZ2VfYnVmZmVy W3Nsb3Rub107CiAJcHRyICs9IGVudHJ5bm87CiAKQEAgLTEzNSw3ICsxMzUsNyBAQCBTdWJUcmFu c0dldFBhcmVudChUcmFuc2FjdGlvbklkIHhpZCkKIAogCS8qIGxvY2sgaXMgYWNxdWlyZWQgYnkg U2ltcGxlTHJ1UmVhZFBhZ2VfUmVhZE9ubHkgKi8KIAotCXNsb3RubyA9IFNpbXBsZUxydVJlYWRQ YWdlX1JlYWRPbmx5KFN1YlRyYW5zQ3RsLCBwYWdlbm8sIHhpZCk7CisJc2xvdG5vID0gU2ltcGxl THJ1UmVhZFBhZ2VfUmVhZE9ubHkoU3ViVHJhbnNDdGwsIHBhZ2VubywgJnhpZCk7CiAJcHRyID0g KFRyYW5zYWN0aW9uSWQgKikgU3ViVHJhbnNDdGwtPnNoYXJlZC0+cGFnZV9idWZmZXJbc2xvdG5v XTsKIAlwdHIgKz0gZW50cnlubzsKIApAQCAtMjQwLDYgKzI0MCw3IEBAIFNVQlRSQU5TU2htZW1J bml0KHZvaWQpCiAJQXNzZXJ0KHN1YnRyYW5zYWN0aW9uX2J1ZmZlcnMgIT0gMCk7CiAKIAlTdWJU cmFuc0N0bC0+UGFnZVByZWNlZGVzID0gU3ViVHJhbnNQYWdlUHJlY2VkZXM7CisJU3ViVHJhbnND dGwtPklvRXJyb3JNc2cgPSBUcmFuc2FjdGlvbklkSW9FcnJvck1zZzsKIAlTaW1wbGVMcnVJbml0 KFN1YlRyYW5zQ3RsLCAic3VidHJhbnNhY3Rpb24iLCBTVUJUUkFOU1NobWVtQnVmZmVycygpLCAw LAogCQkJCSAgInBnX3N1YnRyYW5zIiwgTFdUUkFOQ0hFX1NVQlRSQU5TX0JVRkZFUiwKIAkJCQkg IExXVFJBTkNIRV9TVUJUUkFOU19TTFJVLCBTWU5DX0hBTkRMRVJfTk9ORSwgZmFsc2UpOwpkaWZm IC0tZ2l0IGEvc3JjL2JhY2tlbmQvY29tbWFuZHMvYXN5bmMuYyBiL3NyYy9iYWNrZW5kL2NvbW1h bmRzL2FzeW5jLmMKaW5kZXggNjU3YzU5MTYxOGQuLmEzNDc5OTZiMzczIDEwMDY0NAotLS0gYS9z cmMvYmFja2VuZC9jb21tYW5kcy9hc3luYy5jCisrKyBiL3NyYy9iYWNrZW5kL2NvbW1hbmRzL2Fz eW5jLmMKQEAgLTgyOSw2ICs4MjksNyBAQCBBc3luY1NobWVtSW5pdCh2b2lkKQogCSAqIG5hbWVz IGFyZSB1c2VkIGluIG9yZGVyIHRvIGF2b2lkIHdyYXBhcm91bmQuCiAJICovCiAJTm90aWZ5Q3Rs LT5QYWdlUHJlY2VkZXMgPSBhc3luY1F1ZXVlUGFnZVByZWNlZGVzOworCU5vdGlmeUN0bC0+SW9F cnJvck1zZyA9IFRyYW5zYWN0aW9uSWRJb0Vycm9yTXNnOwogCVNpbXBsZUxydUluaXQoTm90aWZ5 Q3RsLCAibm90aWZ5Iiwgbm90aWZ5X2J1ZmZlcnMsIDAsCiAJCQkJICAicGdfbm90aWZ5IiwgTFdU UkFOQ0hFX05PVElGWV9CVUZGRVIsIExXVFJBTkNIRV9OT1RJRllfU0xSVSwKIAkJCQkgIFNZTkNf SEFORExFUl9OT05FLCB0cnVlKTsKQEAgLTIwNjcsOCArMjA2OCw3IEBAIGFzeW5jUXVldWVBZGRF bnRyaWVzKExpc3RDZWxsICpuZXh0Tm90aWZ5KQogCWlmIChRVUVVRV9QT1NfSVNfWkVSTyhxdWV1 ZV9oZWFkKSkKIAkJc2xvdG5vID0gU2ltcGxlTHJ1WmVyb1BhZ2UoTm90aWZ5Q3RsLCBwYWdlbm8p OwogCWVsc2UKLQkJc2xvdG5vID0gU2ltcGxlTHJ1UmVhZFBhZ2UoTm90aWZ5Q3RsLCBwYWdlbm8s IHRydWUsCi0JCQkJCQkJCSAgIEludmFsaWRUcmFuc2FjdGlvbklkKTsKKwkJc2xvdG5vID0gU2lt cGxlTHJ1UmVhZFBhZ2UoTm90aWZ5Q3RsLCBwYWdlbm8sIHRydWUsIE5VTEwpOwogCiAJLyogTm90 ZSB3ZSBtYXJrIHRoZSBwYWdlIGRpcnR5IGJlZm9yZSB3cml0aW5nIGluIGl0ICovCiAJTm90aWZ5 Q3RsLT5zaGFyZWQtPnBhZ2VfZGlydHlbc2xvdG5vXSA9IHRydWU7CkBAIC0yNzM4LDggKzI3Mzgs NyBAQCBhc3luY1F1ZXVlUHJvY2Vzc1BhZ2VFbnRyaWVzKFF1ZXVlUG9zaXRpb24gKmN1cnJlbnQs CiAJYWxpZ25hcyhBc3luY1F1ZXVlRW50cnkpIGNoYXIgbG9jYWxfYnVmW1FVRVVFX1BBR0VTSVpF XTsKIAljaGFyCSAgICpsb2NhbF9idWZfZW5kID0gbG9jYWxfYnVmOwogCi0Jc2xvdG5vID0gU2lt cGxlTHJ1UmVhZFBhZ2VfUmVhZE9ubHkoTm90aWZ5Q3RsLCBjdXJwYWdlLAotCQkJCQkJCQkJCUlu dmFsaWRUcmFuc2FjdGlvbklkKTsKKwlzbG90bm8gPSBTaW1wbGVMcnVSZWFkUGFnZV9SZWFkT25s eShOb3RpZnlDdGwsIGN1cnBhZ2UsIE5VTEwpOwogCXBhZ2VfYnVmZmVyID0gTm90aWZ5Q3RsLT5z aGFyZWQtPnBhZ2VfYnVmZmVyW3Nsb3Rub107CiAKIAlkbwpAQCAtMjk5Nyw4ICsyOTk2LDcgQEAg QXN5bmNOb3RpZnlGcmVlemVYaWRzKFRyYW5zYWN0aW9uSWQgbmV3RnJvemVuWGlkKQogCiAJCQls b2NrID0gU2ltcGxlTHJ1R2V0QmFua0xvY2soTm90aWZ5Q3RsLCBwYWdlbm8pOwogCQkJTFdMb2Nr QWNxdWlyZShsb2NrLCBMV19FWENMVVNJVkUpOwotCQkJc2xvdG5vID0gU2ltcGxlTHJ1UmVhZFBh Z2UoTm90aWZ5Q3RsLCBwYWdlbm8sIHRydWUsCi0JCQkJCQkJCQkgICBJbnZhbGlkVHJhbnNhY3Rp b25JZCk7CisJCQlzbG90bm8gPSBTaW1wbGVMcnVSZWFkUGFnZShOb3RpZnlDdGwsIHBhZ2Vubywg dHJ1ZSwgTlVMTCk7CiAJCQlwYWdlX2J1ZmZlciA9IE5vdGlmeUN0bC0+c2hhcmVkLT5wYWdlX2J1 ZmZlcltzbG90bm9dOwogCQkJY3VycGFnZSA9IHBhZ2VubzsKIAkJfQpkaWZmIC0tZ2l0IGEvc3Jj L2JhY2tlbmQvc3RvcmFnZS9sbWdyL3ByZWRpY2F0ZS5jIGIvc3JjL2JhY2tlbmQvc3RvcmFnZS9s bWdyL3ByZWRpY2F0ZS5jCmluZGV4IGZlNzVlYWQzNTAxLi43MjhmYjNjMzA1ZCAxMDA2NDQKLS0t IGEvc3JjL2JhY2tlbmQvc3RvcmFnZS9sbWdyL3ByZWRpY2F0ZS5jCisrKyBiL3NyYy9iYWNrZW5k L3N0b3JhZ2UvbG1nci9wcmVkaWNhdGUuYwpAQCAtODExLDYgKzgxMSw3IEBAIFNlcmlhbEluaXQo dm9pZCkKIAkgKiBTZXQgdXAgU0xSVSBtYW5hZ2VtZW50IG9mIHRoZSBwZ19zZXJpYWwgZGF0YS4K IAkgKi8KIAlTZXJpYWxTbHJ1Q3RsLT5QYWdlUHJlY2VkZXMgPSBTZXJpYWxQYWdlUHJlY2VkZXNM b2dpY2FsbHk7CisJU2VyaWFsU2xydUN0bC0+SW9FcnJvck1zZyA9IFRyYW5zYWN0aW9uSWRJb0Vy cm9yTXNnOwogCVNpbXBsZUxydUluaXQoU2VyaWFsU2xydUN0bCwgInNlcmlhbGl6YWJsZSIsCiAJ CQkJICBzZXJpYWxpemFibGVfYnVmZmVycywgMCwgInBnX3NlcmlhbCIsCiAJCQkJICBMV1RSQU5D SEVfU0VSSUFMX0JVRkZFUiwgTFdUUkFOQ0hFX1NFUklBTF9TTFJVLApAQCAtOTMwLDcgKzkzMSw3 IEBAIFNlcmlhbEFkZChUcmFuc2FjdGlvbklkIHhpZCwgU2VyQ29tbWl0U2VxTm8gbWluQ29uZmxp Y3RDb21taXRTZXFObykKIAllbHNlCiAJewogCQlMV0xvY2tBY3F1aXJlKGxvY2ssIExXX0VYQ0xV U0lWRSk7Ci0JCXNsb3RubyA9IFNpbXBsZUxydVJlYWRQYWdlKFNlcmlhbFNscnVDdGwsIHRhcmdl dFBhZ2UsIHRydWUsIHhpZCk7CisJCXNsb3RubyA9IFNpbXBsZUxydVJlYWRQYWdlKFNlcmlhbFNs cnVDdGwsIHRhcmdldFBhZ2UsIHRydWUsICZ4aWQpOwogCX0KIAogCVNlcmlhbFZhbHVlKHNsb3Ru bywgeGlkKSA9IG1pbkNvbmZsaWN0Q29tbWl0U2VxTm87CkBAIC05NzQsNyArOTc1LDcgQEAgU2Vy aWFsR2V0TWluQ29uZmxpY3RDb21taXRTZXFObyhUcmFuc2FjdGlvbklkIHhpZCkKIAkgKiBidXQg d2lsbCByZXR1cm4gd2l0aCB0aGF0IGxvY2sgaGVsZCwgd2hpY2ggbXVzdCB0aGVuIGJlIHJlbGVh c2VkLgogCSAqLwogCXNsb3RubyA9IFNpbXBsZUxydVJlYWRQYWdlX1JlYWRPbmx5KFNlcmlhbFNs cnVDdGwsCi0JCQkJCQkJCQkJU2VyaWFsUGFnZSh4aWQpLCB4aWQpOworCQkJCQkJCQkJCVNlcmlh bFBhZ2UoeGlkKSwgJnhpZCk7CiAJdmFsID0gU2VyaWFsVmFsdWUoc2xvdG5vLCB4aWQpOwogCUxX TG9ja1JlbGVhc2UoU2ltcGxlTHJ1R2V0QmFua0xvY2soU2VyaWFsU2xydUN0bCwgU2VyaWFsUGFn ZSh4aWQpKSk7CiAJcmV0dXJuIHZhbDsKZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL2FjY2Vzcy9z bHJ1LmggYi9zcmMvaW5jbHVkZS9hY2Nlc3Mvc2xydS5oCmluZGV4IDRjYjhmNDc4ZmNlLi42NzI0 NzM2NWQxNiAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvYWNjZXNzL3NscnUuaAorKysgYi9zcmMv aW5jbHVkZS9hY2Nlc3Mvc2xydS5oCkBAIC0xMyw2ICsxMyw3IEBACiAjaWZuZGVmIFNMUlVfSAog I2RlZmluZSBTTFJVX0gKIAorI2luY2x1ZGUgImFjY2Vzcy90cmFuc2FtLmgiCiAjaW5jbHVkZSAi YWNjZXNzL3hsb2dkZWZzLmgiCiAjaW5jbHVkZSAic3RvcmFnZS9sd2xvY2suaCIKICNpbmNsdWRl ICJzdG9yYWdlL3N5bmMuaCIKQEAgLTE0NiwxMCArMTQ3LDMxIEBAIHR5cGVkZWYgc3RydWN0IFNs cnVDdGxEYXRhCiAJICogaXQncyBhbHdheXMgdGhlIHNhbWUsIGl0IGRvZXNuJ3QgbmVlZCB0byBi ZSBpbiBzaGFyZWQgbWVtb3J5LgogCSAqLwogCWNoYXIJCURpcls2NF07CisKKwkvKgorCSAqIENh bGxiYWNrIGZvciBjcmVhdGluZyBhbiBJL08gZXJyb3IgbWVzc2FnZS4KKwkgKgorCSAqIFRoZSBv cGFxdWVfZGF0YSBhcmd1bWVudCBoZXJlIGlzIHRoZSBzYW1lIG9uZSB0aGF0IGlzIHBhc3NlZCB0 byB0aGUKKwkgKiBTaW1wbGVMcnVSZWFkUGFnZSogY2FsbHMuCisJICovCisJY2hhcgkgICAqKCpJ b0Vycm9yTXNnKShjb25zdCB2b2lkICpvcGFxdWVfZGF0YSk7CiB9IFNscnVDdGxEYXRhOwogCiB0 eXBlZGVmIFNscnVDdGxEYXRhICpTbHJ1Q3RsOwogCisvKgorICogSGlzdG9yaWNhbGx5LCB0aGlz IG1vZHVsZSB3YXMgZGVzaWduZWQgZm9yIGhhbmRsaW5nIHRyYW5zYWN0aW9uIElEcywKKyAqIHRo ZXJlZm9yZSB0aGlzIGlzIHRoZSBtb3N0IGNvbW1vbiB1c2UgY2FzZS4gVGh1cywgbWFrZSBpdCBw dWJsaWNseSBhdmFpbGFibGUuCisgKi8KK3N0YXRpYyBpbmxpbmUgY2hhciAqCitUcmFuc2FjdGlv bklkSW9FcnJvck1zZyhjb25zdCB2b2lkICpvcGFxdWVfZGF0YSkKK3sKKwlUcmFuc2FjdGlvbklk IHhpZCA9IG9wYXF1ZV9kYXRhID8gKCooVHJhbnNhY3Rpb25JZCAqKSBvcGFxdWVfZGF0YSkgOgor CQkJCQkJCQkJICBJbnZhbGlkVHJhbnNhY3Rpb25JZDsKKworCXJldHVybiBwc3ByaW50ZigiY291 bGQgbm90IGFjY2VzcyBzdGF0dXMgb2YgdHJhbnNhY3Rpb24gJXUiLCB4aWQpOworfQorCiAvKgog ICogR2V0IHRoZSBTTFJVIGJhbmsgbG9jayBmb3IgZ2l2ZW4gU2xydUN0bCBhbmQgdGhlIHBhZ2Vu by4KICAqCkBAIC0xNzQsOSArMTk2LDkgQEAgZXh0ZXJuIHZvaWQgU2ltcGxlTHJ1SW5pdChTbHJ1 Q3RsIGN0bCwgY29uc3QgY2hhciAqbmFtZSwgaW50IG5zbG90cywgaW50IG5sc25zLAogZXh0ZXJu IGludAlTaW1wbGVMcnVaZXJvUGFnZShTbHJ1Q3RsIGN0bCwgaW50NjQgcGFnZW5vKTsKIGV4dGVy biB2b2lkIFNpbXBsZUxydVplcm9BbmRXcml0ZVBhZ2UoU2xydUN0bCBjdGwsIGludDY0IHBhZ2Vu byk7CiBleHRlcm4gaW50CVNpbXBsZUxydVJlYWRQYWdlKFNscnVDdGwgY3RsLCBpbnQ2NCBwYWdl bm8sIGJvb2wgd3JpdGVfb2ssCi0JCQkJCQkJICBUcmFuc2FjdGlvbklkIHhpZCk7CisJCQkJCQkJ ICBjb25zdCB2b2lkICpvcGFxdWVfZGF0YSk7CiBleHRlcm4gaW50CVNpbXBsZUxydVJlYWRQYWdl X1JlYWRPbmx5KFNscnVDdGwgY3RsLCBpbnQ2NCBwYWdlbm8sCi0JCQkJCQkJCQkgICBUcmFuc2Fj dGlvbklkIHhpZCk7CisJCQkJCQkJCQkgICBjb25zdCB2b2lkICpvcGFxdWVfZGF0YSk7CiBleHRl cm4gdm9pZCBTaW1wbGVMcnVXcml0ZVBhZ2UoU2xydUN0bCBjdGwsIGludCBzbG90bm8pOwogZXh0 ZXJuIHZvaWQgU2ltcGxlTHJ1V3JpdGVBbGwoU2xydUN0bCBjdGwsIGJvb2wgYWxsb3dfcmVkaXJ0 aWVkKTsKICNpZmRlZiBVU0VfQVNTRVJUX0NIRUNLSU5HCmRpZmYgLS1naXQgYS9zcmMvdGVzdC9t b2R1bGVzL3Rlc3Rfc2xydS90ZXN0X3NscnUuYyBiL3NyYy90ZXN0L21vZHVsZXMvdGVzdF9zbHJ1 L3Rlc3Rfc2xydS5jCmluZGV4IDRkYzc0ZTE5NjIwLi41OWNlNDkwMDE3MyAxMDA2NDQKLS0tIGEv c3JjL3Rlc3QvbW9kdWxlcy90ZXN0X3NscnUvdGVzdF9zbHJ1LmMKKysrIGIvc3JjL3Rlc3QvbW9k dWxlcy90ZXN0X3NscnUvdGVzdF9zbHJ1LmMKQEAgLTEwMCw3ICsxMDAsNyBAQCB0ZXN0X3NscnVf cGFnZV9yZWFkKFBHX0ZVTkNUSU9OX0FSR1MpCiAJLyogZmluZCBwYWdlIGluIGJ1ZmZlcnMsIHJl YWRpbmcgaXQgaWYgbmVjZXNzYXJ5ICovCiAJTFdMb2NrQWNxdWlyZShsb2NrLCBMV19FWENMVVNJ VkUpOwogCXNsb3RubyA9IFNpbXBsZUxydVJlYWRQYWdlKFRlc3RTbHJ1Q3RsLCBwYWdlbm8sCi0J CQkJCQkJICAgd3JpdGVfb2ssIEludmFsaWRUcmFuc2FjdGlvbklkKTsKKwkJCQkJCQkgICB3cml0 ZV9vaywgTlVMTCk7CiAJZGF0YSA9IChjaGFyICopIFRlc3RTbHJ1Q3RsLT5zaGFyZWQtPnBhZ2Vf YnVmZmVyW3Nsb3Rub107CiAJTFdMb2NrUmVsZWFzZShsb2NrKTsKIApAQCAtMTE4LDcgKzExOCw3 IEBAIHRlc3Rfc2xydV9wYWdlX3JlYWRvbmx5KFBHX0ZVTkNUSU9OX0FSR1MpCiAJLyogZmluZCBw YWdlIGluIGJ1ZmZlcnMsIHJlYWRpbmcgaXQgaWYgbmVjZXNzYXJ5ICovCiAJc2xvdG5vID0gU2lt cGxlTHJ1UmVhZFBhZ2VfUmVhZE9ubHkoVGVzdFNscnVDdGwsCiAJCQkJCQkJCQkJcGFnZW5vLAot CQkJCQkJCQkJCUludmFsaWRUcmFuc2FjdGlvbklkKTsKKwkJCQkJCQkJCQlOVUxMKTsKIAlBc3Nl cnQoTFdMb2NrSGVsZEJ5TWUobG9jaykpOwogCWRhdGEgPSAoY2hhciAqKSBUZXN0U2xydUN0bC0+ c2hhcmVkLT5wYWdlX2J1ZmZlcltzbG90bm9dOwogCUxXTG9ja1JlbGVhc2UobG9jayk7CkBAIC0y NDUsNiArMjQ1LDcgQEAgdGVzdF9zbHJ1X3NobWVtX3N0YXJ0dXAodm9pZCkKIAl9CiAKIAlUZXN0 U2xydUN0bC0+UGFnZVByZWNlZGVzID0gdGVzdF9zbHJ1X3BhZ2VfcHJlY2VkZXNfbG9naWNhbGx5 OworCVRlc3RTbHJ1Q3RsLT5Jb0Vycm9yTXNnID0gVHJhbnNhY3Rpb25JZElvRXJyb3JNc2c7CiAJ U2ltcGxlTHJ1SW5pdChUZXN0U2xydUN0bCwgIlRlc3RTTFJVIiwKIAkJCQkgIE5VTV9URVNUX0JV RkZFUlMsIDAsIHNscnVfZGlyX25hbWUsCiAJCQkJICB0ZXN0X2J1ZmZlcl90cmFuY2hlX2lkLCB0 ZXN0X3RyYW5jaGVfaWQsIFNZTkNfSEFORExFUl9OT05FLAotLSAKMi41MC4xIChBcHBsZSBHaXQt MTU1KQoK --00000000000096321f064ba80b3f Content-Type: application/octet-stream; name="v2-0004-Use-custom-SLRU-IO-error-msg-for-multixact.patch" Content-Disposition: attachment; filename="v2-0004-Use-custom-SLRU-IO-error-msg-for-multixact.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mm27pocs4 RnJvbSBjZGU3N2M4ZGRhZjJiNTdjMzlmMjNmMmE1YzE0MzFjOTcwZTM4NTFjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBNYXhpbSBPcmxvdiA8b3Jsb3ZtZ0BnbWFpbC5jb20+CkRhdGU6 IFdlZCwgMjUgRmViIDIwMjYgMTg6MjA6MDEgKzAzMDAKU3ViamVjdDogW1BBVENIIHYyIDQvNV0g VXNlIGN1c3RvbSBTTFJVIElPIGVycm9yIG1zZyBmb3IgbXVsdGl4YWN0CgotLS0KIHNyYy9iYWNr ZW5kL2FjY2Vzcy90cmFuc2FtL211bHRpeGFjdC5jIHwgMjQgKysrKysrKysrKysrKysrKysrKyst LS0tCiAxIGZpbGUgY2hhbmdlZCwgMjAgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRp ZmYgLS1naXQgYS9zcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS9tdWx0aXhhY3QuYyBiL3NyYy9i YWNrZW5kL2FjY2Vzcy90cmFuc2FtL211bHRpeGFjdC5jCmluZGV4IDYzZDUyNTY4MjNlLi4zNGRh YWNhZTgyYiAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvYWNjZXNzL3RyYW5zYW0vbXVsdGl4YWN0 LmMKKysrIGIvc3JjL2JhY2tlbmQvYWNjZXNzL3RyYW5zYW0vbXVsdGl4YWN0LmMKQEAgLTg4MSw3 ICs4ODEsOCBAQCBSZWNvcmROZXdNdWx0aVhhY3QoTXVsdGlYYWN0SWQgbXVsdGksIE11bHRpWGFj dE9mZnNldCBvZmZzZXQsCiAJCQkJTFdMb2NrQWNxdWlyZShsb2NrLCBMV19FWENMVVNJVkUpOwog CQkJCXByZXZsb2NrID0gbG9jazsKIAkJCX0KLQkJCXNsb3RubyA9IFNpbXBsZUxydVJlYWRQYWdl KE11bHRpWGFjdE1lbWJlckN0bCwgcGFnZW5vLCB0cnVlLCAmbXVsdGkpOworCQkJc2xvdG5vID0g U2ltcGxlTHJ1UmVhZFBhZ2UoTXVsdGlYYWN0TWVtYmVyQ3RsLCBwYWdlbm8sIHRydWUsCisJCQkJ CQkJCQkgICAmb2Zmc2V0KTsKIAkJCXByZXZfcGFnZW5vID0gcGFnZW5vOwogCQl9CiAKQEAgLTEz MDksNyArMTMxMCw4IEBAIEdldE11bHRpWGFjdElkTWVtYmVycyhNdWx0aVhhY3RJZCBtdWx0aSwg TXVsdGlYYWN0TWVtYmVyICoqbWVtYmVycywKIAkJCQlsb2NrID0gbmV3bG9jazsKIAkJCX0KIAot CQkJc2xvdG5vID0gU2ltcGxlTHJ1UmVhZFBhZ2UoTXVsdGlYYWN0TWVtYmVyQ3RsLCBwYWdlbm8s IHRydWUsICZtdWx0aSk7CisJCQlzbG90bm8gPSBTaW1wbGVMcnVSZWFkUGFnZShNdWx0aVhhY3RN ZW1iZXJDdGwsIHBhZ2VubywgdHJ1ZSwKKwkJCQkJCQkJCSAgICZvZmZzZXQpOwogCQkJcHJldl9w YWdlbm8gPSBwYWdlbm87CiAJCX0KIApAQCAtMTcyMCw2ICsxNzIyLDIwIEBAIE11bHRpWGFjdFNo bWVtU2l6ZSh2b2lkKQogCXJldHVybiBzaXplOwogfQogCitzdGF0aWMgaW5saW5lIGNoYXIgKgor TXVsdGlYYWN0T2Zmc2V0SW9FcnJvck1zZyhjb25zdCB2b2lkICpvcGFxdWVfZGF0YSkKK3sKKwly ZXR1cm4gcHNwcmludGYoImNvdWxkIG5vdCBhY2Nlc3Mgc3RhdHVzIG9mIG11bHRpeGFjdCBvZmZz ZXQgJXUiLAorCQkJCQkqKE11bHRpWGFjdElkICopIG9wYXF1ZV9kYXRhKTsKK30KKworc3RhdGlj IGlubGluZSBjaGFyICoKK011bHRpWGFjdE1lbWJlcklvRXJyb3JNc2coY29uc3Qgdm9pZCAqb3Bh cXVlX2RhdGEpCit7CisJcmV0dXJuIHBzcHJpbnRmKCJjb3VsZCBub3QgYWNjZXNzIHN0YXR1cyBv ZiBtdWx0aXhhY3QgbWVtYmVyICUiIFBSSXU2NCwKKwkJCQkJKihNdWx0aVhhY3RPZmZzZXQgKikg b3BhcXVlX2RhdGEpOworfQorCiB2b2lkCiBNdWx0aVhhY3RTaG1lbUluaXQodm9pZCkKIHsKQEAg LTE3MzAsOCArMTc0Niw4IEBAIE11bHRpWGFjdFNobWVtSW5pdCh2b2lkKQogCU11bHRpWGFjdE9m ZnNldEN0bC0+UGFnZVByZWNlZGVzID0gTXVsdGlYYWN0T2Zmc2V0UGFnZVByZWNlZGVzOwogCU11 bHRpWGFjdE1lbWJlckN0bC0+UGFnZVByZWNlZGVzID0gTXVsdGlYYWN0TWVtYmVyUGFnZVByZWNl ZGVzOwogCi0JTXVsdGlYYWN0T2Zmc2V0Q3RsLT5Jb0Vycm9yTXNnID0gVHJhbnNhY3Rpb25JZElv RXJyb3JNc2c7Ci0JTXVsdGlYYWN0TWVtYmVyQ3RsLT5Jb0Vycm9yTXNnID0gVHJhbnNhY3Rpb25J ZElvRXJyb3JNc2c7CisJTXVsdGlYYWN0T2Zmc2V0Q3RsLT5Jb0Vycm9yTXNnID0gTXVsdGlYYWN0 T2Zmc2V0SW9FcnJvck1zZzsKKwlNdWx0aVhhY3RNZW1iZXJDdGwtPklvRXJyb3JNc2cgPSBNdWx0 aVhhY3RNZW1iZXJJb0Vycm9yTXNnOwogCiAJU2ltcGxlTHJ1SW5pdChNdWx0aVhhY3RPZmZzZXRD dGwsCiAJCQkJICAibXVsdGl4YWN0X29mZnNldCIsIG11bHRpeGFjdF9vZmZzZXRfYnVmZmVycywg MCwKLS0gCjIuNTAuMSAoQXBwbGUgR2l0LTE1NSkKCg== --00000000000096321f064ba80b3f Content-Type: application/octet-stream; name="v2-0003-Use-custom-SLRU-IO-error-msg-for-an-asynchronous-.patch" Content-Disposition: attachment; filename="v2-0003-Use-custom-SLRU-IO-error-msg-for-an-asynchronous-.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mm27poco3 RnJvbSAzNWM4ZDc4YWM1MGZhYzUxMWZmODgwNWExYWFkMzQzNjlhNmFiYjg2IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBNYXhpbSBPcmxvdiA8b3Jsb3ZtZ0BnbWFpbC5jb20+CkRhdGU6 IFdlZCwgMjUgRmViIDIwMjYgMTg6MDQ6MTMgKzAzMDAKU3ViamVjdDogW1BBVENIIHYyIDMvNV0g VXNlIGN1c3RvbSBTTFJVIElPIGVycm9yIG1zZyBmb3IgYW4gYXN5bmNocm9ub3VzCiBub3RpZmlj YXRpb24KCi0tLQogc3JjL2JhY2tlbmQvY29tbWFuZHMvYXN5bmMuYyB8IDIwICsrKysrKysrKysr KysrKystLS0tCiAxIGZpbGUgY2hhbmdlZCwgMTYgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMo LSkKCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9jb21tYW5kcy9hc3luYy5jIGIvc3JjL2JhY2tl bmQvY29tbWFuZHMvYXN5bmMuYwppbmRleCBhMzQ3OTk2YjM3My4uMzAyZjdjNTJhOWYgMTAwNjQ0 Ci0tLSBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL2FzeW5jLmMKKysrIGIvc3JjL2JhY2tlbmQvY29t bWFuZHMvYXN5bmMuYwpAQCAtNTY5LDYgKzU2OSw3IEBAIGJvb2wJCVRyYWNlX25vdGlmeSA9IGZh bHNlOwogaW50CQkJbWF4X25vdGlmeV9xdWV1ZV9wYWdlcyA9IDEwNDg1NzY7CiAKIC8qIGxvY2Fs IGZ1bmN0aW9uIHByb3RvdHlwZXMgKi8KK3N0YXRpYyBpbmxpbmUgY2hhciAqYXN5bmNRdWV1ZUlv RXJyb3JNc2coY29uc3Qgdm9pZCAqb3BhcXVlX2RhdGEpOwogc3RhdGljIGlubGluZSBpbnQ2NCBh c3luY1F1ZXVlUGFnZURpZmYoaW50NjQgcCwgaW50NjQgcSk7CiBzdGF0aWMgaW5saW5lIGJvb2wg YXN5bmNRdWV1ZVBhZ2VQcmVjZWRlcyhpbnQ2NCBwLCBpbnQ2NCBxKTsKIHN0YXRpYyBpbmxpbmUg dm9pZCBHbG9iYWxDaGFubmVsS2V5SW5pdChHbG9iYWxDaGFubmVsS2V5ICprZXksIE9pZCBkYm9p ZCwKQEAgLTYwOSw2ICs2MTAsMTcgQEAgc3RhdGljIHVpbnQzMiBub3RpZmljYXRpb25faGFzaChj b25zdCB2b2lkICprZXksIFNpemUga2V5c2l6ZSk7CiBzdGF0aWMgaW50CW5vdGlmaWNhdGlvbl9t YXRjaChjb25zdCB2b2lkICprZXkxLCBjb25zdCB2b2lkICprZXkyLCBTaXplIGtleXNpemUpOwog c3RhdGljIHZvaWQgQ2xlYXJQZW5kaW5nQWN0aW9uc0FuZE5vdGlmaWVzKHZvaWQpOwogCitzdGF0 aWMgaW5saW5lIGNoYXIgKgorYXN5bmNRdWV1ZUlvRXJyb3JNc2coY29uc3Qgdm9pZCAqb3BhcXVl X2RhdGEpCit7CisJY29uc3QgUXVldWVQb3NpdGlvbiAqcG9zaXRpb24gPSBvcGFxdWVfZGF0YTsK KworCUFzc2VydChwb3NpdGlvbiAhPSBOVUxMKTsKKworCXJldHVybiBwc3ByaW50ZigiY291bGQg bm90IGFjY2VzcyBzdGF0dXMgb2YgYXN5bmMgcXVldWUgcG9zaXRpb24gKHBhZ2U9JSIgUFJJZDY0 Iiwgb2Zmc2V0PSVkKSIsCisJCQkJCXBvc2l0aW9uLT5wYWdlLCBwb3NpdGlvbi0+b2Zmc2V0KTsK K30KKwogLyoKICAqIENvbXB1dGUgdGhlIGRpZmZlcmVuY2UgYmV0d2VlbiB0d28gcXVldWUgcGFn ZSBudW1iZXJzLgogICogUHJldmlvdXNseSB0aGlzIGZ1bmN0aW9uIGFjY291bnRlZCBmb3IgYSB3 cmFwYXJvdW5kLgpAQCAtODI5LDcgKzg0MSw3IEBAIEFzeW5jU2htZW1Jbml0KHZvaWQpCiAJICog bmFtZXMgYXJlIHVzZWQgaW4gb3JkZXIgdG8gYXZvaWQgd3JhcGFyb3VuZC4KIAkgKi8KIAlOb3Rp ZnlDdGwtPlBhZ2VQcmVjZWRlcyA9IGFzeW5jUXVldWVQYWdlUHJlY2VkZXM7Ci0JTm90aWZ5Q3Rs LT5Jb0Vycm9yTXNnID0gVHJhbnNhY3Rpb25JZElvRXJyb3JNc2c7CisJTm90aWZ5Q3RsLT5Jb0Vy cm9yTXNnID0gYXN5bmNRdWV1ZUlvRXJyb3JNc2c7CiAJU2ltcGxlTHJ1SW5pdChOb3RpZnlDdGws ICJub3RpZnkiLCBub3RpZnlfYnVmZmVycywgMCwKIAkJCQkgICJwZ19ub3RpZnkiLCBMV1RSQU5D SEVfTk9USUZZX0JVRkZFUiwgTFdUUkFOQ0hFX05PVElGWV9TTFJVLAogCQkJCSAgU1lOQ19IQU5E TEVSX05PTkUsIHRydWUpOwpAQCAtMjA2OCw3ICsyMDgwLDcgQEAgYXN5bmNRdWV1ZUFkZEVudHJp ZXMoTGlzdENlbGwgKm5leHROb3RpZnkpCiAJaWYgKFFVRVVFX1BPU19JU19aRVJPKHF1ZXVlX2hl YWQpKQogCQlzbG90bm8gPSBTaW1wbGVMcnVaZXJvUGFnZShOb3RpZnlDdGwsIHBhZ2Vubyk7CiAJ ZWxzZQotCQlzbG90bm8gPSBTaW1wbGVMcnVSZWFkUGFnZShOb3RpZnlDdGwsIHBhZ2VubywgdHJ1 ZSwgTlVMTCk7CisJCXNsb3RubyA9IFNpbXBsZUxydVJlYWRQYWdlKE5vdGlmeUN0bCwgcGFnZW5v LCB0cnVlLCAmcXVldWVfaGVhZCk7CiAKIAkvKiBOb3RlIHdlIG1hcmsgdGhlIHBhZ2UgZGlydHkg YmVmb3JlIHdyaXRpbmcgaW4gaXQgKi8KIAlOb3RpZnlDdGwtPnNoYXJlZC0+cGFnZV9kaXJ0eVtz bG90bm9dID0gdHJ1ZTsKQEAgLTI3MzgsNyArMjc1MCw3IEBAIGFzeW5jUXVldWVQcm9jZXNzUGFn ZUVudHJpZXMoUXVldWVQb3NpdGlvbiAqY3VycmVudCwKIAlhbGlnbmFzKEFzeW5jUXVldWVFbnRy eSkgY2hhciBsb2NhbF9idWZbUVVFVUVfUEFHRVNJWkVdOwogCWNoYXIJICAgKmxvY2FsX2J1Zl9l bmQgPSBsb2NhbF9idWY7CiAKLQlzbG90bm8gPSBTaW1wbGVMcnVSZWFkUGFnZV9SZWFkT25seShO b3RpZnlDdGwsIGN1cnBhZ2UsIE5VTEwpOworCXNsb3RubyA9IFNpbXBsZUxydVJlYWRQYWdlX1Jl YWRPbmx5KE5vdGlmeUN0bCwgY3VycGFnZSwgY3VycmVudCk7CiAJcGFnZV9idWZmZXIgPSBOb3Rp ZnlDdGwtPnNoYXJlZC0+cGFnZV9idWZmZXJbc2xvdG5vXTsKIAogCWRvCkBAIC0yOTk2LDcgKzMw MDgsNyBAQCBBc3luY05vdGlmeUZyZWV6ZVhpZHMoVHJhbnNhY3Rpb25JZCBuZXdGcm96ZW5YaWQp CiAKIAkJCWxvY2sgPSBTaW1wbGVMcnVHZXRCYW5rTG9jayhOb3RpZnlDdGwsIHBhZ2Vubyk7CiAJ CQlMV0xvY2tBY3F1aXJlKGxvY2ssIExXX0VYQ0xVU0lWRSk7Ci0JCQlzbG90bm8gPSBTaW1wbGVM cnVSZWFkUGFnZShOb3RpZnlDdGwsIHBhZ2VubywgdHJ1ZSwgTlVMTCk7CisJCQlzbG90bm8gPSBT aW1wbGVMcnVSZWFkUGFnZShOb3RpZnlDdGwsIHBhZ2VubywgdHJ1ZSwgJnBvcyk7CiAJCQlwYWdl X2J1ZmZlciA9IE5vdGlmeUN0bC0+c2hhcmVkLT5wYWdlX2J1ZmZlcltzbG90bm9dOwogCQkJY3Vy cGFnZSA9IHBhZ2VubzsKIAkJfQotLSAKMi41MC4xIChBcHBsZSBHaXQtMTU1KQoK --00000000000096321f064ba80b3f Content-Type: application/octet-stream; name="v2-0005-Avoid-misleading-user-about-status-of-InvalidTran.patch" Content-Disposition: attachment; filename="v2-0005-Avoid-misleading-user-about-status-of-InvalidTran.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mm27pocw5 RnJvbSBhOWFkZGVkMTVkMTgyNTE5MDU5YWFlOWU3NTk4YWUyY2YxNGRkOGFkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBNYXhpbSBPcmxvdiA8b3Jsb3ZtZ0BnbWFpbC5jb20+CkRhdGU6 IFdlZCwgMjUgRmViIDIwMjYgMTg6MjA6MzIgKzAzMDAKU3ViamVjdDogW1BBVENIIHYyIDUvNV0g QXZvaWQgbWlzbGVhZGluZyB1c2VyIGFib3V0IHN0YXR1cyBvZgogSW52YWxpZFRyYW5zYWN0aW9u SWQKCkluIHNvbWUgY2FzZXMsIHdlIHVzZSB0aGUgYWNjZXNzIFNMUlUgcGFnZSB3aXRob3V0IHNw ZWNpZnlpbmcgdGhlIFhJRC4KSWYgYW4gZXJyb3Igb2NjdXJzLCB5b3UgbWF5IHJlY2VpdmUgYSBt ZXNzYWdlIGFib3V0IHRoZSBpbmFiaWxpdHkgdG8Kb2J0YWluIHN0YXR1cyBvZiB0cmFuc2FjdGlv biAwLCBldmVuIHRob3VnaCB0aGUgcGFnZSBhcHBlYXJzIHRvIGJlIHNhbmUuClRvIGF2b2lkIHRo aXMsIHVzZSBhIG1vcmUgZ2VuZXJhbCBmb3JtdWxhdGlvbiBpbiBjYXNlIFhJRCBpcyBpbnZhbGlk LgotLS0KIHNyYy9pbmNsdWRlL2FjY2Vzcy9zbHJ1LmggfCA3ICsrKystLS0KIDEgZmlsZSBjaGFu Z2VkLCA0IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjL2lu Y2x1ZGUvYWNjZXNzL3NscnUuaCBiL3NyYy9pbmNsdWRlL2FjY2Vzcy9zbHJ1LmgKaW5kZXggNjcy NDczNjVkMTYuLjlhNmM3NzEwMWMyIDEwMDY0NAotLS0gYS9zcmMvaW5jbHVkZS9hY2Nlc3Mvc2xy dS5oCisrKyBiL3NyYy9pbmNsdWRlL2FjY2Vzcy9zbHJ1LmgKQEAgLTE2NiwxMCArMTY2LDExIEBA IHR5cGVkZWYgU2xydUN0bERhdGEgKlNscnVDdGw7CiBzdGF0aWMgaW5saW5lIGNoYXIgKgogVHJh bnNhY3Rpb25JZElvRXJyb3JNc2coY29uc3Qgdm9pZCAqb3BhcXVlX2RhdGEpCiB7Ci0JVHJhbnNh Y3Rpb25JZCB4aWQgPSBvcGFxdWVfZGF0YSA/ICgqKFRyYW5zYWN0aW9uSWQgKikgb3BhcXVlX2Rh dGEpIDoKLQkJCQkJCQkJCSAgSW52YWxpZFRyYW5zYWN0aW9uSWQ7CisJaWYgKG9wYXF1ZV9kYXRh KQorCQlyZXR1cm4gcHNwcmludGYoImNvdWxkIG5vdCBhY2Nlc3Mgc3RhdHVzIG9mIHRyYW5zYWN0 aW9uICV1IiwKKwkJCQkJCSooVHJhbnNhY3Rpb25JZCAqKSBvcGFxdWVfZGF0YSk7CiAKLQlyZXR1 cm4gcHNwcmludGYoImNvdWxkIG5vdCBhY2Nlc3Mgc3RhdHVzIG9mIHRyYW5zYWN0aW9uICV1Iiwg eGlkKTsKKwlyZXR1cm4gcHNwcmludGYoImNvdWxkIG5vdCBhY2Nlc3Mgc2xydSBlbnRyeSIpOwkv KiBJbnZhbGlkVHJhbnNhY3Rpb25JZCAqLwogfQogCiAvKgotLSAKMi41MC4xIChBcHBsZSBHaXQt MTU1KQoK --00000000000096321f064ba80b3f--