From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_PASS autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1C1A9C26641 for ; Sun, 20 Jan 2019 19:12:12 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id B7E8420880 for ; Sun, 20 Jan 2019 19:12:11 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727553AbfATTML (ORCPT ); Sun, 20 Jan 2019 14:12:11 -0500 Received: from shards.monkeyblade.net ([23.128.96.9]:38992 "EHLO shards.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727440AbfATTML (ORCPT ); Sun, 20 Jan 2019 14:12:11 -0500 Received: from localhost (unknown [IPv6:2601:601:9f80:35cd::bf5]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (Client did not present a certificate) (Authenticated sender: davem-davemloft) by shards.monkeyblade.net (Postfix) with ESMTPSA id A61E214C048B0 for ; Sun, 20 Jan 2019 11:12:09 -0800 (PST) Date: Sun, 20 Jan 2019 11:12:06 -0800 (PST) Message-Id: <20190120.111206.462091799490575242.davem@davemloft.net> To: stable@vger.kernel.org Subject: [PATCHES] Networking From: David Miller X-Mailer: Mew version 6.8 on Emacs 26.1 Mime-Version: 1.0 Content-Type: Multipart/Mixed; boundary="--Next_Part(Sun_Jan_20_11_12_06_2019_013)--" Content-Transfer-Encoding: 7bit X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.5.12 (shards.monkeyblade.net [149.20.54.216]); Sun, 20 Jan 2019 11:12:10 -0800 (PST) Sender: stable-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: stable@vger.kernel.org ----Next_Part(Sun_Jan_20_11_12_06_2019_013)-- Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Please queue up the following networking bug fixes for v4.19 and v4.20 -stable, respectively. Thank you. ----Next_Part(Sun_Jan_20_11_12_06_2019_013)-- Content-Type: Application/Octet-Stream Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="net_419.mbox" RnJvbSA3MDk4NzQyMzRiYWVlNWE4OGZmMGEwNjIwN2NhMDc5OTAwNjM4ODdlIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBFcmljIER1bWF6ZXQgPGVkdW1hemV0QGdvb2dsZS5jb20+CkRh dGU6IFR1ZSwgOCBKYW4gMjAxOSAwNDowNjoxNCAtMDgwMApTdWJqZWN0OiBbUEFUQ0ggMDEvMTFd IGlwdjY6IGZpeCBrZXJuZWwtaW5mb2xlYWsgaW4gaXB2Nl9sb2NhbF9lcnJvcigpCgpbIFVwc3Ry ZWFtIGNvbW1pdCA3ZDAzM2M5ZjZhN2ZkMzgyMWFmNzU2MjBhMDI1N2RiODdjMmI1NTJhIF0KClRo aXMgcGF0Y2ggbWFrZXMgc3VyZSB0aGUgZmxvdyBsYWJlbCBpbiB0aGUgSVB2NiBoZWFkZXIKZm9y Z2VkIGluIGlwdjZfbG9jYWxfZXJyb3IoKSBpcyBpbml0aWFsaXplZC4KCkJVRzogS01TQU46IGtl cm5lbC1pbmZvbGVhayBpbiBfY29weV90b191c2VyKzB4MTZiLzB4MWYwIGxpYi91c2VyY29weS5j OjMyCkNQVTogMSBQSUQ6IDI0Njc1IENvbW06IHN5ei1leGVjdXRvcjEgTm90IHRhaW50ZWQgNC4y MC4wLXJjNysgIzQKSGFyZHdhcmUgbmFtZTogR29vZ2xlIEdvb2dsZSBDb21wdXRlIEVuZ2luZS9H b29nbGUgQ29tcHV0ZSBFbmdpbmUsIEJJT1MgR29vZ2xlIDAxLzAxLzIwMTEKQ2FsbCBUcmFjZToK IF9fZHVtcF9zdGFjayBsaWIvZHVtcF9zdGFjay5jOjc3IFtpbmxpbmVdCiBkdW1wX3N0YWNrKzB4 MTczLzB4MWQwIGxpYi9kdW1wX3N0YWNrLmM6MTEzCiBrbXNhbl9yZXBvcnQrMHgxMmUvMHgyYTAg bW0va21zYW4va21zYW4uYzo2MTMKIGttc2FuX2ludGVybmFsX2NoZWNrX21lbW9yeSsweDQ1NS8w eGIwMCBtbS9rbXNhbi9rbXNhbi5jOjY3NQoga21zYW5fY29weV90b191c2VyKzB4YWIvMHhjMCBt bS9rbXNhbi9rbXNhbl9ob29rcy5jOjYwMQogX2NvcHlfdG9fdXNlcisweDE2Yi8weDFmMCBsaWIv dXNlcmNvcHkuYzozMgogY29weV90b191c2VyIGluY2x1ZGUvbGludXgvdWFjY2Vzcy5oOjE3NyBb aW5saW5lXQogbW92ZV9hZGRyX3RvX3VzZXIrMHgyZTkvMHg0ZjAgbmV0L3NvY2tldC5jOjIyNwog X19fc3lzX3JlY3Ztc2crMHg1ZDcvMHgxMTQwIG5ldC9zb2NrZXQuYzoyMjg0CiBfX3N5c19yZWN2 bXNnIG5ldC9zb2NrZXQuYzoyMzI3IFtpbmxpbmVdCiBfX2RvX3N5c19yZWN2bXNnIG5ldC9zb2Nr ZXQuYzoyMzM3IFtpbmxpbmVdCiBfX3NlX3N5c19yZWN2bXNnKzB4MmZhLzB4NDUwIG5ldC9zb2Nr ZXQuYzoyMzM0CiBfX3g2NF9zeXNfcmVjdm1zZysweDRhLzB4NzAgbmV0L3NvY2tldC5jOjIzMzQK IGRvX3N5c2NhbGxfNjQrMHhiYy8weGYwIGFyY2gveDg2L2VudHJ5L2NvbW1vbi5jOjI5MQogZW50 cnlfU1lTQ0FMTF82NF9hZnRlcl9od2ZyYW1lKzB4NjMvMHhlNwpSSVA6IDAwMzM6MHg0NTdlYzkK Q29kZTogNmQgYjcgZmIgZmYgYzMgNjYgMmUgMGYgMWYgODQgMDAgMDAgMDAgMDAgMDAgNjYgOTAg NDggODkgZjggNDggODkgZjcgNDggODkgZDYgNDggODkgY2EgNGQgODkgYzIgNGQgODkgYzggNGMg OGIgNGMgMjQgMDggMGYgMDUgPDQ4PiAzZCAwMSBmMCBmZiBmZiAwZiA4MyAzYiBiNyBmYiBmZiBj MyA2NiAyZSAwZiAxZiA4NCAwMCAwMCAwMCAwMApSU1A6IDAwMmI6MDAwMDdmODc1MGMwNmM3OCBF RkxBR1M6IDAwMDAwMjQ2IE9SSUdfUkFYOiAwMDAwMDAwMDAwMDAwMDJmClJBWDogZmZmZmZmZmZm ZmZmZmZkYSBSQlg6IDAwMDAwMDAwMDAwMDAwMDMgUkNYOiAwMDAwMDAwMDAwNDU3ZWM5ClJEWDog MDAwMDAwMDAwMDAwMjAwMCBSU0k6IDAwMDAwMDAwMjAwMDA0MDAgUkRJOiAwMDAwMDAwMDAwMDAw MDA1ClJCUDogMDAwMDAwMDAwMDczYmYwMCBSMDg6IDAwMDAwMDAwMDAwMDAwMDAgUjA5OiAwMDAw MDAwMDAwMDAwMDAwClIxMDogMDAwMDAwMDAwMDAwMDAwMCBSMTE6IDAwMDAwMDAwMDAwMDAyNDYg UjEyOiAwMDAwN2Y4NzUwYzA3NmQ0ClIxMzogMDAwMDAwMDAwMDRjNGE2MCBSMTQ6IDAwMDAwMDAw MDA0ZDgxNDAgUjE1OiAwMDAwMDAwMGZmZmZmZmZmCgpVbmluaXQgd2FzIHN0b3JlZCB0byBtZW1v cnkgYXQ6CiBrbXNhbl9zYXZlX3N0YWNrX3dpdGhfZmxhZ3MgbW0va21zYW4va21zYW4uYzoyMDQg W2lubGluZV0KIGttc2FuX3NhdmVfc3RhY2sgbW0va21zYW4va21zYW4uYzoyMTkgW2lubGluZV0K IGttc2FuX2ludGVybmFsX2NoYWluX29yaWdpbisweDEzNC8weDIzMCBtbS9rbXNhbi9rbXNhbi5j OjQzOQogX19tc2FuX2NoYWluX29yaWdpbisweDcwLzB4ZTAgbW0va21zYW4va21zYW5faW5zdHIu YzoyMDAKIGlwdjZfcmVjdl9lcnJvcisweDFlM2YvMHgxZWIwIG5ldC9pcHY2L2RhdGFncmFtLmM6 NDc1CiB1ZHB2Nl9yZWN2bXNnKzB4Mzk4LzB4MmFiMCBuZXQvaXB2Ni91ZHAuYzozMzUKIGluZXRf cmVjdm1zZysweDRmYi8weDYwMCBuZXQvaXB2NC9hZl9pbmV0LmM6ODMwCiBzb2NrX3JlY3Ztc2df bm9zZWMgbmV0L3NvY2tldC5jOjc5NCBbaW5saW5lXQogc29ja19yZWN2bXNnKzB4MWQxLzB4MjMw IG5ldC9zb2NrZXQuYzo4MDEKIF9fX3N5c19yZWN2bXNnKzB4NGQ1LzB4MTE0MCBuZXQvc29ja2V0 LmM6MjI3OAogX19zeXNfcmVjdm1zZyBuZXQvc29ja2V0LmM6MjMyNyBbaW5saW5lXQogX19kb19z eXNfcmVjdm1zZyBuZXQvc29ja2V0LmM6MjMzNyBbaW5saW5lXQogX19zZV9zeXNfcmVjdm1zZysw eDJmYS8weDQ1MCBuZXQvc29ja2V0LmM6MjMzNAogX194NjRfc3lzX3JlY3Ztc2crMHg0YS8weDcw IG5ldC9zb2NrZXQuYzoyMzM0CiBkb19zeXNjYWxsXzY0KzB4YmMvMHhmMCBhcmNoL3g4Ni9lbnRy eS9jb21tb24uYzoyOTEKIGVudHJ5X1NZU0NBTExfNjRfYWZ0ZXJfaHdmcmFtZSsweDYzLzB4ZTcK ClVuaW5pdCB3YXMgY3JlYXRlZCBhdDoKIGttc2FuX3NhdmVfc3RhY2tfd2l0aF9mbGFncyBtbS9r bXNhbi9rbXNhbi5jOjIwNCBbaW5saW5lXQoga21zYW5faW50ZXJuYWxfcG9pc29uX3NoYWRvdysw eDkyLzB4MTUwIG1tL2ttc2FuL2ttc2FuLmM6MTU4CiBrbXNhbl9rbWFsbG9jKzB4YTYvMHgxMzAg bW0va21zYW4va21zYW5faG9va3MuYzoxNzYKIGttc2FuX3NsYWJfYWxsb2MrMHhlLzB4MTAgbW0v a21zYW4va21zYW5faG9va3MuYzoxODUKIHNsYWJfcG9zdF9hbGxvY19ob29rIG1tL3NsYWIuaDo0 NDYgW2lubGluZV0KIHNsYWJfYWxsb2Nfbm9kZSBtbS9zbHViLmM6Mjc1OSBbaW5saW5lXQogX19r bWFsbG9jX25vZGVfdHJhY2tfY2FsbGVyKzB4ZTE4LzB4MTAzMCBtbS9zbHViLmM6NDM4MwogX19r bWFsbG9jX3Jlc2VydmUgbmV0L2NvcmUvc2tidWZmLmM6MTM3IFtpbmxpbmVdCiBfX2FsbG9jX3Nr YisweDMwOS8weGEyMCBuZXQvY29yZS9za2J1ZmYuYzoyMDUKIGFsbG9jX3NrYiBpbmNsdWRlL2xp bnV4L3NrYnVmZi5oOjk5OCBbaW5saW5lXQogaXB2Nl9sb2NhbF9lcnJvcisweDFhNy8weDllMCBu ZXQvaXB2Ni9kYXRhZ3JhbS5jOjMzNAogX19pcDZfYXBwZW5kX2RhdGErMHgxMjlmLzB4NGZkMCBu ZXQvaXB2Ni9pcDZfb3V0cHV0LmM6MTMxMQogaXA2X21ha2Vfc2tiKzB4NmNjLzB4Y2YwIG5ldC9p cHY2L2lwNl9vdXRwdXQuYzoxNzc1CiB1ZHB2Nl9zZW5kbXNnKzB4M2Y4ZS8weDQ1ZDAgbmV0L2lw djYvdWRwLmM6MTM4NAogaW5ldF9zZW5kbXNnKzB4NTRhLzB4NzIwIG5ldC9pcHY0L2FmX2luZXQu Yzo3OTgKIHNvY2tfc2VuZG1zZ19ub3NlYyBuZXQvc29ja2V0LmM6NjIxIFtpbmxpbmVdCiBzb2Nr X3NlbmRtc2cgbmV0L3NvY2tldC5jOjYzMSBbaW5saW5lXQogX19zeXNfc2VuZHRvKzB4OGM0LzB4 YWMwIG5ldC9zb2NrZXQuYzoxNzg4CiBfX2RvX3N5c19zZW5kdG8gbmV0L3NvY2tldC5jOjE4MDAg W2lubGluZV0KIF9fc2Vfc3lzX3NlbmR0bysweDEwNy8weDEzMCBuZXQvc29ja2V0LmM6MTc5Ngog X194NjRfc3lzX3NlbmR0bysweDZlLzB4OTAgbmV0L3NvY2tldC5jOjE3OTYKIGRvX3N5c2NhbGxf NjQrMHhiYy8weGYwIGFyY2gveDg2L2VudHJ5L2NvbW1vbi5jOjI5MQogZW50cnlfU1lTQ0FMTF82 NF9hZnRlcl9od2ZyYW1lKzB4NjMvMHhlNwoKQnl0ZXMgNC03IG9mIDI4IGFyZSB1bmluaXRpYWxp emVkCk1lbW9yeSBhY2Nlc3Mgb2Ygc2l6ZSAyOCBzdGFydHMgYXQgZmZmZjg4ODE5MzdiZmNlMApE YXRhIGNvcGllZCB0byB1c2VyIGFkZHJlc3MgMDAwMDAwMDAyMDAwMDAwMAoKU2lnbmVkLW9mZi1i eTogRXJpYyBEdW1hemV0IDxlZHVtYXpldEBnb29nbGUuY29tPgpSZXBvcnRlZC1ieTogc3l6Ym90 IDxzeXprYWxsZXJAZ29vZ2xlZ3JvdXBzLmNvbT4KU2lnbmVkLW9mZi1ieTogRGF2aWQgUy4gTWls bGVyIDxkYXZlbUBkYXZlbWxvZnQubmV0PgotLS0KIG5ldC9pcHY2L2RhdGFncmFtLmMgfCAxICsK IDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKQoKZGlmZiAtLWdpdCBhL25ldC9pcHY2L2Rh dGFncmFtLmMgYi9uZXQvaXB2Ni9kYXRhZ3JhbS5jCmluZGV4IDFlZGU3YTE2YTBiZS4uN2IwOTA1 NzhmMDQ0IDEwMDY0NAotLS0gYS9uZXQvaXB2Ni9kYXRhZ3JhbS5jCisrKyBiL25ldC9pcHY2L2Rh dGFncmFtLmMKQEAgLTM0MSw2ICszNDEsNyBAQCB2b2lkIGlwdjZfbG9jYWxfZXJyb3Ioc3RydWN0 IHNvY2sgKnNrLCBpbnQgZXJyLCBzdHJ1Y3QgZmxvd2k2ICpmbDYsIHUzMiBpbmZvKQogCXNrYl9y ZXNldF9uZXR3b3JrX2hlYWRlcihza2IpOwogCWlwaCA9IGlwdjZfaGRyKHNrYik7CiAJaXBoLT5k YWRkciA9IGZsNi0+ZGFkZHI7CisJaXA2X2Zsb3dfaGRyKGlwaCwgMCwgMCk7CiAKIAlzZXJyID0g U0tCX0VYVF9FUlIoc2tiKTsKIAlzZXJyLT5lZS5lZV9lcnJubyA9IGVycjsKLS0gCjIuMjAuMQoK CkZyb20gNjlkZDY4ZDI2MmU0MTkzZjJiZjkzNmM4M2E4ZWNlNmEzMjg2MjA2MiBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogSmlhbkpoZW4gQ2hlbiA8a2NoZW5Ac3lub2xvZ3kuY29tPgpE YXRlOiBTdW4sIDYgSmFuIDIwMTkgMTE6Mjg6MTMgKzA4MDAKU3ViamVjdDogW1BBVENIIDAyLzEx XSBuZXQ6IGJyaWRnZTogZml4IGEgYnVnIG9uIHVzaW5nIGEgbmVpZ2hib3VyIGNhY2hlIGVudHJ5 CiB3aXRob3V0IGNoZWNraW5nIGl0cyBzdGF0ZQoKWyBVcHN0cmVhbSBjb21taXQgNGM4NGVkYzEx Yjc2NTkwODU5YjFlNDVkZDY3NjA3NGM1OTYwMmRjNCBdCgpXaGVuIGhhbmRsaW5nIEROQVQnZWQg cGFja2V0cyBvbiBhIGJyaWRnZSBkZXZpY2UsIHRoZSBuZWlnaGJvdXIgY2FjaGUgZW50cnkKZnJv bSBsb29rdXAgd2FzIHVzZWQgd2l0aG91dCBjaGVja2luZyBpdHMgc3RhdGUuIEl0IG1lYW5zIHRo YXQgYSBjYWNoZSBlbnRyeQppbiB0aGUgTlVEX1NUQUxFIHN0YXRlIHdpbGwgYmUgdXNlZCBkaXJl Y3RseSBpbnN0ZWFkIG9mIGVudGVyaW5nIHRoZSBOVURfREVMQVkKc3RhdGUgdG8gY29uZmlybSB0 aGUgcmVhY2hhYmlsaXR5IG9mIHRoZSBuZWlnaGJvci4KClRoaXMgcHJvYmxlbSBiZWNvbWVzIHdv cnNlIGFmdGVyIGNvbW1pdCAyNzI0NjgwYmNlZWUgKCJuZWlnaDogS2VlcCBuZWlnaGJvdXIKY2Fj aGUgZW50cmllcyBpZiBudW1iZXIgb2YgdGhlbSBpcyBzbWFsbCBlbm91Z2guIiksIHNpbmNlIGFs bCBuZWlnaGJvdXIgY2FjaGUKZW50cmllcyBpbiB0aGUgTlVEX1NUQUxFIHN0YXRlIHdpbGwgYmUg a2VwdCBpbiB0aGUgbmVpZ2hib3VyIHRhYmxlIGFzIGxvbmcgYXMKdGhlIG51bWJlciBvZiBjYWNo ZSBlbnRyaWVzIGRvZXMgbm90IGV4Y2VlZCB0aGUgdmFsdWUgc3BlY2lmaWVkIGluIGdjX3RocmVz aDEuCgpUaGlzIGNvbW1pdCB2YWxpZGF0ZXMgdGhlIHN0YXRlIG9mIGEgbmVpZ2hib3VyIGNhY2hl IGVudHJ5IGJlZm9yZSB1c2luZwp0aGUgZW50cnkuCgpTaWduZWQtb2ZmLWJ5OiBKaWFuSmhlbiBD aGVuIDxrY2hlbkBzeW5vbG9neS5jb20+ClJldmlld2VkLWJ5OiBKaW5MaW4gQ2hlbiA8amxjaGVu QHN5bm9sb2d5LmNvbT4KU2lnbmVkLW9mZi1ieTogRGF2aWQgUy4gTWlsbGVyIDxkYXZlbUBkYXZl bWxvZnQubmV0PgotLS0KIG5ldC9icmlkZ2UvYnJfbmV0ZmlsdGVyX2hvb2tzLmMgfCAyICstCiAx IGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQg YS9uZXQvYnJpZGdlL2JyX25ldGZpbHRlcl9ob29rcy5jIGIvbmV0L2JyaWRnZS9icl9uZXRmaWx0 ZXJfaG9va3MuYwppbmRleCAzNzI3OGRjMjgwZWIuLmUwN2E3ZTYyYzcwNSAxMDA2NDQKLS0tIGEv bmV0L2JyaWRnZS9icl9uZXRmaWx0ZXJfaG9va3MuYworKysgYi9uZXQvYnJpZGdlL2JyX25ldGZp bHRlcl9ob29rcy5jCkBAIC0yNzgsNyArMjc4LDcgQEAgaW50IGJyX25mX3ByZV9yb3V0aW5nX2Zp bmlzaF9icmlkZ2Uoc3RydWN0IG5ldCAqbmV0LCBzdHJ1Y3Qgc29jayAqc2ssIHN0cnVjdCBza18K IAkJc3RydWN0IG5mX2JyaWRnZV9pbmZvICpuZl9icmlkZ2UgPSBuZl9icmlkZ2VfaW5mb19nZXQo c2tiKTsKIAkJaW50IHJldDsKIAotCQlpZiAobmVpZ2gtPmhoLmhoX2xlbikgeworCQlpZiAoKG5l aWdoLT5udWRfc3RhdGUgJiBOVURfQ09OTkVDVEVEKSAmJiBuZWlnaC0+aGguaGhfbGVuKSB7CiAJ CQluZWlnaF9oaF9icmlkZ2UoJm5laWdoLT5oaCwgc2tiKTsKIAkJCXNrYi0+ZGV2ID0gbmZfYnJp ZGdlLT5waHlzaW5kZXY7CiAJCQlyZXQgPSBicl9oYW5kbGVfZnJhbWVfZmluaXNoKG5ldCwgc2ss IHNrYik7Ci0tIAoyLjIwLjEKCgpGcm9tIGY0NWY0OWY2Yjg4M2ZkOGMyYzllMDViYzdlYTUxODZj NTAxMGIwMWYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEphc29uIEd1bnRob3JwZSA8 amdnQG1lbGxhbm94LmNvbT4KRGF0ZTogVHVlLCA4IEphbiAyMDE5IDIzOjI3OjA2ICswMDAwClN1 YmplY3Q6IFtQQVRDSCAwMy8xMV0gcGFja2V0OiBEbyBub3QgbGVhayBkZXYgcmVmY291bnRzIG9u IGVycm9yIGV4aXQKClsgVXBzdHJlYW0gY29tbWl0IGQ5NzJmM2RjZThkMTYxZTIxNDJkYTBhYjFl ZjI1ZGYwMGUyZjIxYTkgXQoKJ2RldicgaXMgbm9uIE5VTEwgd2hlbiB0aGUgYWRkcl9sZW4gY2hl Y2sgdHJpZ2dlcnMgc28gaXQgbXVzdCBnb3RvIGEgbGFiZWwKdGhhdCBkb2VzIHRoZSBkZXZfcHV0 IG90aGVyd2lzZSBkZXYgd2lsbCBoYXZlIGEgbGVha2VkIHJlZmNvdW50LgoKVGhpcyBidWcgY2F1 c2VzIHRoZSBpYl9pcG9pYiBtb2R1bGUgdG8gYmVjb21lIHVubG9hZGFibGUgd2hlbiB1c2luZwpz eXN0ZW1kLW5ldHdvcmsgYXMgaXQgdHJpZ2dlcnMgdGhpcyBjaGVjayBvbiBJbmZpbmlCYW5kIGxp bmtzLgoKRml4ZXM6IDk5MTM3Yjc4ODhmNCAoInBhY2tldDogdmFsaWRhdGUgYWRkcmVzcyBsZW5n dGgiKQpSZXBvcnRlZC1ieTogTGVvbiBSb21hbm92c2t5IDxsZW9ucm9AbWVsbGFub3guY29tPgpT aWduZWQtb2ZmLWJ5OiBKYXNvbiBHdW50aG9ycGUgPGpnZ0BtZWxsYW5veC5jb20+CkFja2VkLWJ5 OiBXaWxsZW0gZGUgQnJ1aWpuIDx3aWxsZW1iQGdvb2dsZS5jb20+ClNpZ25lZC1vZmYtYnk6IERh dmlkIFMuIE1pbGxlciA8ZGF2ZW1AZGF2ZW1sb2Z0Lm5ldD4KLS0tCiBuZXQvcGFja2V0L2FmX3Bh Y2tldC5jIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL25ldC9wYWNrZXQvYWZfcGFja2V0LmMgYi9uZXQvcGFja2V0 L2FmX3BhY2tldC5jCmluZGV4IDA1NDFjZmM5MzQ0MC4uYjZlYTBmYWRiMzRmIDEwMDY0NAotLS0g YS9uZXQvcGFja2V0L2FmX3BhY2tldC5jCisrKyBiL25ldC9wYWNrZXQvYWZfcGFja2V0LmMKQEAg LTI2MjgsNyArMjYyOCw3IEBAIHN0YXRpYyBpbnQgdHBhY2tldF9zbmQoc3RydWN0IHBhY2tldF9z b2NrICpwbywgc3RydWN0IG1zZ2hkciAqbXNnKQogCQlhZGRyCT0gc2FkZHItPnNsbF9oYWxlbiA/ IHNhZGRyLT5zbGxfYWRkciA6IE5VTEw7CiAJCWRldiA9IGRldl9nZXRfYnlfaW5kZXgoc29ja19u ZXQoJnBvLT5zayksIHNhZGRyLT5zbGxfaWZpbmRleCk7CiAJCWlmIChhZGRyICYmIGRldiAmJiBz YWRkci0+c2xsX2hhbGVuIDwgZGV2LT5hZGRyX2xlbikKLQkJCWdvdG8gb3V0OworCQkJZ290byBv dXRfcHV0OwogCX0KIAogCWVyciA9IC1FTlhJTzsKQEAgLTI4MjgsNyArMjgyOCw3IEBAIHN0YXRp YyBpbnQgcGFja2V0X3NuZChzdHJ1Y3Qgc29ja2V0ICpzb2NrLCBzdHJ1Y3QgbXNnaGRyICptc2cs IHNpemVfdCBsZW4pCiAJCWFkZHIJPSBzYWRkci0+c2xsX2hhbGVuID8gc2FkZHItPnNsbF9hZGRy IDogTlVMTDsKIAkJZGV2ID0gZGV2X2dldF9ieV9pbmRleChzb2NrX25ldChzayksIHNhZGRyLT5z bGxfaWZpbmRleCk7CiAJCWlmIChhZGRyICYmIGRldiAmJiBzYWRkci0+c2xsX2hhbGVuIDwgZGV2 LT5hZGRyX2xlbikKLQkJCWdvdG8gb3V0OworCQkJZ290byBvdXRfdW5sb2NrOwogCX0KIAogCWVy ciA9IC1FTlhJTzsKLS0gCjIuMjAuMQoKCkZyb20gNjI2MDFkNzk0ZDZmMWQ1MmMzMmI0ZWE4ZDU1 NTBjN2UyNzUyZmQ4YyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogWXVjaHVuZyBDaGVu ZyA8eWNoZW5nQGdvb2dsZS5jb20+CkRhdGU6IFR1ZSwgOCBKYW4gMjAxOSAxODoxNDoyOCAtMDgw MApTdWJqZWN0OiBbUEFUQ0ggMDQvMTFdIHRjcDogY2hhbmdlIHR4aGFzaCBvbiBTWU4tZGF0YSB0 aW1lb3V0CgpbIFVwc3RyZWFtIGNvbW1pdCBjNTcxNWI4ZmFiZmNhMGVmODU5MDNmOGJhZDIxODk5 NDBlZDQxY2M4IF0KClByZXZpb3VzbHkgdXBvbiBTWU4gdGltZW91dHMgdGhlIHNlbmRlciByZWNv bXB1dGVzIHRoZSB0eGhhc2ggdG8KdHJ5IGEgZGlmZmVyZW50IHBhdGguIEhvd2V2ZXIgdGhpcyBk b2VzIG5vdCBhcHBseSBvbiB0aGUgaW5pdGlhbAp0aW1lb3V0IG9mIFNZTi1kYXRhIChhY3RpdmUg RmFzdCBPcGVuKS4gVGhlcmVmb3JlIGFuIGFjdGl2ZSBJUHY2CkZhc3QgT3BlbiBjb25uZWN0aW9u IG1heSBpbmN1ciBvbmUgc2Vjb25kIFJUTyBwZW5hbHR5IHRvIHRha2Ugb24KYSBuZXcgcGF0aCBh ZnRlciB0aGUgc2Vjb25kIFNZTiByZXRyYW5zbWlzc2lvbiB1c2VzIGEgbmV3IGZsb3cgbGFiZWwu CgpUaGlzIHBhdGNoIHJlbW92ZXMgdGhpcyB1bmRlc2lyYWJsZSBiZWhhdmlvciBzbyBGYXN0IE9w ZW4gY2hhbmdlcwp0aGUgZmxvdyBsYWJlbCBqdXN0IGxpa2UgdGhlIHJlZ3VsYXIgY29ubmVjdGlv bnMuIFRoaXMgYWxzbyBoZWxwcwphdm9pZCBmYWxzZWx5IGRpc2FibGluZyBGYXN0IE9wZW4gb24g dGhlIHNlbmRlciB3aGljaCB0cmlnZ2VycwphZnRlciB0d28gY29uc2VjdXRpdmUgU1lOIHRpbWVv dXRzIG9uIEZhc3QgT3Blbi4KClNpZ25lZC1vZmYtYnk6IFl1Y2h1bmcgQ2hlbmcgPHljaGVuZ0Bn b29nbGUuY29tPgpSZXZpZXdlZC1ieTogTmVhbCBDYXJkd2VsbCA8bmNhcmR3ZWxsQGdvb2dsZS5j b20+ClNpZ25lZC1vZmYtYnk6IERhdmlkIFMuIE1pbGxlciA8ZGF2ZW1AZGF2ZW1sb2Z0Lm5ldD4K LS0tCiBuZXQvaXB2NC90Y3BfdGltZXIuYyB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2Vy dGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL25ldC9pcHY0L3RjcF90aW1lci5j IGIvbmV0L2lwdjQvdGNwX3RpbWVyLmMKaW5kZXggNTdlYWU4ZDcwYmExLi5iMWI1YTY0OGRlZjYg MTAwNjQ0Ci0tLSBhL25ldC9pcHY0L3RjcF90aW1lci5jCisrKyBiL25ldC9pcHY0L3RjcF90aW1l ci5jCkBAIC0yMjQsNyArMjI0LDcgQEAgc3RhdGljIGludCB0Y3Bfd3JpdGVfdGltZW91dChzdHJ1 Y3Qgc29jayAqc2spCiAJaWYgKCgxIDw8IHNrLT5za19zdGF0ZSkgJiAoVENQRl9TWU5fU0VOVCB8 IFRDUEZfU1lOX1JFQ1YpKSB7CiAJCWlmIChpY3NrLT5pY3NrX3JldHJhbnNtaXRzKSB7CiAJCQlk c3RfbmVnYXRpdmVfYWR2aWNlKHNrKTsKLQkJfSBlbHNlIGlmICghdHAtPnN5bl9kYXRhICYmICF0 cC0+c3luX2Zhc3RvcGVuKSB7CisJCX0gZWxzZSB7CiAJCQlza19yZXRoaW5rX3R4aGFzaChzayk7 CiAJCX0KIAkJcmV0cnlfdW50aWwgPSBpY3NrLT5pY3NrX3N5bl9yZXRyaWVzID8gOiBuZXQtPmlw djQuc3lzY3RsX3RjcF9zeW5fcmV0cmllczsKLS0gCjIuMjAuMQoKCkZyb20gYWNhYTJjNDQ4ODc3 NjVhMjVmMDAwYTYxNWM2MmRkZWU4NTRlYzk0ZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogU3RhbmlzbGF2IEZvbWljaGV2IDxzZGZAZ29vZ2xlLmNvbT4KRGF0ZTogTW9uLCA3IEphbiAy MDE5IDEzOjM4OjM4IC0wODAwClN1YmplY3Q6IFtQQVRDSCAwNS8xMV0gdHVuOiBwdWJsaXNoIHRm aWxlIGFmdGVyIGl0J3MgZnVsbHkgaW5pdGlhbGl6ZWQKClsgVXBzdHJlYW0gY29tbWl0IDBiNzk1 OWI2MjU3MzIyZjc2OTNiMDhhNDU5YzUwNWQ0OTM4NjQ2ZjIgXQoKQlVHOiB1bmFibGUgdG8gaGFu ZGxlIGtlcm5lbCBOVUxMIHBvaW50ZXIgZGVyZWZlcmVuY2UgYXQgMDAwMDAwMDAwMDAwMDBkMQpD YWxsIFRyYWNlOgogPyBuYXBpX2dyb19mcmFncysweGE3LzB4MmMwCiB0dW5fZ2V0X3VzZXIrMHhi NTAvMHhmMjAKIHR1bl9jaHJfd3JpdGVfaXRlcisweDUzLzB4NzAKIG5ld19zeW5jX3dyaXRlKzB4 ZmYvMHgxNjAKIHZmc193cml0ZSsweDE5MS8weDFlMAogX194NjRfc3lzX3dyaXRlKzB4NWUvMHhk MAogZG9fc3lzY2FsbF82NCsweDQ3LzB4ZjAKIGVudHJ5X1NZU0NBTExfNjRfYWZ0ZXJfaHdmcmFt ZSsweDQ0LzB4YTkKCkkgdGhpbmsgdGhlcmUgaXMgYSBzdWJ0bGUgcmFjZSBiZXR3ZWVuIHNlbmRp bmcgYSBwYWNrZXQgdmlhIHRhcCBhbmQKYXR0YWNoaW5nIGl0OgoKQ1BVMDogICAgICAgICAgICAg ICAgICAgIENQVTE6CnR1bl9jaHJfaW9jdGwoVFVOU0VUSUZGKQogIHR1bl9zZXRfaWZmCiAgICB0 dW5fYXR0YWNoCiAgICAgIHJjdV9hc3NpZ25fcG9pbnRlcih0ZmlsZS0+dHVuLCB0dW4pOwogICAg ICAgICAgICAgICAgICAgICAgICAgdHVuX2ZvcHMtPndyaXRlX2l0ZXIoKQogICAgICAgICAgICAg ICAgICAgICAgICAgICB0dW5fY2hyX3dyaXRlX2l0ZXIKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB0dW5fbmFwaV9hbGxvY19mcmFncwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg bmFwaV9nZXRfZnJhZ3MKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFwaS0+c2ti ID0gbmFwaV9hbGxvY19za2IKICAgICAgdHVuX25hcGlfaW5pdAogICAgICAgIG5ldGlmX25hcGlf YWRkCiAgICAgICAgICBuYXBpLT5za2IgPSBOVUxMCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIG5hcGktPnNrYiBpcyBOVUxMIGhlcmUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg bmFwaV9ncm9fZnJhZ3MKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYXBpX2ZyYWdz X3NrYgoJCQkJICBza2IgPSBuYXBpLT5za2IKCQkJCSAgc2tiX3Jlc2V0X21hY19oZWFkZXIoc2ti KQoJCQkJICBwYW5pYygpCgpNb3ZlIHJjdV9hc3NpZ25fcG9pbnRlcih0ZmlsZS0+dHVuKSBhbmQg cmN1X2Fzc2lnbl9wb2ludGVyKHR1bi0+dGZpbGVzKSB0bwpiZSB0aGUgbGFzdCB0aGluZyB3ZSBk byBpbiB0dW5fYXR0YWNoKCk7IHRoaXMgc2hvdWxkIGd1YXJhbnRlZSB0aGF0IHdoZW4gd2UKY2Fs bCB0dW5fZ2V0KCkgd2UgYWx3YXlzIGdldCBhbiBpbml0aWFsaXplZCBvYmplY3QuCgp2MiBjaGFu Z2VzOgoqIHJlbW92ZSBleHRyYSBuYXBpX211dGV4IGxvY2tzL3VubG9ja3MgZm9yIG5hcGkgb3Bl cmF0aW9ucwoKUmVwb3J0ZWQtYnk6IHN5emJvdCA8c3l6a2FsbGVyQGdvb2dsZWdyb3Vwcy5jb20+ CkZpeGVzOiA5MGUzM2Q0NTk0MDcgKCJ0dW46IGVuYWJsZSBuYXBpX2dyb19mcmFncygpIGZvciBU VU4vVEFQIGRyaXZlciIpCgpTaWduZWQtb2ZmLWJ5OiBTdGFuaXNsYXYgRm9taWNoZXYgPHNkZkBn b29nbGUuY29tPgpTaWduZWQtb2ZmLWJ5OiBEYXZpZCBTLiBNaWxsZXIgPGRhdmVtQGRhdmVtbG9m dC5uZXQ+Ci0tLQogZHJpdmVycy9uZXQvdHVuLmMgfCAxMSArKysrKysrLS0tLQogMSBmaWxlIGNo YW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2 ZXJzL25ldC90dW4uYyBiL2RyaXZlcnMvbmV0L3R1bi5jCmluZGV4IDhjMWFiY2JhNGNiZC4uMzM5 NzhiMGNkYWM4IDEwMDY0NAotLS0gYS9kcml2ZXJzL25ldC90dW4uYworKysgYi9kcml2ZXJzL25l dC90dW4uYwpAQCAtODU5LDEwICs4NTksNiBAQCBzdGF0aWMgaW50IHR1bl9hdHRhY2goc3RydWN0 IHR1bl9zdHJ1Y3QgKnR1biwgc3RydWN0IGZpbGUgKmZpbGUsCiAJCWVyciA9IDA7CiAJfQogCi0J cmN1X2Fzc2lnbl9wb2ludGVyKHRmaWxlLT50dW4sIHR1bik7Ci0JcmN1X2Fzc2lnbl9wb2ludGVy KHR1bi0+dGZpbGVzW3R1bi0+bnVtcXVldWVzXSwgdGZpbGUpOwotCXR1bi0+bnVtcXVldWVzKys7 Ci0KIAlpZiAodGZpbGUtPmRldGFjaGVkKSB7CiAJCXR1bl9lbmFibGVfcXVldWUodGZpbGUpOwog CX0gZWxzZSB7CkBAIC04NzYsNiArODcyLDEzIEBAIHN0YXRpYyBpbnQgdHVuX2F0dGFjaChzdHJ1 Y3QgdHVuX3N0cnVjdCAqdHVuLCBzdHJ1Y3QgZmlsZSAqZmlsZSwKIAkgKiByZWZjbnQuCiAJICov CiAKKwkvKiBQdWJsaXNoIHRmaWxlLT50dW4gYW5kIHR1bi0+dGZpbGVzIG9ubHkgYWZ0ZXIgd2Un dmUgZnVsbHkKKwkgKiBpbml0aWFsaXplZCB0ZmlsZTsgb3RoZXJ3aXNlIHdlIHJpc2sgdXNpbmcg aGFsZi1pbml0aWFsaXplZAorCSAqIG9iamVjdC4KKwkgKi8KKwlyY3VfYXNzaWduX3BvaW50ZXIo dGZpbGUtPnR1biwgdHVuKTsKKwlyY3VfYXNzaWduX3BvaW50ZXIodHVuLT50ZmlsZXNbdHVuLT5u dW1xdWV1ZXNdLCB0ZmlsZSk7CisJdHVuLT5udW1xdWV1ZXMrKzsKIG91dDoKIAlyZXR1cm4gZXJy OwogfQotLSAKMi4yMC4xCgoKRnJvbSAyODhlMGNhOWFhMjk1NGU1ZjVhNDZhYmJkNGU2YzJkZTY1 MDViNzYxIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBCcnlhbiBXaGl0ZWhlYWQgPEJy eWFuLldoaXRlaGVhZEBtaWNyb2NoaXAuY29tPgpEYXRlOiBNb24sIDcgSmFuIDIwMTkgMTQ6MDA6 MDkgLTA1MDAKU3ViamVjdDogW1BBVENIIDA2LzExXSBsYW43NDN4OiBSZW1vdmUgcGh5X3JlYWQg ZnJvbSBsaW5rIHN0YXR1cyBjaGFuZ2UKIGZ1bmN0aW9uCgpbIFVwc3RyZWFtIGNvbW1pdCBhMDA3 MTg0MGQyMDQwZWExYjI3ZTVhMDA4MTgyYjA5Yjg4ZGVmYzE1IF0KCkl0IGhhcyBiZWVuIG5vdGlj ZWQgdGhhdCBzb21lIHBoeXMgZG8gbm90IGhhdmUgdGhlIHJlZ2lzdGVycwpyZXF1aXJlZCBieSB0 aGUgcHJldmlvdXMgaW1wbGVtZW50YXRpb24uCgpUbyBmaXggdGhpcywgaW5zdGVhZCBvZiB1c2lu ZyBwaHlfcmVhZCwgdGhlIHJlcXVpcmVkIGluZm9ybWF0aW9uCmlzIGV4dHJhY3RlZCBmcm9tIHRo ZSBwaHlfZGV2aWNlIHN0cnVjdHVyZS4KCmZpeGVzOiAyM2YwNzAzYzEyNWIgKCJsYW43NDN4OiBB ZGQgbWFpbiBzb3VyY2UgZmlsZXMgZm9yIG5ldyBsYW43NDN4IGRyaXZlciIpClNpZ25lZC1vZmYt Ynk6IEJyeWFuIFdoaXRlaGVhZCA8QnJ5YW4uV2hpdGVoZWFkQG1pY3JvY2hpcC5jb20+ClJldmll d2VkLWJ5OiBBbmRyZXcgTHVubiA8YW5kcmV3QGx1bm4uY2g+ClNpZ25lZC1vZmYtYnk6IERhdmlk IFMuIE1pbGxlciA8ZGF2ZW1AZGF2ZW1sb2Z0Lm5ldD4KLS0tCiBkcml2ZXJzL25ldC9ldGhlcm5l dC9taWNyb2NoaXAvbGFuNzQzeF9tYWluLmMgfCAxMSArKysrLS0tLS0tLQogMSBmaWxlIGNoYW5n ZWQsIDQgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJz L25ldC9ldGhlcm5ldC9taWNyb2NoaXAvbGFuNzQzeF9tYWluLmMgYi9kcml2ZXJzL25ldC9ldGhl cm5ldC9taWNyb2NoaXAvbGFuNzQzeF9tYWluLmMKaW5kZXggMTM5MzI1MmM2ZTNjLi40MmY1YmZh MzM2OTQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L21pY3JvY2hpcC9sYW43NDN4 X21haW4uYworKysgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9taWNyb2NoaXAvbGFuNzQzeF9tYWlu LmMKQEAgLTk2MiwxMyArOTYyLDEwIEBAIHN0YXRpYyB2b2lkIGxhbjc0M3hfcGh5X2xpbmtfc3Rh dHVzX2NoYW5nZShzdHJ1Y3QgbmV0X2RldmljZSAqbmV0ZGV2KQogCiAJCW1lbXNldCgma3NldHRp bmdzLCAwLCBzaXplb2Yoa3NldHRpbmdzKSk7CiAJCXBoeV9ldGh0b29sX2dldF9saW5rX2tzZXR0 aW5ncyhuZXRkZXYsICZrc2V0dGluZ3MpOwotCQlsb2NhbF9hZHZlcnRpc2VtZW50ID0gcGh5X3Jl YWQocGh5ZGV2LCBNSUlfQURWRVJUSVNFKTsKLQkJaWYgKGxvY2FsX2FkdmVydGlzZW1lbnQgPCAw KQotCQkJcmV0dXJuOwotCi0JCXJlbW90ZV9hZHZlcnRpc2VtZW50ID0gcGh5X3JlYWQocGh5ZGV2 LCBNSUlfTFBBKTsKLQkJaWYgKHJlbW90ZV9hZHZlcnRpc2VtZW50IDwgMCkKLQkJCXJldHVybjsK KwkJbG9jYWxfYWR2ZXJ0aXNlbWVudCA9CisJCQlldGh0b29sX2Fkdl90b19taWlfYWR2X3QocGh5 ZGV2LT5hZHZlcnRpc2luZyk7CisJCXJlbW90ZV9hZHZlcnRpc2VtZW50ID0KKwkJCWV0aHRvb2xf YWR2X3RvX21paV9hZHZfdChwaHlkZXYtPmxwX2FkdmVydGlzaW5nKTsKIAogCQlsYW43NDN4X3Bo eV91cGRhdGVfZmxvd2NvbnRyb2woYWRhcHRlciwKIAkJCQkJICAgICAgIGtzZXR0aW5ncy5iYXNl LmR1cGxleCwKLS0gCjIuMjAuMQoKCkZyb20gNjI0ODI4ZDFiODBhYmI3YmM4MzE2MThlMDZjNDE2 OWIxYmU5ZTlmZiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogQ29uZyBXYW5nIDx4aXlv dS53YW5nY29uZ0BnbWFpbC5jb20+CkRhdGU6IFNhdCwgNSBKYW4gMjAxOSAyMzo0NToyNiAtMDgw MApTdWJqZWN0OiBbUEFUQ0ggMDcvMTFdIHNtYzogbW92ZSB1bmhhc2ggYXMgZWFybHkgYXMgcG9z c2libGUgaW4gc21jX3JlbGVhc2UoKQoKWyBVcHN0cmVhbSBjb21taXQgMjZkOTJlOTUxZmUwYTQ0 ZWU0YWVjMTU3Y2FiYjY1YTgxOGNjODE1MSBdCgpJbiBzbWNfcmVsZWFzZSgpIHdlIHJlbGVhc2Ug c21jLT5jbGNzb2NrIGJlZm9yZSB1bmhhc2ggdGhlIHNtYwpzb2NrLCBidXQgYSBwYXJhbGxlbCBz bWNfZGlhZ19kdW1wKCkgbWF5IGJlIHN0aWxsIHJlYWRpbmcKc21jLT5jbGNzb2NrLCB0aGVyZWZv cmUgdGhpcyBjb3VsZCBjYXVzZSBhIHVzZS1hZnRlci1mcmVlIGFzCnJlcG9ydGVkIGJ5IHN5emJv dC4KClJlcG9ydGVkLWFuZC10ZXN0ZWQtYnk6IHN5emJvdCtmYmQxZTU0NzZlNGM5NGM3YjM0ZUBz eXprYWxsZXIuYXBwc3BvdG1haWwuY29tCkZpeGVzOiA1MWYxZGU3OWFkOGUgKCJuZXQvc21jOiBy ZXBsYWNlIHNvY2tfcHV0IHdvcmtlciBieSBzb2NrZXQgcmVmY291bnRpbmciKQpDYzogVXJzdWxh IEJyYXVuIDx1YnJhdW5AbGludXguaWJtLmNvbT4KU2lnbmVkLW9mZi1ieTogQ29uZyBXYW5nIDx4 aXlvdS53YW5nY29uZ0BnbWFpbC5jb20+ClJlcG9ydGVkLWJ5OiBzeXpib3QrMGJmMmUwMTI2OWYx Mjc0YjRiMDNAc3l6a2FsbGVyLmFwcHNwb3RtYWlsLmNvbQpSZXBvcnRlZC1ieTogc3l6Ym90K2Uz MTMyODk1NjMwZjk1NzMwNmJjQHN5emthbGxlci5hcHBzcG90bWFpbC5jb20KU2lnbmVkLW9mZi1i eTogRGF2aWQgUy4gTWlsbGVyIDxkYXZlbUBkYXZlbWxvZnQubmV0PgotLS0KIG5ldC9zbWMvYWZf c21jLmMgfCA0ICsrKy0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDEgZGVsZXRp b24oLSkKCmRpZmYgLS1naXQgYS9uZXQvc21jL2FmX3NtYy5jIGIvbmV0L3NtYy9hZl9zbWMuYwpp bmRleCAyYjhmOTUyOTA2MjcuLmU2ZTUwNmIyZGI5OSAxMDA2NDQKLS0tIGEvbmV0L3NtYy9hZl9z bWMuYworKysgYi9uZXQvc21jL2FmX3NtYy5jCkBAIC0xNDQsNiArMTQ0LDkgQEAgc3RhdGljIGlu dCBzbWNfcmVsZWFzZShzdHJ1Y3Qgc29ja2V0ICpzb2NrKQogCQlzb2NrX3NldF9mbGFnKHNrLCBT T0NLX0RFQUQpOwogCQlzay0+c2tfc2h1dGRvd24gfD0gU0hVVERPV05fTUFTSzsKIAl9CisKKwlz ay0+c2tfcHJvdC0+dW5oYXNoKHNrKTsKKwogCWlmIChzbWMtPmNsY3NvY2spIHsKIAkJaWYgKHNt Yy0+dXNlX2ZhbGxiYWNrICYmIHNrLT5za19zdGF0ZSA9PSBTTUNfTElTVEVOKSB7CiAJCQkvKiB3 YWtlIHVwIGNsY3NvY2sgYWNjZXB0ICovCkBAIC0xNjgsNyArMTcxLDYgQEAgc3RhdGljIGludCBz bWNfcmVsZWFzZShzdHJ1Y3Qgc29ja2V0ICpzb2NrKQogCQlzbWNfY29ubl9mcmVlKCZzbWMtPmNv bm4pOwogCXJlbGVhc2Vfc29jayhzayk7CiAKLQlzay0+c2tfcHJvdC0+dW5oYXNoKHNrKTsKIAlz b2NrX3B1dChzayk7IC8qIGZpbmFsIHNvY2tfcHV0ICovCiBvdXQ6CiAJcmV0dXJuIHJjOwotLSAK Mi4yMC4xCgoKRnJvbSBhMTA2ZmVkYmVjMWMxOGQ3NWE3NjBkZWM0MTQ5NGU5NzRkNzI3M2VkIE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBIZWluZXIgS2FsbHdlaXQgPGhrYWxsd2VpdDFA Z21haWwuY29tPgpEYXRlOiBTdW4sIDYgSmFuIDIwMTkgMjA6NDQ6MDAgKzAxMDAKU3ViamVjdDog W1BBVENIIDA4LzExXSByODE2OTogZG9uJ3QgdHJ5IHRvIHJlYWQgY291bnRlcnMgaWYgY2hpcCBp cyBpbiBhIFBDSQogcG93ZXItc2F2ZSBzdGF0ZQoKWyBVcHN0cmVhbSBjb21taXQgMTAyNjJiMGI1 MzY2NmNiYzUwNjk4OWIxN2EzZWFkMWU5YzNiNDNiNCBdCgpBdm9pZCBsb2cgc3BhbSBjYXVzZWQg YnkgdHJ5aW5nIHRvIHJlYWQgY291bnRlcnMgZnJvbSB0aGUgY2hpcCB3aGlsc3QKaXQgaXMgaW4g YSBQQ0kgcG93ZXItc2F2ZSBzdGF0ZS4KClJlZmVyZW5jZTogaHR0cHM6Ly9idWd6aWxsYS5rZXJu ZWwub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDc0MjEKCkZpeGVzOiAxZWY3Mjg2ZTdmMzYgKCJyODE2 OTogRGVyZWZlcmVuY2UgTU1JTyBhZGRyZXNzIGltbWVkaWF0ZWx5IGJlZm9yZSB1c2UiKQpTaWdu ZWQtb2ZmLWJ5OiBIZWluZXIgS2FsbHdlaXQgPGhrYWxsd2VpdDFAZ21haWwuY29tPgpTaWduZWQt b2ZmLWJ5OiBEYXZpZCBTLiBNaWxsZXIgPGRhdmVtQGRhdmVtbG9mdC5uZXQ+Ci0tLQogZHJpdmVy cy9uZXQvZXRoZXJuZXQvcmVhbHRlay9yODE2OS5jIHwgNiArKysrLS0KIDEgZmlsZSBjaGFuZ2Vk LCA0IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9u ZXQvZXRoZXJuZXQvcmVhbHRlay9yODE2OS5jIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvcmVhbHRl ay9yODE2OS5jCmluZGV4IDlmYzhhMmJjMGZmMS4uYjRiY2EyN2I0NjBmIDEwMDY0NAotLS0gYS9k cml2ZXJzL25ldC9ldGhlcm5ldC9yZWFsdGVrL3I4MTY5LmMKKysrIGIvZHJpdmVycy9uZXQvZXRo ZXJuZXQvcmVhbHRlay9yODE2OS5jCkBAIC0xNzMwLDExICsxNzMwLDEzIEBAIHN0YXRpYyBib29s IHJ0bDgxNjlfcmVzZXRfY291bnRlcnMoc3RydWN0IHJ0bDgxNjlfcHJpdmF0ZSAqdHApCiAKIHN0 YXRpYyBib29sIHJ0bDgxNjlfdXBkYXRlX2NvdW50ZXJzKHN0cnVjdCBydGw4MTY5X3ByaXZhdGUg KnRwKQogeworCXU4IHZhbCA9IFJUTF9SOCh0cCwgQ2hpcENtZCk7CisKIAkvKgogCSAqIFNvbWUg Y2hpcHMgYXJlIHVuYWJsZSB0byBkdW1wIHRhbGx5IGNvdW50ZXJzIHdoZW4gdGhlIHJlY2VpdmVy Ci0JICogaXMgZGlzYWJsZWQuCisJICogaXMgZGlzYWJsZWQuIElmIDB4ZmYgY2hpcCBtYXkgYmUg aW4gYSBQQ0kgcG93ZXItc2F2ZSBzdGF0ZS4KIAkgKi8KLQlpZiAoKFJUTF9SOCh0cCwgQ2hpcENt ZCkgJiBDbWRSeEVuYikgPT0gMCkKKwlpZiAoISh2YWwgJiBDbWRSeEVuYikgfHwgdmFsID09IDB4 ZmYpCiAJCXJldHVybiB0cnVlOwogCiAJcmV0dXJuIHJ0bDgxNjlfZG9fY291bnRlcnModHAsIENv dW50ZXJEdW1wKTsKLS0gCjIuMjAuMQoKCkZyb20gZjIyNzYxMTE2OTQxMDA3MjU2NDcxNzdkZDk3 YzQ0NmZjMWRiMzkxMSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogV2lsbGVtIGRlIEJy dWlqbiA8d2lsbGVtYkBnb29nbGUuY29tPgpEYXRlOiBUdWUsIDggSmFuIDIwMTkgMTI6MzI6NDIg LTA1MDAKU3ViamVjdDogW1BBVENIIDA5LzExXSBib25kaW5nOiB1cGRhdGUgbmVzdCBsZXZlbCBv biB1bmxpbmsKClsgVXBzdHJlYW0gY29tbWl0IDAwMWU0NjVmMDlhMTg4NTc0NDM0ODlhNTdlNzQz MTRhMzM2OGM4MDUgXQoKQSBuZXR3b3JrIGRldmljZSBzdGFjayB3aXRoIG11bHRpcGxlIGxheWVy cyBvZiBib25kaW5nIGRldmljZXMgY2FuCnRyaWdnZXIgYSBmYWxzZSBwb3NpdGl2ZSBsb2NrZGVw IHdhcm5pbmcuIEFkZGluZyBsb2NrZGVwIG5lc3QgbGV2ZWxzCmZpeGVzIHRoaXMuIFVwZGF0ZSB0 aGUgbGV2ZWwgb24gYm90aCBlbnNsYXZlIGFuZCB1bmxpbmssIHRvIGF2b2lkIHRoZQpmb2xsb3dp bmcgc2VyaWVzIG9mIGV2ZW50cyAuLgoKICAgIGlwIG5ldG5zIGFkZCB0ZXN0CiAgICBpcCBuZXRu cyBleGVjIHRlc3QgYmFzaAogICAgaXAgbGluayBzZXQgZGV2IGxvIGFkZHIgMDA6MTE6MjI6MzM6 NDQ6NTUKICAgIGlwIGxpbmsgc2V0IGRldiBsbyBkb3duCgogICAgaXAgbGluayBhZGQgZGV2IGJv bmQxIHR5cGUgYm9uZAogICAgaXAgbGluayBhZGQgZGV2IGJvbmQyIHR5cGUgYm9uZAoKICAgIGlw IGxpbmsgc2V0IGRldiBsbyBtYXN0ZXIgYm9uZDEKICAgIGlwIGxpbmsgc2V0IGRldiBib25kMSBt YXN0ZXIgYm9uZDIKCiAgICBpcCBsaW5rIHNldCBkZXYgYm9uZDEgbm9tYXN0ZXIKICAgIGlwIGxp bmsgc2V0IGRldiBib25kMiBtYXN0ZXIgYm9uZDEKCi4uIGZyb20gc3RpbGwgZ2VuZXJhdGluZyBh IHNwbGF0OgoKICAgIFsgIDE5My42NTIxMjddID09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PQogICAgWyAgMTkzLjY1ODIzMV0gV0FSTklORzogcG9z c2libGUgY2lyY3VsYXIgbG9ja2luZyBkZXBlbmRlbmN5IGRldGVjdGVkCiAgICBbICAxOTMuNjY0 MzUwXSA0LjIwLjAgIzggTm90IHRhaW50ZWQKICAgIFsgIDE5My42NjgzMTBdIC0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICAgWyAgMTkzLjY3 NDQxN10gaXAvMTU1NzcgaXMgdHJ5aW5nIHRvIGFjcXVpcmUgbG9jazoKICAgIFsgIDE5My42Nzg4 OTddIDAwMDAwMDAwYTQwZTNiNjkgKCYoJmJvbmQtPnN0YXRzX2xvY2spLT5ybG9jayMzLzMpeysu Ky59LCBhdDogYm9uZF9nZXRfc3RhdHMrMHg1OC8weDI5MAogICAgWyAgMTkzLjY4Nzg1MV0KICAg IAkgICAgICAgYnV0IHRhc2sgaXMgYWxyZWFkeSBob2xkaW5nIGxvY2s6CiAgICBbICAxOTMuNjkz NjI1XSAwMDAwMDAwMDgwN2I5ZDlmICgmKCZib25kLT5zdGF0c19sb2NrKS0+cmxvY2sjMi8yKXsr LisufSwgYXQ6IGJvbmRfZ2V0X3N0YXRzKzB4NTgvMHgyOTAKCiAgICBbLi5dCgogICAgWyAgMTkz Ljg1MTA5Ml0gICAgICAgIGxvY2tfYWNxdWlyZSsweGE3LzB4MTkwCiAgICBbICAxOTMuODU1MTM4 XSAgICAgICAgX3Jhd19zcGluX2xvY2tfbmVzdGVkKzB4MmQvMHg0MAogICAgWyAgMTkzLjg1OTg3 OF0gICAgICAgIGJvbmRfZ2V0X3N0YXRzKzB4NTgvMHgyOTAKICAgIFsgIDE5My44NjQwOTNdICAg ICAgICBkZXZfZ2V0X3N0YXRzKzB4NWEvMHhjMAogICAgWyAgMTkzLjg2ODE0MF0gICAgICAgIGJv bmRfZ2V0X3N0YXRzKzB4MTA1LzB4MjkwCiAgICBbICAxOTMuODcyNDQ0XSAgICAgICAgZGV2X2dl dF9zdGF0cysweDVhLzB4YzAKICAgIFsgIDE5My44NzY0OTNdICAgICAgICBydG5sX2ZpbGxfc3Rh dHMrMHg0MC8weDEzMAogICAgWyAgMTkzLjg4MDc5N10gICAgICAgIHJ0bmxfZmlsbF9pZmluZm8r MHg2YzUvMHhkYzAKICAgIFsgIDE5My44ODUyNzFdICAgICAgICBydG1zZ19pZmluZm9fYnVpbGRf c2tiKzB4ODYvMHhlMAogICAgWyAgMTkzLjg5MDA5MV0gICAgICAgIHJ0bmV0bGlua19ldmVudCsw eDViLzB4YTAKICAgIFsgIDE5My44OTQzMjBdICAgICAgICByYXdfbm90aWZpZXJfY2FsbF9jaGFp bisweDQzLzB4NjAKICAgIFsgIDE5My44OTkyMjVdICAgICAgICBuZXRkZXZfY2hhbmdlX2ZlYXR1 cmVzKzB4NTAvMHhhMAogICAgWyAgMTkzLjkwNDA0NF0gICAgICAgIGJvbmRfY29tcHV0ZV9mZWF0 dXJlcy5pc3JhLjQ2KzB4MWFiLzB4MjcwCiAgICBbICAxOTMuOTA5NjQwXSAgICAgICAgYm9uZF9l bnNsYXZlKzB4MTQxZC8weDE1YjAKICAgIFsgIDE5My45MTM5NDZdICAgICAgICBkb19zZXRfbWFz dGVyKzB4ODkvMHhhMAogICAgWyAgMTkzLjkxODAxNl0gICAgICAgIGRvX3NldGxpbmsrMHgzN2Mv MHhkYTAKICAgIFsgIDE5My45MjE5ODBdICAgICAgICBfX3J0bmxfbmV3bGluaysweDQ5OS8weDg5 MAogICAgWyAgMTkzLjkyNjI4MV0gICAgICAgIHJ0bmxfbmV3bGluaysweDQ4LzB4NzAKICAgIFsg IDE5My45MzAyMzhdICAgICAgICBydG5ldGxpbmtfcmN2X21zZysweDE3MS8weDRiMAogICAgWyAg MTkzLjkzNDgwMV0gICAgICAgIG5ldGxpbmtfcmN2X3NrYisweGQxLzB4MTEwCiAgICBbICAxOTMu OTM5MTAzXSAgICAgICAgcnRuZXRsaW5rX3JjdisweDE1LzB4MjAKICAgIFsgIDE5My45NDMxNTFd ICAgICAgICBuZXRsaW5rX3VuaWNhc3QrMHgzYjUvMHg1MjAKICAgIFsgIDE5My45NDc1NDRdICAg ICAgICBuZXRsaW5rX3NlbmRtc2crMHgyZmQvMHgzZjAKICAgIFsgIDE5My45NTE5NDJdICAgICAg ICBzb2NrX3NlbmRtc2crMHgzOC8weDUwCiAgICBbICAxOTMuOTU1ODk5XSAgICAgICAgX19fc3lz X3NlbmRtc2crMHgyYmEvMHgyZDAKICAgIFsgIDE5My45NjAyMDVdICAgICAgICBfX3g2NF9zeXNf c2VuZG1zZysweGFkLzB4MTAwCiAgICBbICAxOTMuOTY0Njg3XSAgICAgICAgZG9fc3lzY2FsbF82 NCsweDVhLzB4NDYwCiAgICBbICAxOTMuOTY4ODIzXSAgICAgICAgZW50cnlfU1lTQ0FMTF82NF9h ZnRlcl9od2ZyYW1lKzB4NDkvMHhiZQoKRml4ZXM6IDdlMjU1NmU0MDAyNiAoImJvbmRpbmc6IGF2 b2lkIGxvY2tkZXAgY29uZnVzaW9uIGluIGJvbmRfZ2V0X3N0YXRzKCkiKQpSZXBvcnRlZC1ieTog c3l6Ym90IDxzeXprYWxsZXJAZ29vZ2xlZ3JvdXBzLmNvbT4KU2lnbmVkLW9mZi1ieTogV2lsbGVt IGRlIEJydWlqbiA8d2lsbGVtYkBnb29nbGUuY29tPgpTaWduZWQtb2ZmLWJ5OiBEYXZpZCBTLiBN aWxsZXIgPGRhdmVtQGRhdmVtbG9mdC5uZXQ+Ci0tLQogZHJpdmVycy9uZXQvYm9uZGluZy9ib25k X21haW4uYyB8IDMgKysrCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspCgpkaWZmIC0t Z2l0IGEvZHJpdmVycy9uZXQvYm9uZGluZy9ib25kX21haW4uYyBiL2RyaXZlcnMvbmV0L2JvbmRp bmcvYm9uZF9tYWluLmMKaW5kZXggM2M1OTc1NjljZmFlLi5hNmZjYzVjOTYwNzAgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvbmV0L2JvbmRpbmcvYm9uZF9tYWluLmMKKysrIGIvZHJpdmVycy9uZXQvYm9u ZGluZy9ib25kX21haW4uYwpAQCAtMTk0Nyw2ICsxOTQ3LDkgQEAgc3RhdGljIGludCBfX2JvbmRf cmVsZWFzZV9vbmUoc3RydWN0IG5ldF9kZXZpY2UgKmJvbmRfZGV2LAogCWlmICghYm9uZF9oYXNf c2xhdmVzKGJvbmQpKSB7CiAJCWJvbmRfc2V0X2NhcnJpZXIoYm9uZCk7CiAJCWV0aF9od19hZGRy X3JhbmRvbShib25kX2Rldik7CisJCWJvbmQtPm5lc3RfbGV2ZWwgPSBTSU5HTEVfREVQVEhfTkVT VElORzsKKwl9IGVsc2UgeworCQlib25kLT5uZXN0X2xldmVsID0gZGV2X2dldF9uZXN0X2xldmVs KGJvbmRfZGV2KSArIDE7CiAJfQogCiAJdW5ibG9ja19uZXRwb2xsX3R4KCk7Ci0tIAoyLjIwLjEK CgpGcm9tIDQ4NGUyODIzNWZmM2UyYjllMzMyMGMxOWZlODNiMmE2NzgyN2MwNDQgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206IFdpbGxlbSBkZSBCcnVpam4gPHdpbGxlbWJAZ29vZ2xlLmNv bT4KRGF0ZTogTW9uLCA3IEphbiAyMDE5IDE2OjQ3OjMzIC0wNTAwClN1YmplY3Q6IFtQQVRDSCAx MC8xMV0gaXA6IG9uIHF1ZXVlZCBza2IgdXNlIHNrYl9oZWFkZXJfcG9pbnRlciBpbnN0ZWFkIG9m CiBwc2tiX21heV9wdWxsCgpbIFVwc3RyZWFtIGNvbW1pdCA0YTA2ZmE2N2M0ZGEyMDE0ODgwMzUy NTE1MTg0NTI3NmNkYjk5NWMxIF0KCkNvbW1pdCAyZWZkNGZjYTcwM2EgKCJpcDogaW4gY21zZyBJ UChWNilfT1JJR0RTVEFERFIgY2FsbApwc2tiX21heV9wdWxsIikgYXZvaWRlZCBhIHJlYWQgYmV5 b25kIHRoZSBlbmQgb2YgdGhlIHNrYiBsaW5lYXIKc2VnbWVudCBieSBjYWxsaW5nIHBza2JfbWF5 X3B1bGwuCgpUaGF0IGZ1bmN0aW9uIGNhbiB0cmlnZ2VyIGEgQlVHX09OIGluIHBza2JfZXhwYW5k X2hlYWQgaWYgdGhlIHNrYiBpcwpzaGFyZWQsIHdoaWNoIGl0IGlzIHdoZW4gd2hlbiBwZWVraW5n LiBJdCBjYW4gYWxzbyByZXR1cm4gRU5PTUVNLgoKQXZvaWQgYm90aCBieSBzd2l0Y2hpbmcgdG8g c2FmZXIgc2tiX2hlYWRlcl9wb2ludGVyLgoKRml4ZXM6IDJlZmQ0ZmNhNzAzYSAoImlwOiBpbiBj bXNnIElQKFY2KV9PUklHRFNUQUREUiBjYWxsIHBza2JfbWF5X3B1bGwiKQpSZXBvcnRlZC1ieTog c3l6Ym90IDxzeXprYWxsZXJAZ29vZ2xlZ3JvdXBzLmNvbT4KU3VnZ2VzdGVkLWJ5OiBFcmljIER1 bWF6ZXQgPGVkdW1hemV0QGdvb2dsZS5jb20+ClNpZ25lZC1vZmYtYnk6IFdpbGxlbSBkZSBCcnVp am4gPHdpbGxlbWJAZ29vZ2xlLmNvbT4KU2lnbmVkLW9mZi1ieTogRGF2aWQgUy4gTWlsbGVyIDxk YXZlbUBkYXZlbWxvZnQubmV0PgotLS0KIG5ldC9pcHY0L2lwX3NvY2tnbHVlLmMgfCAxMiArKysr Ky0tLS0tLS0KIG5ldC9pcHY2L2RhdGFncmFtLmMgICAgfCAxMCArKysrLS0tLS0tCiAyIGZpbGVz IGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwgMTMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv bmV0L2lwdjQvaXBfc29ja2dsdWUuYyBiL25ldC9pcHY0L2lwX3NvY2tnbHVlLmMKaW5kZXggMjZj MzZjY2NhYmRjLi5iN2EyNjEyMGQ1NTIgMTAwNjQ0Ci0tLSBhL25ldC9pcHY0L2lwX3NvY2tnbHVl LmMKKysrIGIvbmV0L2lwdjQvaXBfc29ja2dsdWUuYwpAQCAtMTQ4LDE5ICsxNDgsMTcgQEAgc3Rh dGljIHZvaWQgaXBfY21zZ19yZWN2X3NlY3VyaXR5KHN0cnVjdCBtc2doZHIgKm1zZywgc3RydWN0 IHNrX2J1ZmYgKnNrYikKIAogc3RhdGljIHZvaWQgaXBfY21zZ19yZWN2X2RzdGFkZHIoc3RydWN0 IG1zZ2hkciAqbXNnLCBzdHJ1Y3Qgc2tfYnVmZiAqc2tiKQogeworCV9fYmUxNiBfcG9ydHNbMl0s ICpwb3J0czsKIAlzdHJ1Y3Qgc29ja2FkZHJfaW4gc2luOwotCV9fYmUxNiAqcG9ydHM7Ci0JaW50 IGVuZDsKLQotCWVuZCA9IHNrYl90cmFuc3BvcnRfb2Zmc2V0KHNrYikgKyA0OwotCWlmIChlbmQg PiAwICYmICFwc2tiX21heV9wdWxsKHNrYiwgZW5kKSkKLQkJcmV0dXJuOwogCiAJLyogQWxsIGN1 cnJlbnQgdHJhbnNwb3J0IHByb3RvY29scyBoYXZlIHRoZSBwb3J0IG51bWJlcnMgaW4gdGhlCiAJ ICogZmlyc3QgZm91ciBieXRlcyBvZiB0aGUgdHJhbnNwb3J0IGhlYWRlciBhbmQgdGhpcyBmdW5j dGlvbiBpcwogCSAqIHdyaXR0ZW4gd2l0aCB0aGlzIGFzc3VtcHRpb24gaW4gbWluZC4KIAkgKi8K LQlwb3J0cyA9IChfX2JlMTYgKilza2JfdHJhbnNwb3J0X2hlYWRlcihza2IpOworCXBvcnRzID0g c2tiX2hlYWRlcl9wb2ludGVyKHNrYiwgc2tiX3RyYW5zcG9ydF9vZmZzZXQoc2tiKSwKKwkJCQkg ICBzaXplb2YoX3BvcnRzKSwgJl9wb3J0cyk7CisJaWYgKCFwb3J0cykKKwkJcmV0dXJuOwogCiAJ c2luLnNpbl9mYW1pbHkgPSBBRl9JTkVUOwogCXNpbi5zaW5fYWRkci5zX2FkZHIgPSBpcF9oZHIo c2tiKS0+ZGFkZHI7CmRpZmYgLS1naXQgYS9uZXQvaXB2Ni9kYXRhZ3JhbS5jIGIvbmV0L2lwdjYv ZGF0YWdyYW0uYwppbmRleCA3YjA5MDU3OGYwNDQuLmNiMjQ4NTBkMmM3ZiAxMDA2NDQKLS0tIGEv bmV0L2lwdjYvZGF0YWdyYW0uYworKysgYi9uZXQvaXB2Ni9kYXRhZ3JhbS5jCkBAIC03MDEsMTcg KzcwMSwxNSBAQCB2b2lkIGlwNl9kYXRhZ3JhbV9yZWN2X3NwZWNpZmljX2N0bChzdHJ1Y3Qgc29j ayAqc2ssIHN0cnVjdCBtc2doZHIgKm1zZywKIAl9CiAJaWYgKG5wLT5yeG9wdC5iaXRzLnJ4b3Jp Z2RzdGFkZHIpIHsKIAkJc3RydWN0IHNvY2thZGRyX2luNiBzaW42OwotCQlfX2JlMTYgKnBvcnRz OwotCQlpbnQgZW5kOworCQlfX2JlMTYgX3BvcnRzWzJdLCAqcG9ydHM7CiAKLQkJZW5kID0gc2ti X3RyYW5zcG9ydF9vZmZzZXQoc2tiKSArIDQ7Ci0JCWlmIChlbmQgPD0gMCB8fCBwc2tiX21heV9w dWxsKHNrYiwgZW5kKSkgeworCQlwb3J0cyA9IHNrYl9oZWFkZXJfcG9pbnRlcihza2IsIHNrYl90 cmFuc3BvcnRfb2Zmc2V0KHNrYiksCisJCQkJCSAgIHNpemVvZihfcG9ydHMpLCAmX3BvcnRzKTsK KwkJaWYgKHBvcnRzKSB7CiAJCQkvKiBBbGwgY3VycmVudCB0cmFuc3BvcnQgcHJvdG9jb2xzIGhh dmUgdGhlIHBvcnQgbnVtYmVycyBpbiB0aGUKIAkJCSAqIGZpcnN0IGZvdXIgYnl0ZXMgb2YgdGhl IHRyYW5zcG9ydCBoZWFkZXIgYW5kIHRoaXMgZnVuY3Rpb24gaXMKIAkJCSAqIHdyaXR0ZW4gd2l0 aCB0aGlzIGFzc3VtcHRpb24gaW4gbWluZC4KIAkJCSAqLwotCQkJcG9ydHMgPSAoX19iZTE2ICop c2tiX3RyYW5zcG9ydF9oZWFkZXIoc2tiKTsKLQogCQkJc2luNi5zaW42X2ZhbWlseSA9IEFGX0lO RVQ2OwogCQkJc2luNi5zaW42X2FkZHIgPSBpcHY2X2hkcihza2IpLT5kYWRkcjsKIAkJCXNpbjYu c2luNl9wb3J0ID0gcG9ydHNbMV07Ci0tIAoyLjIwLjEKCgpGcm9tIGQxNGZmNmQwOTU4NjEyZTgx NjA0NmI1MjRjNjAyMWYyMGRkNzQyMzggTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEhl aW5lciBLYWxsd2VpdCA8aGthbGx3ZWl0MUBnbWFpbC5jb20+CkRhdGU6IE1vbiwgNyBKYW4gMjAx OSAyMTo0OTowOSArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMTEvMTFdIHI4MTY5OiBsb2FkIFJlYWx0 ZWsgUEhZIGRyaXZlciBtb2R1bGUgYmVmb3JlIHI4MTY5CgpbIFVwc3RyZWFtIGNvbW1pdCAxMTI4 N2I2OTNkMDM4MzAwMTAzNTYzMzllNGNlZGRmNDdkZWUzNGZhIF0KClRoaXMgc29mdCBkZXBlbmRl bmN5IHdvcmtzIGFyb3VuZCBhbiBpc3N1ZSB3aGVyZSBzb21ldGltZXMgdGhlIGdlbnBoeQpkcml2 ZXIgaXMgdXNlZCBpbnN0ZWFkIG9mIHRoZSBkZWRpY2F0ZWQgUEhZIGRyaXZlci4gVGhlIHJvb3Qg Y2F1c2Ugb2YKdGhlIGlzc3VlIGlzbid0IGNsZWFyIHlldC4gUGVvcGxlIHJlcG9ydGVkIHRoZSB1 bmxvYWRpbmcvcmUtbG9hZGluZwptb2R1bGUgcjgxNjkgaGVscHMsIGFuZCBhbHNvIGNvbmZpZ3Vy aW5nIHRoaXMgc29mdCBkZXBlbmRlbmN5IGluCnRoZSBtb2Rwcm9iZSBjb25maWcgZmlsZXMuIElt cG9ydGFudCBqdXN0IHNlZW1zIHRvIGJlIHRoYXQgdGhlCnJlYWx0ZWsgbW9kdWxlIGlzIGxvYWRl ZCBiZWZvcmUgcjgxNjkuCgpPbmNlIHRoaXMgaGFzIGJlZW4gYXBwbGllZCBwcmVsaW1pbmFyeSBm aXggMzhhZjRiOTAzMjEwICgibmV0OiBwaHk6CmFkZCB3b3JrYXJvdW5kIGZvciBpc3N1ZSB3aGVy ZSBQSFkgZHJpdmVyIGRvZXNuJ3QgYmluZCB0byB0aGUgZGV2aWNlIikKd2lsbCBiZSByZW1vdmVk LgoKRml4ZXM6IGYxZTkxMWQ1ZDBkZiAoInI4MTY5OiBhZGQgYmFzaWMgcGh5bGliIHN1cHBvcnQi KQpTaWduZWQtb2ZmLWJ5OiBIZWluZXIgS2FsbHdlaXQgPGhrYWxsd2VpdDFAZ21haWwuY29tPgpT aWduZWQtb2ZmLWJ5OiBEYXZpZCBTLiBNaWxsZXIgPGRhdmVtQGRhdmVtbG9mdC5uZXQ+Ci0tLQog ZHJpdmVycy9uZXQvZXRoZXJuZXQvcmVhbHRlay9yODE2OS5jIHwgMSArCiAxIGZpbGUgY2hhbmdl ZCwgMSBpbnNlcnRpb24oKykKCmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9yZWFs dGVrL3I4MTY5LmMgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9yZWFsdGVrL3I4MTY5LmMKaW5kZXgg YjRiY2EyN2I0NjBmLi4wN2YzMDgwZWNhMTggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbmV0L2V0aGVy bmV0L3JlYWx0ZWsvcjgxNjkuYworKysgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9yZWFsdGVrL3I4 MTY5LmMKQEAgLTcxNyw2ICs3MTcsNyBAQCBtb2R1bGVfcGFyYW0odXNlX2RhYywgaW50LCAwKTsK IE1PRFVMRV9QQVJNX0RFU0ModXNlX2RhYywgIkVuYWJsZSBQQ0kgREFDLiBVbnNhZmUgb24gMzIg Yml0IFBDSSBzbG90LiIpOwogbW9kdWxlX3BhcmFtX25hbWVkKGRlYnVnLCBkZWJ1Zy5tc2dfZW5h YmxlLCBpbnQsIDApOwogTU9EVUxFX1BBUk1fREVTQyhkZWJ1ZywgIkRlYnVnIHZlcmJvc2l0eSBs ZXZlbCAoMD1ub25lLCAuLi4sIDE2PWFsbCkiKTsKK01PRFVMRV9TT0ZUREVQKCJwcmU6IHJlYWx0 ZWsiKTsKIE1PRFVMRV9MSUNFTlNFKCJHUEwiKTsKIE1PRFVMRV9GSVJNV0FSRShGSVJNV0FSRV84 MTY4RF8xKTsKIE1PRFVMRV9GSVJNV0FSRShGSVJNV0FSRV84MTY4RF8yKTsKLS0gCjIuMjAuMQoK ----Next_Part(Sun_Jan_20_11_12_06_2019_013)-- Content-Type: Application/Octet-Stream Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="net_420.mbox" RnJvbSA4YTlmZDFiOWFhODdhYTIzNTZhMGU3YmEzYjgzODQ3NWI5ZDY2YTk0IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBFcmljIER1bWF6ZXQgPGVkdW1hemV0QGdvb2dsZS5jb20+CkRh dGU6IFR1ZSwgOCBKYW4gMjAxOSAwNDowNjoxNCAtMDgwMApTdWJqZWN0OiBbUEFUQ0ggMDEvMTVd IGlwdjY6IGZpeCBrZXJuZWwtaW5mb2xlYWsgaW4gaXB2Nl9sb2NhbF9lcnJvcigpCgpbIFVwc3Ry ZWFtIGNvbW1pdCA3ZDAzM2M5ZjZhN2ZkMzgyMWFmNzU2MjBhMDI1N2RiODdjMmI1NTJhIF0KClRo aXMgcGF0Y2ggbWFrZXMgc3VyZSB0aGUgZmxvdyBsYWJlbCBpbiB0aGUgSVB2NiBoZWFkZXIKZm9y Z2VkIGluIGlwdjZfbG9jYWxfZXJyb3IoKSBpcyBpbml0aWFsaXplZC4KCkJVRzogS01TQU46IGtl cm5lbC1pbmZvbGVhayBpbiBfY29weV90b191c2VyKzB4MTZiLzB4MWYwIGxpYi91c2VyY29weS5j OjMyCkNQVTogMSBQSUQ6IDI0Njc1IENvbW06IHN5ei1leGVjdXRvcjEgTm90IHRhaW50ZWQgNC4y MC4wLXJjNysgIzQKSGFyZHdhcmUgbmFtZTogR29vZ2xlIEdvb2dsZSBDb21wdXRlIEVuZ2luZS9H b29nbGUgQ29tcHV0ZSBFbmdpbmUsIEJJT1MgR29vZ2xlIDAxLzAxLzIwMTEKQ2FsbCBUcmFjZToK IF9fZHVtcF9zdGFjayBsaWIvZHVtcF9zdGFjay5jOjc3IFtpbmxpbmVdCiBkdW1wX3N0YWNrKzB4 MTczLzB4MWQwIGxpYi9kdW1wX3N0YWNrLmM6MTEzCiBrbXNhbl9yZXBvcnQrMHgxMmUvMHgyYTAg bW0va21zYW4va21zYW4uYzo2MTMKIGttc2FuX2ludGVybmFsX2NoZWNrX21lbW9yeSsweDQ1NS8w eGIwMCBtbS9rbXNhbi9rbXNhbi5jOjY3NQoga21zYW5fY29weV90b191c2VyKzB4YWIvMHhjMCBt bS9rbXNhbi9rbXNhbl9ob29rcy5jOjYwMQogX2NvcHlfdG9fdXNlcisweDE2Yi8weDFmMCBsaWIv dXNlcmNvcHkuYzozMgogY29weV90b191c2VyIGluY2x1ZGUvbGludXgvdWFjY2Vzcy5oOjE3NyBb aW5saW5lXQogbW92ZV9hZGRyX3RvX3VzZXIrMHgyZTkvMHg0ZjAgbmV0L3NvY2tldC5jOjIyNwog X19fc3lzX3JlY3Ztc2crMHg1ZDcvMHgxMTQwIG5ldC9zb2NrZXQuYzoyMjg0CiBfX3N5c19yZWN2 bXNnIG5ldC9zb2NrZXQuYzoyMzI3IFtpbmxpbmVdCiBfX2RvX3N5c19yZWN2bXNnIG5ldC9zb2Nr ZXQuYzoyMzM3IFtpbmxpbmVdCiBfX3NlX3N5c19yZWN2bXNnKzB4MmZhLzB4NDUwIG5ldC9zb2Nr ZXQuYzoyMzM0CiBfX3g2NF9zeXNfcmVjdm1zZysweDRhLzB4NzAgbmV0L3NvY2tldC5jOjIzMzQK IGRvX3N5c2NhbGxfNjQrMHhiYy8weGYwIGFyY2gveDg2L2VudHJ5L2NvbW1vbi5jOjI5MQogZW50 cnlfU1lTQ0FMTF82NF9hZnRlcl9od2ZyYW1lKzB4NjMvMHhlNwpSSVA6IDAwMzM6MHg0NTdlYzkK Q29kZTogNmQgYjcgZmIgZmYgYzMgNjYgMmUgMGYgMWYgODQgMDAgMDAgMDAgMDAgMDAgNjYgOTAg NDggODkgZjggNDggODkgZjcgNDggODkgZDYgNDggODkgY2EgNGQgODkgYzIgNGQgODkgYzggNGMg OGIgNGMgMjQgMDggMGYgMDUgPDQ4PiAzZCAwMSBmMCBmZiBmZiAwZiA4MyAzYiBiNyBmYiBmZiBj MyA2NiAyZSAwZiAxZiA4NCAwMCAwMCAwMCAwMApSU1A6IDAwMmI6MDAwMDdmODc1MGMwNmM3OCBF RkxBR1M6IDAwMDAwMjQ2IE9SSUdfUkFYOiAwMDAwMDAwMDAwMDAwMDJmClJBWDogZmZmZmZmZmZm ZmZmZmZkYSBSQlg6IDAwMDAwMDAwMDAwMDAwMDMgUkNYOiAwMDAwMDAwMDAwNDU3ZWM5ClJEWDog MDAwMDAwMDAwMDAwMjAwMCBSU0k6IDAwMDAwMDAwMjAwMDA0MDAgUkRJOiAwMDAwMDAwMDAwMDAw MDA1ClJCUDogMDAwMDAwMDAwMDczYmYwMCBSMDg6IDAwMDAwMDAwMDAwMDAwMDAgUjA5OiAwMDAw MDAwMDAwMDAwMDAwClIxMDogMDAwMDAwMDAwMDAwMDAwMCBSMTE6IDAwMDAwMDAwMDAwMDAyNDYg UjEyOiAwMDAwN2Y4NzUwYzA3NmQ0ClIxMzogMDAwMDAwMDAwMDRjNGE2MCBSMTQ6IDAwMDAwMDAw MDA0ZDgxNDAgUjE1OiAwMDAwMDAwMGZmZmZmZmZmCgpVbmluaXQgd2FzIHN0b3JlZCB0byBtZW1v cnkgYXQ6CiBrbXNhbl9zYXZlX3N0YWNrX3dpdGhfZmxhZ3MgbW0va21zYW4va21zYW4uYzoyMDQg W2lubGluZV0KIGttc2FuX3NhdmVfc3RhY2sgbW0va21zYW4va21zYW4uYzoyMTkgW2lubGluZV0K IGttc2FuX2ludGVybmFsX2NoYWluX29yaWdpbisweDEzNC8weDIzMCBtbS9rbXNhbi9rbXNhbi5j OjQzOQogX19tc2FuX2NoYWluX29yaWdpbisweDcwLzB4ZTAgbW0va21zYW4va21zYW5faW5zdHIu YzoyMDAKIGlwdjZfcmVjdl9lcnJvcisweDFlM2YvMHgxZWIwIG5ldC9pcHY2L2RhdGFncmFtLmM6 NDc1CiB1ZHB2Nl9yZWN2bXNnKzB4Mzk4LzB4MmFiMCBuZXQvaXB2Ni91ZHAuYzozMzUKIGluZXRf cmVjdm1zZysweDRmYi8weDYwMCBuZXQvaXB2NC9hZl9pbmV0LmM6ODMwCiBzb2NrX3JlY3Ztc2df bm9zZWMgbmV0L3NvY2tldC5jOjc5NCBbaW5saW5lXQogc29ja19yZWN2bXNnKzB4MWQxLzB4MjMw IG5ldC9zb2NrZXQuYzo4MDEKIF9fX3N5c19yZWN2bXNnKzB4NGQ1LzB4MTE0MCBuZXQvc29ja2V0 LmM6MjI3OAogX19zeXNfcmVjdm1zZyBuZXQvc29ja2V0LmM6MjMyNyBbaW5saW5lXQogX19kb19z eXNfcmVjdm1zZyBuZXQvc29ja2V0LmM6MjMzNyBbaW5saW5lXQogX19zZV9zeXNfcmVjdm1zZysw eDJmYS8weDQ1MCBuZXQvc29ja2V0LmM6MjMzNAogX194NjRfc3lzX3JlY3Ztc2crMHg0YS8weDcw IG5ldC9zb2NrZXQuYzoyMzM0CiBkb19zeXNjYWxsXzY0KzB4YmMvMHhmMCBhcmNoL3g4Ni9lbnRy eS9jb21tb24uYzoyOTEKIGVudHJ5X1NZU0NBTExfNjRfYWZ0ZXJfaHdmcmFtZSsweDYzLzB4ZTcK ClVuaW5pdCB3YXMgY3JlYXRlZCBhdDoKIGttc2FuX3NhdmVfc3RhY2tfd2l0aF9mbGFncyBtbS9r bXNhbi9rbXNhbi5jOjIwNCBbaW5saW5lXQoga21zYW5faW50ZXJuYWxfcG9pc29uX3NoYWRvdysw eDkyLzB4MTUwIG1tL2ttc2FuL2ttc2FuLmM6MTU4CiBrbXNhbl9rbWFsbG9jKzB4YTYvMHgxMzAg bW0va21zYW4va21zYW5faG9va3MuYzoxNzYKIGttc2FuX3NsYWJfYWxsb2MrMHhlLzB4MTAgbW0v a21zYW4va21zYW5faG9va3MuYzoxODUKIHNsYWJfcG9zdF9hbGxvY19ob29rIG1tL3NsYWIuaDo0 NDYgW2lubGluZV0KIHNsYWJfYWxsb2Nfbm9kZSBtbS9zbHViLmM6Mjc1OSBbaW5saW5lXQogX19r bWFsbG9jX25vZGVfdHJhY2tfY2FsbGVyKzB4ZTE4LzB4MTAzMCBtbS9zbHViLmM6NDM4MwogX19r bWFsbG9jX3Jlc2VydmUgbmV0L2NvcmUvc2tidWZmLmM6MTM3IFtpbmxpbmVdCiBfX2FsbG9jX3Nr YisweDMwOS8weGEyMCBuZXQvY29yZS9za2J1ZmYuYzoyMDUKIGFsbG9jX3NrYiBpbmNsdWRlL2xp bnV4L3NrYnVmZi5oOjk5OCBbaW5saW5lXQogaXB2Nl9sb2NhbF9lcnJvcisweDFhNy8weDllMCBu ZXQvaXB2Ni9kYXRhZ3JhbS5jOjMzNAogX19pcDZfYXBwZW5kX2RhdGErMHgxMjlmLzB4NGZkMCBu ZXQvaXB2Ni9pcDZfb3V0cHV0LmM6MTMxMQogaXA2X21ha2Vfc2tiKzB4NmNjLzB4Y2YwIG5ldC9p cHY2L2lwNl9vdXRwdXQuYzoxNzc1CiB1ZHB2Nl9zZW5kbXNnKzB4M2Y4ZS8weDQ1ZDAgbmV0L2lw djYvdWRwLmM6MTM4NAogaW5ldF9zZW5kbXNnKzB4NTRhLzB4NzIwIG5ldC9pcHY0L2FmX2luZXQu Yzo3OTgKIHNvY2tfc2VuZG1zZ19ub3NlYyBuZXQvc29ja2V0LmM6NjIxIFtpbmxpbmVdCiBzb2Nr X3NlbmRtc2cgbmV0L3NvY2tldC5jOjYzMSBbaW5saW5lXQogX19zeXNfc2VuZHRvKzB4OGM0LzB4 YWMwIG5ldC9zb2NrZXQuYzoxNzg4CiBfX2RvX3N5c19zZW5kdG8gbmV0L3NvY2tldC5jOjE4MDAg W2lubGluZV0KIF9fc2Vfc3lzX3NlbmR0bysweDEwNy8weDEzMCBuZXQvc29ja2V0LmM6MTc5Ngog X194NjRfc3lzX3NlbmR0bysweDZlLzB4OTAgbmV0L3NvY2tldC5jOjE3OTYKIGRvX3N5c2NhbGxf NjQrMHhiYy8weGYwIGFyY2gveDg2L2VudHJ5L2NvbW1vbi5jOjI5MQogZW50cnlfU1lTQ0FMTF82 NF9hZnRlcl9od2ZyYW1lKzB4NjMvMHhlNwoKQnl0ZXMgNC03IG9mIDI4IGFyZSB1bmluaXRpYWxp emVkCk1lbW9yeSBhY2Nlc3Mgb2Ygc2l6ZSAyOCBzdGFydHMgYXQgZmZmZjg4ODE5MzdiZmNlMApE YXRhIGNvcGllZCB0byB1c2VyIGFkZHJlc3MgMDAwMDAwMDAyMDAwMDAwMAoKU2lnbmVkLW9mZi1i eTogRXJpYyBEdW1hemV0IDxlZHVtYXpldEBnb29nbGUuY29tPgpSZXBvcnRlZC1ieTogc3l6Ym90 IDxzeXprYWxsZXJAZ29vZ2xlZ3JvdXBzLmNvbT4KU2lnbmVkLW9mZi1ieTogRGF2aWQgUy4gTWls bGVyIDxkYXZlbUBkYXZlbWxvZnQubmV0PgotLS0KIG5ldC9pcHY2L2RhdGFncmFtLmMgfCAxICsK IDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKQoKZGlmZiAtLWdpdCBhL25ldC9pcHY2L2Rh dGFncmFtLmMgYi9uZXQvaXB2Ni9kYXRhZ3JhbS5jCmluZGV4IDFlZGU3YTE2YTBiZS4uN2IwOTA1 NzhmMDQ0IDEwMDY0NAotLS0gYS9uZXQvaXB2Ni9kYXRhZ3JhbS5jCisrKyBiL25ldC9pcHY2L2Rh dGFncmFtLmMKQEAgLTM0MSw2ICszNDEsNyBAQCB2b2lkIGlwdjZfbG9jYWxfZXJyb3Ioc3RydWN0 IHNvY2sgKnNrLCBpbnQgZXJyLCBzdHJ1Y3QgZmxvd2k2ICpmbDYsIHUzMiBpbmZvKQogCXNrYl9y ZXNldF9uZXR3b3JrX2hlYWRlcihza2IpOwogCWlwaCA9IGlwdjZfaGRyKHNrYik7CiAJaXBoLT5k YWRkciA9IGZsNi0+ZGFkZHI7CisJaXA2X2Zsb3dfaGRyKGlwaCwgMCwgMCk7CiAKIAlzZXJyID0g U0tCX0VYVF9FUlIoc2tiKTsKIAlzZXJyLT5lZS5lZV9lcnJubyA9IGVycjsKLS0gCjIuMjAuMQoK CkZyb20gYzBiNzcxZjE4MGRhOWNhODI5YjVlNDI3YmZkYmUyMDM5ZjlhY2E2MyBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogSmlhbkpoZW4gQ2hlbiA8a2NoZW5Ac3lub2xvZ3kuY29tPgpE YXRlOiBTdW4sIDYgSmFuIDIwMTkgMTE6Mjg6MTMgKzA4MDAKU3ViamVjdDogW1BBVENIIDAyLzE1 XSBuZXQ6IGJyaWRnZTogZml4IGEgYnVnIG9uIHVzaW5nIGEgbmVpZ2hib3VyIGNhY2hlIGVudHJ5 CiB3aXRob3V0IGNoZWNraW5nIGl0cyBzdGF0ZQoKWyBVcHN0cmVhbSBjb21taXQgNGM4NGVkYzEx Yjc2NTkwODU5YjFlNDVkZDY3NjA3NGM1OTYwMmRjNCBdCgpXaGVuIGhhbmRsaW5nIEROQVQnZWQg cGFja2V0cyBvbiBhIGJyaWRnZSBkZXZpY2UsIHRoZSBuZWlnaGJvdXIgY2FjaGUgZW50cnkKZnJv bSBsb29rdXAgd2FzIHVzZWQgd2l0aG91dCBjaGVja2luZyBpdHMgc3RhdGUuIEl0IG1lYW5zIHRo YXQgYSBjYWNoZSBlbnRyeQppbiB0aGUgTlVEX1NUQUxFIHN0YXRlIHdpbGwgYmUgdXNlZCBkaXJl Y3RseSBpbnN0ZWFkIG9mIGVudGVyaW5nIHRoZSBOVURfREVMQVkKc3RhdGUgdG8gY29uZmlybSB0 aGUgcmVhY2hhYmlsaXR5IG9mIHRoZSBuZWlnaGJvci4KClRoaXMgcHJvYmxlbSBiZWNvbWVzIHdv cnNlIGFmdGVyIGNvbW1pdCAyNzI0NjgwYmNlZWUgKCJuZWlnaDogS2VlcCBuZWlnaGJvdXIKY2Fj aGUgZW50cmllcyBpZiBudW1iZXIgb2YgdGhlbSBpcyBzbWFsbCBlbm91Z2guIiksIHNpbmNlIGFs bCBuZWlnaGJvdXIgY2FjaGUKZW50cmllcyBpbiB0aGUgTlVEX1NUQUxFIHN0YXRlIHdpbGwgYmUg a2VwdCBpbiB0aGUgbmVpZ2hib3VyIHRhYmxlIGFzIGxvbmcgYXMKdGhlIG51bWJlciBvZiBjYWNo ZSBlbnRyaWVzIGRvZXMgbm90IGV4Y2VlZCB0aGUgdmFsdWUgc3BlY2lmaWVkIGluIGdjX3RocmVz aDEuCgpUaGlzIGNvbW1pdCB2YWxpZGF0ZXMgdGhlIHN0YXRlIG9mIGEgbmVpZ2hib3VyIGNhY2hl IGVudHJ5IGJlZm9yZSB1c2luZwp0aGUgZW50cnkuCgpTaWduZWQtb2ZmLWJ5OiBKaWFuSmhlbiBD aGVuIDxrY2hlbkBzeW5vbG9neS5jb20+ClJldmlld2VkLWJ5OiBKaW5MaW4gQ2hlbiA8amxjaGVu QHN5bm9sb2d5LmNvbT4KU2lnbmVkLW9mZi1ieTogRGF2aWQgUy4gTWlsbGVyIDxkYXZlbUBkYXZl bWxvZnQubmV0PgotLS0KIG5ldC9icmlkZ2UvYnJfbmV0ZmlsdGVyX2hvb2tzLmMgfCAyICstCiAx IGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQg YS9uZXQvYnJpZGdlL2JyX25ldGZpbHRlcl9ob29rcy5jIGIvbmV0L2JyaWRnZS9icl9uZXRmaWx0 ZXJfaG9va3MuYwppbmRleCBiMWI1ZTg1MTY3MjQuLmVkNjgzZTViNzNiYSAxMDA2NDQKLS0tIGEv bmV0L2JyaWRnZS9icl9uZXRmaWx0ZXJfaG9va3MuYworKysgYi9uZXQvYnJpZGdlL2JyX25ldGZp bHRlcl9ob29rcy5jCkBAIC0yNzgsNyArMjc4LDcgQEAgaW50IGJyX25mX3ByZV9yb3V0aW5nX2Zp bmlzaF9icmlkZ2Uoc3RydWN0IG5ldCAqbmV0LCBzdHJ1Y3Qgc29jayAqc2ssIHN0cnVjdCBza18K IAkJc3RydWN0IG5mX2JyaWRnZV9pbmZvICpuZl9icmlkZ2UgPSBuZl9icmlkZ2VfaW5mb19nZXQo c2tiKTsKIAkJaW50IHJldDsKIAotCQlpZiAobmVpZ2gtPmhoLmhoX2xlbikgeworCQlpZiAoKG5l aWdoLT5udWRfc3RhdGUgJiBOVURfQ09OTkVDVEVEKSAmJiBuZWlnaC0+aGguaGhfbGVuKSB7CiAJ CQluZWlnaF9oaF9icmlkZ2UoJm5laWdoLT5oaCwgc2tiKTsKIAkJCXNrYi0+ZGV2ID0gbmZfYnJp ZGdlLT5waHlzaW5kZXY7CiAJCQlyZXQgPSBicl9oYW5kbGVfZnJhbWVfZmluaXNoKG5ldCwgc2ss IHNrYik7Ci0tIAoyLjIwLjEKCgpGcm9tIDM4YzdlYmExNjFhZTE0MTBjY2Y4ZTFiYmUxODYyMmFl ZTU0ODlkNGEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEphc29uIEd1bnRob3JwZSA8 amdnQG1lbGxhbm94LmNvbT4KRGF0ZTogVHVlLCA4IEphbiAyMDE5IDIzOjI3OjA2ICswMDAwClN1 YmplY3Q6IFtQQVRDSCAwMy8xNV0gcGFja2V0OiBEbyBub3QgbGVhayBkZXYgcmVmY291bnRzIG9u IGVycm9yIGV4aXQKClsgVXBzdHJlYW0gY29tbWl0IGQ5NzJmM2RjZThkMTYxZTIxNDJkYTBhYjFl ZjI1ZGYwMGUyZjIxYTkgXQoKJ2RldicgaXMgbm9uIE5VTEwgd2hlbiB0aGUgYWRkcl9sZW4gY2hl Y2sgdHJpZ2dlcnMgc28gaXQgbXVzdCBnb3RvIGEgbGFiZWwKdGhhdCBkb2VzIHRoZSBkZXZfcHV0 IG90aGVyd2lzZSBkZXYgd2lsbCBoYXZlIGEgbGVha2VkIHJlZmNvdW50LgoKVGhpcyBidWcgY2F1 c2VzIHRoZSBpYl9pcG9pYiBtb2R1bGUgdG8gYmVjb21lIHVubG9hZGFibGUgd2hlbiB1c2luZwpz eXN0ZW1kLW5ldHdvcmsgYXMgaXQgdHJpZ2dlcnMgdGhpcyBjaGVjayBvbiBJbmZpbmlCYW5kIGxp bmtzLgoKRml4ZXM6IDk5MTM3Yjc4ODhmNCAoInBhY2tldDogdmFsaWRhdGUgYWRkcmVzcyBsZW5n dGgiKQpSZXBvcnRlZC1ieTogTGVvbiBSb21hbm92c2t5IDxsZW9ucm9AbWVsbGFub3guY29tPgpT aWduZWQtb2ZmLWJ5OiBKYXNvbiBHdW50aG9ycGUgPGpnZ0BtZWxsYW5veC5jb20+CkFja2VkLWJ5 OiBXaWxsZW0gZGUgQnJ1aWpuIDx3aWxsZW1iQGdvb2dsZS5jb20+ClNpZ25lZC1vZmYtYnk6IERh dmlkIFMuIE1pbGxlciA8ZGF2ZW1AZGF2ZW1sb2Z0Lm5ldD4KLS0tCiBuZXQvcGFja2V0L2FmX3Bh Y2tldC5jIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL25ldC9wYWNrZXQvYWZfcGFja2V0LmMgYi9uZXQvcGFja2V0 L2FmX3BhY2tldC5jCmluZGV4IGVlZGFjZGViY2Q0Yy4uZDA5NDUyNTNmNDNiIDEwMDY0NAotLS0g YS9uZXQvcGFja2V0L2FmX3BhY2tldC5jCisrKyBiL25ldC9wYWNrZXQvYWZfcGFja2V0LmMKQEAg LTI2MjgsNyArMjYyOCw3IEBAIHN0YXRpYyBpbnQgdHBhY2tldF9zbmQoc3RydWN0IHBhY2tldF9z b2NrICpwbywgc3RydWN0IG1zZ2hkciAqbXNnKQogCQlhZGRyCT0gc2FkZHItPnNsbF9oYWxlbiA/ IHNhZGRyLT5zbGxfYWRkciA6IE5VTEw7CiAJCWRldiA9IGRldl9nZXRfYnlfaW5kZXgoc29ja19u ZXQoJnBvLT5zayksIHNhZGRyLT5zbGxfaWZpbmRleCk7CiAJCWlmIChhZGRyICYmIGRldiAmJiBz YWRkci0+c2xsX2hhbGVuIDwgZGV2LT5hZGRyX2xlbikKLQkJCWdvdG8gb3V0OworCQkJZ290byBv dXRfcHV0OwogCX0KIAogCWVyciA9IC1FTlhJTzsKQEAgLTI4MjgsNyArMjgyOCw3IEBAIHN0YXRp YyBpbnQgcGFja2V0X3NuZChzdHJ1Y3Qgc29ja2V0ICpzb2NrLCBzdHJ1Y3QgbXNnaGRyICptc2cs IHNpemVfdCBsZW4pCiAJCWFkZHIJPSBzYWRkci0+c2xsX2hhbGVuID8gc2FkZHItPnNsbF9hZGRy IDogTlVMTDsKIAkJZGV2ID0gZGV2X2dldF9ieV9pbmRleChzb2NrX25ldChzayksIHNhZGRyLT5z bGxfaWZpbmRleCk7CiAJCWlmIChhZGRyICYmIGRldiAmJiBzYWRkci0+c2xsX2hhbGVuIDwgZGV2 LT5hZGRyX2xlbikKLQkJCWdvdG8gb3V0OworCQkJZ290byBvdXRfdW5sb2NrOwogCX0KIAogCWVy ciA9IC1FTlhJTzsKLS0gCjIuMjAuMQoKCkZyb20gNmQ1Yjc1YTQ1Y2EwMjM0NDkzODA0YmNmMTQx NjhiZWE3NGFhNTJlMCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogWXVjaHVuZyBDaGVu ZyA8eWNoZW5nQGdvb2dsZS5jb20+CkRhdGU6IFR1ZSwgOCBKYW4gMjAxOSAxODoxNDoyOCAtMDgw MApTdWJqZWN0OiBbUEFUQ0ggMDQvMTVdIHRjcDogY2hhbmdlIHR4aGFzaCBvbiBTWU4tZGF0YSB0 aW1lb3V0CgpbIFVwc3RyZWFtIGNvbW1pdCBjNTcxNWI4ZmFiZmNhMGVmODU5MDNmOGJhZDIxODk5 NDBlZDQxY2M4IF0KClByZXZpb3VzbHkgdXBvbiBTWU4gdGltZW91dHMgdGhlIHNlbmRlciByZWNv bXB1dGVzIHRoZSB0eGhhc2ggdG8KdHJ5IGEgZGlmZmVyZW50IHBhdGguIEhvd2V2ZXIgdGhpcyBk b2VzIG5vdCBhcHBseSBvbiB0aGUgaW5pdGlhbAp0aW1lb3V0IG9mIFNZTi1kYXRhIChhY3RpdmUg RmFzdCBPcGVuKS4gVGhlcmVmb3JlIGFuIGFjdGl2ZSBJUHY2CkZhc3QgT3BlbiBjb25uZWN0aW9u IG1heSBpbmN1ciBvbmUgc2Vjb25kIFJUTyBwZW5hbHR5IHRvIHRha2Ugb24KYSBuZXcgcGF0aCBh ZnRlciB0aGUgc2Vjb25kIFNZTiByZXRyYW5zbWlzc2lvbiB1c2VzIGEgbmV3IGZsb3cgbGFiZWwu CgpUaGlzIHBhdGNoIHJlbW92ZXMgdGhpcyB1bmRlc2lyYWJsZSBiZWhhdmlvciBzbyBGYXN0IE9w ZW4gY2hhbmdlcwp0aGUgZmxvdyBsYWJlbCBqdXN0IGxpa2UgdGhlIHJlZ3VsYXIgY29ubmVjdGlv bnMuIFRoaXMgYWxzbyBoZWxwcwphdm9pZCBmYWxzZWx5IGRpc2FibGluZyBGYXN0IE9wZW4gb24g dGhlIHNlbmRlciB3aGljaCB0cmlnZ2VycwphZnRlciB0d28gY29uc2VjdXRpdmUgU1lOIHRpbWVv dXRzIG9uIEZhc3QgT3Blbi4KClNpZ25lZC1vZmYtYnk6IFl1Y2h1bmcgQ2hlbmcgPHljaGVuZ0Bn b29nbGUuY29tPgpSZXZpZXdlZC1ieTogTmVhbCBDYXJkd2VsbCA8bmNhcmR3ZWxsQGdvb2dsZS5j b20+ClNpZ25lZC1vZmYtYnk6IERhdmlkIFMuIE1pbGxlciA8ZGF2ZW1AZGF2ZW1sb2Z0Lm5ldD4K LS0tCiBuZXQvaXB2NC90Y3BfdGltZXIuYyB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2Vy dGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL25ldC9pcHY0L3RjcF90aW1lci5j IGIvbmV0L2lwdjQvdGNwX3RpbWVyLmMKaW5kZXggZjg3ZGJjNzhiNmJjLi43MWEyOWU5YzA2MjAg MTAwNjQ0Ci0tLSBhL25ldC9pcHY0L3RjcF90aW1lci5jCisrKyBiL25ldC9pcHY0L3RjcF90aW1l ci5jCkBAIC0yMjYsNyArMjI2LDcgQEAgc3RhdGljIGludCB0Y3Bfd3JpdGVfdGltZW91dChzdHJ1 Y3Qgc29jayAqc2spCiAJaWYgKCgxIDw8IHNrLT5za19zdGF0ZSkgJiAoVENQRl9TWU5fU0VOVCB8 IFRDUEZfU1lOX1JFQ1YpKSB7CiAJCWlmIChpY3NrLT5pY3NrX3JldHJhbnNtaXRzKSB7CiAJCQlk c3RfbmVnYXRpdmVfYWR2aWNlKHNrKTsKLQkJfSBlbHNlIGlmICghdHAtPnN5bl9kYXRhICYmICF0 cC0+c3luX2Zhc3RvcGVuKSB7CisJCX0gZWxzZSB7CiAJCQlza19yZXRoaW5rX3R4aGFzaChzayk7 CiAJCX0KIAkJcmV0cnlfdW50aWwgPSBpY3NrLT5pY3NrX3N5bl9yZXRyaWVzID8gOiBuZXQtPmlw djQuc3lzY3RsX3RjcF9zeW5fcmV0cmllczsKLS0gCjIuMjAuMQoKCkZyb20gOGM5ZjQyYzIxMTQ5 ZjE1NjViMzgwYzY3YTQxNTU2ZjYyODZkZGIxMiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogU3RhbmlzbGF2IEZvbWljaGV2IDxzZGZAZ29vZ2xlLmNvbT4KRGF0ZTogTW9uLCA3IEphbiAy MDE5IDEzOjM4OjM4IC0wODAwClN1YmplY3Q6IFtQQVRDSCAwNS8xNV0gdHVuOiBwdWJsaXNoIHRm aWxlIGFmdGVyIGl0J3MgZnVsbHkgaW5pdGlhbGl6ZWQKClsgVXBzdHJlYW0gY29tbWl0IDBiNzk1 OWI2MjU3MzIyZjc2OTNiMDhhNDU5YzUwNWQ0OTM4NjQ2ZjIgXQoKQlVHOiB1bmFibGUgdG8gaGFu ZGxlIGtlcm5lbCBOVUxMIHBvaW50ZXIgZGVyZWZlcmVuY2UgYXQgMDAwMDAwMDAwMDAwMDBkMQpD YWxsIFRyYWNlOgogPyBuYXBpX2dyb19mcmFncysweGE3LzB4MmMwCiB0dW5fZ2V0X3VzZXIrMHhi NTAvMHhmMjAKIHR1bl9jaHJfd3JpdGVfaXRlcisweDUzLzB4NzAKIG5ld19zeW5jX3dyaXRlKzB4 ZmYvMHgxNjAKIHZmc193cml0ZSsweDE5MS8weDFlMAogX194NjRfc3lzX3dyaXRlKzB4NWUvMHhk MAogZG9fc3lzY2FsbF82NCsweDQ3LzB4ZjAKIGVudHJ5X1NZU0NBTExfNjRfYWZ0ZXJfaHdmcmFt ZSsweDQ0LzB4YTkKCkkgdGhpbmsgdGhlcmUgaXMgYSBzdWJ0bGUgcmFjZSBiZXR3ZWVuIHNlbmRp bmcgYSBwYWNrZXQgdmlhIHRhcCBhbmQKYXR0YWNoaW5nIGl0OgoKQ1BVMDogICAgICAgICAgICAg ICAgICAgIENQVTE6CnR1bl9jaHJfaW9jdGwoVFVOU0VUSUZGKQogIHR1bl9zZXRfaWZmCiAgICB0 dW5fYXR0YWNoCiAgICAgIHJjdV9hc3NpZ25fcG9pbnRlcih0ZmlsZS0+dHVuLCB0dW4pOwogICAg ICAgICAgICAgICAgICAgICAgICAgdHVuX2ZvcHMtPndyaXRlX2l0ZXIoKQogICAgICAgICAgICAg ICAgICAgICAgICAgICB0dW5fY2hyX3dyaXRlX2l0ZXIKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB0dW5fbmFwaV9hbGxvY19mcmFncwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg bmFwaV9nZXRfZnJhZ3MKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFwaS0+c2ti ID0gbmFwaV9hbGxvY19za2IKICAgICAgdHVuX25hcGlfaW5pdAogICAgICAgIG5ldGlmX25hcGlf YWRkCiAgICAgICAgICBuYXBpLT5za2IgPSBOVUxMCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIG5hcGktPnNrYiBpcyBOVUxMIGhlcmUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg bmFwaV9ncm9fZnJhZ3MKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYXBpX2ZyYWdz X3NrYgoJCQkJICBza2IgPSBuYXBpLT5za2IKCQkJCSAgc2tiX3Jlc2V0X21hY19oZWFkZXIoc2ti KQoJCQkJICBwYW5pYygpCgpNb3ZlIHJjdV9hc3NpZ25fcG9pbnRlcih0ZmlsZS0+dHVuKSBhbmQg cmN1X2Fzc2lnbl9wb2ludGVyKHR1bi0+dGZpbGVzKSB0bwpiZSB0aGUgbGFzdCB0aGluZyB3ZSBk byBpbiB0dW5fYXR0YWNoKCk7IHRoaXMgc2hvdWxkIGd1YXJhbnRlZSB0aGF0IHdoZW4gd2UKY2Fs bCB0dW5fZ2V0KCkgd2UgYWx3YXlzIGdldCBhbiBpbml0aWFsaXplZCBvYmplY3QuCgp2MiBjaGFu Z2VzOgoqIHJlbW92ZSBleHRyYSBuYXBpX211dGV4IGxvY2tzL3VubG9ja3MgZm9yIG5hcGkgb3Bl cmF0aW9ucwoKUmVwb3J0ZWQtYnk6IHN5emJvdCA8c3l6a2FsbGVyQGdvb2dsZWdyb3Vwcy5jb20+ CkZpeGVzOiA5MGUzM2Q0NTk0MDcgKCJ0dW46IGVuYWJsZSBuYXBpX2dyb19mcmFncygpIGZvciBU VU4vVEFQIGRyaXZlciIpCgpTaWduZWQtb2ZmLWJ5OiBTdGFuaXNsYXYgRm9taWNoZXYgPHNkZkBn b29nbGUuY29tPgpTaWduZWQtb2ZmLWJ5OiBEYXZpZCBTLiBNaWxsZXIgPGRhdmVtQGRhdmVtbG9m dC5uZXQ+Ci0tLQogZHJpdmVycy9uZXQvdHVuLmMgfCAxMSArKysrKysrLS0tLQogMSBmaWxlIGNo YW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2 ZXJzL25ldC90dW4uYyBiL2RyaXZlcnMvbmV0L3R1bi5jCmluZGV4IDAwNTAyMDA0MmJlOS4uNjY1 ODY1ODI0NmQyIDEwMDY0NAotLS0gYS9kcml2ZXJzL25ldC90dW4uYworKysgYi9kcml2ZXJzL25l dC90dW4uYwpAQCAtODUyLDEwICs4NTIsNiBAQCBzdGF0aWMgaW50IHR1bl9hdHRhY2goc3RydWN0 IHR1bl9zdHJ1Y3QgKnR1biwgc3RydWN0IGZpbGUgKmZpbGUsCiAJCWVyciA9IDA7CiAJfQogCi0J cmN1X2Fzc2lnbl9wb2ludGVyKHRmaWxlLT50dW4sIHR1bik7Ci0JcmN1X2Fzc2lnbl9wb2ludGVy KHR1bi0+dGZpbGVzW3R1bi0+bnVtcXVldWVzXSwgdGZpbGUpOwotCXR1bi0+bnVtcXVldWVzKys7 Ci0KIAlpZiAodGZpbGUtPmRldGFjaGVkKSB7CiAJCXR1bl9lbmFibGVfcXVldWUodGZpbGUpOwog CX0gZWxzZSB7CkBAIC04NzIsNiArODY4LDEzIEBAIHN0YXRpYyBpbnQgdHVuX2F0dGFjaChzdHJ1 Y3QgdHVuX3N0cnVjdCAqdHVuLCBzdHJ1Y3QgZmlsZSAqZmlsZSwKIAkgKiByZWZjbnQuCiAJICov CiAKKwkvKiBQdWJsaXNoIHRmaWxlLT50dW4gYW5kIHR1bi0+dGZpbGVzIG9ubHkgYWZ0ZXIgd2Un dmUgZnVsbHkKKwkgKiBpbml0aWFsaXplZCB0ZmlsZTsgb3RoZXJ3aXNlIHdlIHJpc2sgdXNpbmcg aGFsZi1pbml0aWFsaXplZAorCSAqIG9iamVjdC4KKwkgKi8KKwlyY3VfYXNzaWduX3BvaW50ZXIo dGZpbGUtPnR1biwgdHVuKTsKKwlyY3VfYXNzaWduX3BvaW50ZXIodHVuLT50ZmlsZXNbdHVuLT5u dW1xdWV1ZXNdLCB0ZmlsZSk7CisJdHVuLT5udW1xdWV1ZXMrKzsKIG91dDoKIAlyZXR1cm4gZXJy OwogfQotLSAKMi4yMC4xCgoKRnJvbSA2YjkyYTM5MTQ3ODkwOGI0NzBhOGY3YWMwNzA2YzA5ZDE0 ZjMwMDhhIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBDYW1lbGlhIEdyb3phIDxjYW1l bGlhLmdyb3phQG54cC5jb20+CkRhdGU6IFRodSwgMTcgSmFuIDIwMTkgMTQ6MzM6MzMgKzAyMDAK U3ViamVjdDogW1BBVENIIDA2LzE1XSBuZXQ6IHBoeTogYWRkIG1pc3NpbmcgcGh5IGRyaXZlciBm ZWF0dXJlcwoKWyBVcHN0cmVhbSBjb21taXQgNDBmODllYmZiZDczZmM5NDM5YWU4ZDQ5NTBmNjAy MjZhZDE3NjY5MCBdCgpUaGUgcGh5IGRyaXZlcnMgZm9yIENTNDM0MCBhbmQgVE4yMDIwIGFyZSBt aXNzaW5nIHRoZWlyCmZlYXR1cmVzIGF0dHJpYnV0ZXMuIEFkZCB0aGVtLgoKRml4ZXM6IDcxOTY1 NWExNDk3MSAoIm5ldDogcGh5OiBSZXBsYWNlIHBoeSBkcml2ZXIgZmVhdHVyZXMgdTMyIHdpdGgg bGlua19tb2RlIGJpdG1hcCIpClJlcG9ydGVkLWJ5OiBTY290dCBXb29kIDxvc3NAYnVzZXJyb3Iu bmV0PgpTaWduZWQtb2ZmLWJ5OiBDYW1lbGlhIEdyb3phIDxjYW1lbGlhLmdyb3phQG54cC5jb20+ ClNpZ25lZC1vZmYtYnk6IERhdmlkIFMuIE1pbGxlciA8ZGF2ZW1AZGF2ZW1sb2Z0Lm5ldD4KLS0t CiBkcml2ZXJzL25ldC9waHkvY29ydGluYS5jICAgIHwgMSArCiBkcml2ZXJzL25ldC9waHkvdGVy YW5ldGljcy5jIHwgMSArCiAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKQoKZGlmZiAt LWdpdCBhL2RyaXZlcnMvbmV0L3BoeS9jb3J0aW5hLmMgYi9kcml2ZXJzL25ldC9waHkvY29ydGlu YS5jCmluZGV4IDgwMjJjZDMxN2Y2Mi4uMWE0ZDA0YWZiN2YwIDEwMDY0NAotLS0gYS9kcml2ZXJz L25ldC9waHkvY29ydGluYS5jCisrKyBiL2RyaXZlcnMvbmV0L3BoeS9jb3J0aW5hLmMKQEAgLTg4 LDYgKzg4LDcgQEAgc3RhdGljIHN0cnVjdCBwaHlfZHJpdmVyIGNvcnRpbmFfZHJpdmVyW10gPSB7 CiAJLnBoeV9pZAkJPSBQSFlfSURfQ1M0MzQwLAogCS5waHlfaWRfbWFzawk9IDB4ZmZmZmZmZmYs CiAJLm5hbWUJCT0gIkNvcnRpbmEgQ1M0MzQwIiwKKwkuZmVhdHVyZXMgICAgICAgPSBQSFlfMTBH QklUX0ZFQVRVUkVTLAogCS5jb25maWdfaW5pdAk9IGdlbjEwZ19jb25maWdfaW5pdCwKIAkuY29u ZmlnX2FuZWcJPSBnZW4xMGdfY29uZmlnX2FuZWcsCiAJLnJlYWRfc3RhdHVzCT0gY29ydGluYV9y ZWFkX3N0YXR1cywKZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L3BoeS90ZXJhbmV0aWNzLmMgYi9k cml2ZXJzL25ldC9waHkvdGVyYW5ldGljcy5jCmluZGV4IDIyZjNiZGQ4MjA2Yy4uOTEyNDcxODJi YzUyIDEwMDY0NAotLS0gYS9kcml2ZXJzL25ldC9waHkvdGVyYW5ldGljcy5jCisrKyBiL2RyaXZl cnMvbmV0L3BoeS90ZXJhbmV0aWNzLmMKQEAgLTgwLDYgKzgwLDcgQEAgc3RhdGljIHN0cnVjdCBw aHlfZHJpdmVyIHRlcmFuZXRpY3NfZHJpdmVyW10gPSB7CiAJLnBoeV9pZAkJPSBQSFlfSURfVE4y MDIwLAogCS5waHlfaWRfbWFzawk9IDB4ZmZmZmZmZmYsCiAJLm5hbWUJCT0gIlRlcmFuZXRpY3Mg VE4yMDIwIiwKKwkuZmVhdHVyZXMgICAgICAgPSBQSFlfMTBHQklUX0ZFQVRVUkVTLAogCS5zb2Z0 X3Jlc2V0CT0gZ2VuMTBnX25vX3NvZnRfcmVzZXQsCiAJLmFuZWdfZG9uZQk9IHRlcmFuZXRpY3Nf YW5lZ19kb25lLAogCS5jb25maWdfaW5pdCAgICA9IGdlbjEwZ19jb25maWdfaW5pdCwKLS0gCjIu MjAuMQoKCkZyb20gYzc3NDIwNTlmZmM3MDczMGE1YWI4YjI4Zjc4OWYyZWQ1ZWE1NWFlNSBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogQW5kcmV3IEx1bm4gPGFuZHJld0BsdW5uLmNoPgpE YXRlOiBUdWUsIDE1IEphbiAyMDE5IDE2OjU1OjMwICswMTAwClN1YmplY3Q6IFtQQVRDSCAwNy8x NV0gbmV0OiBwaHk6IEFkZCBtaXNzaW5nIGZlYXR1cmVzIHRvIFBIWSBkcml2ZXJzCgpbIFVwc3Ry ZWFtIGNvbW1pdCA5ZTg1N2E0MGRjNGViYTE1YTczOWI0MTk0ZDdkYjg3M2Q4MmMyOGEwIF0KClRo ZSBiY204N3h4IGFuZCBtaWNyZWwgZHJpdmVyIGhhcyBQSFlzIHdoaWNoIGFyZSBtaXNzaW5nIHRo ZSAuZmVhdHVyZXMKdmFsdWUuIEFkZCB0aGVtLiBUaGUgYmNtODd4eCBpcyBhIDEwRyBGRUMgb25s eSBQSFkuIEFkZCB0aGUgbmVlZGVkCmZlYXR1cmVzIGRlZmluaXRpb24gb2YgdGhpcyBQSFkuCgpG aXhlczogNzE5NjU1YTE0OTcxICgibmV0OiBwaHk6IFJlcGxhY2UgcGh5IGRyaXZlciBmZWF0dXJl cyB1MzIgd2l0aCBsaW5rX21vZGUgYml0bWFwIikKUmVwb3J0ZWQtYnk6IFNjb3R0IFdvb2QgPG9z c0BidXNlcnJvci5uZXQ+ClJlcG9ydGVkLWJ5OiBDYW1lbGlhIEdyb3phIDxjYW1lbGlhLmdyb3ph QG54cC5jb20+ClNpZ25lZC1vZmYtYnk6IEFuZHJldyBMdW5uIDxhbmRyZXdAbHVubi5jaD4KU2ln bmVkLW9mZi1ieTogRGF2aWQgUy4gTWlsbGVyIDxkYXZlbUBkYXZlbWxvZnQubmV0PgotLS0KIGRy aXZlcnMvbmV0L3BoeS9iY204N3h4LmMgICAgfCAgMiArKwogZHJpdmVycy9uZXQvcGh5L21pY3Jl bC5jICAgICB8ICAxICsKIGRyaXZlcnMvbmV0L3BoeS9waHlfZGV2aWNlLmMgfCAxMiArKysrKysr KysrKysKIGluY2x1ZGUvbGludXgvcGh5LmggICAgICAgICAgfCAgMiArKwogNCBmaWxlcyBjaGFu Z2VkLCAxNyBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvcGh5L2JjbTg3 eHguYyBiL2RyaXZlcnMvbmV0L3BoeS9iY204N3h4LmMKaW5kZXggZjdlYmRjZmY1M2U0Li40ZDY2 ZTRiYjkwNGEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbmV0L3BoeS9iY204N3h4LmMKKysrIGIvZHJp dmVycy9uZXQvcGh5L2JjbTg3eHguYwpAQCAtMTkzLDYgKzE5Myw3IEBAIHN0YXRpYyBzdHJ1Y3Qg cGh5X2RyaXZlciBiY204N3h4X2RyaXZlcltdID0gewogCS5waHlfaWQJCT0gUEhZX0lEX0JDTTg3 MDYsCiAJLnBoeV9pZF9tYXNrCT0gMHhmZmZmZmZmZiwKIAkubmFtZQkJPSAiQnJvYWRjb20gQkNN ODcwNiIsCisJLmZlYXR1cmVzCT0gUEhZXzEwR0JJVF9GRUNfRkVBVFVSRVMsCiAJLmZsYWdzCQk9 IFBIWV9IQVNfSU5URVJSVVBULAogCS5jb25maWdfaW5pdAk9IGJjbTg3eHhfY29uZmlnX2luaXQs CiAJLmNvbmZpZ19hbmVnCT0gYmNtODd4eF9jb25maWdfYW5lZywKQEAgLTIwNSw2ICsyMDYsNyBA QCBzdGF0aWMgc3RydWN0IHBoeV9kcml2ZXIgYmNtODd4eF9kcml2ZXJbXSA9IHsKIAkucGh5X2lk CQk9IFBIWV9JRF9CQ004NzI3LAogCS5waHlfaWRfbWFzawk9IDB4ZmZmZmZmZmYsCiAJLm5hbWUJ CT0gIkJyb2FkY29tIEJDTTg3MjciLAorCS5mZWF0dXJlcwk9IFBIWV8xMEdCSVRfRkVDX0ZFQVRV UkVTLAogCS5mbGFncwkJPSBQSFlfSEFTX0lOVEVSUlVQVCwKIAkuY29uZmlnX2luaXQJPSBiY204 N3h4X2NvbmZpZ19pbml0LAogCS5jb25maWdfYW5lZwk9IGJjbTg3eHhfY29uZmlnX2FuZWcsCmRp ZmYgLS1naXQgYS9kcml2ZXJzL25ldC9waHkvbWljcmVsLmMgYi9kcml2ZXJzL25ldC9waHkvbWlj cmVsLmMKaW5kZXggOTI2NWRlYTc5NDEyLi41MTYxMWM3YTIzZDEgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvbmV0L3BoeS9taWNyZWwuYworKysgYi9kcml2ZXJzL25ldC9waHkvbWljcmVsLmMKQEAgLTEx MDUsNiArMTEwNSw3IEBAIHN0YXRpYyBzdHJ1Y3QgcGh5X2RyaXZlciBrc3BoeV9kcml2ZXJbXSA9 IHsKIAkucGh5X2lkCQk9IFBIWV9JRF9LU1o4ODczTUxMLAogCS5waHlfaWRfbWFzawk9IE1JQ1JF TF9QSFlfSURfTUFTSywKIAkubmFtZQkJPSAiTWljcmVsIEtTWjg4NzNNTEwgU3dpdGNoIiwKKwku ZmVhdHVyZXMJPSBQSFlfQkFTSUNfRkVBVFVSRVMsCiAJLmNvbmZpZ19pbml0CT0ga3N6cGh5X2Nv bmZpZ19pbml0LAogCS5jb25maWdfYW5lZwk9IGtzejg4NzNtbGxfY29uZmlnX2FuZWcsCiAJLnJl YWRfc3RhdHVzCT0ga3N6ODg3M21sbF9yZWFkX3N0YXR1cywKZGlmZiAtLWdpdCBhL2RyaXZlcnMv bmV0L3BoeS9waHlfZGV2aWNlLmMgYi9kcml2ZXJzL25ldC9waHkvcGh5X2RldmljZS5jCmluZGV4 IDI2YzQxZWRlNTRhNC4uZmQwNTFhZTc4N2NiIDEwMDY0NAotLS0gYS9kcml2ZXJzL25ldC9waHkv cGh5X2RldmljZS5jCisrKyBiL2RyaXZlcnMvbmV0L3BoeS9waHlfZGV2aWNlLmMKQEAgLTYxLDYg KzYxLDkgQEAgRVhQT1JUX1NZTUJPTF9HUEwocGh5X2diaXRfYWxsX3BvcnRzX2ZlYXR1cmVzKTsK IF9fRVRIVE9PTF9ERUNMQVJFX0xJTktfTU9ERV9NQVNLKHBoeV8xMGdiaXRfZmVhdHVyZXMpIF9f cm9fYWZ0ZXJfaW5pdDsKIEVYUE9SVF9TWU1CT0xfR1BMKHBoeV8xMGdiaXRfZmVhdHVyZXMpOwog CitfX0VUSFRPT0xfREVDTEFSRV9MSU5LX01PREVfTUFTSyhwaHlfMTBnYml0X2ZlY19mZWF0dXJl cykgX19yb19hZnRlcl9pbml0OworRVhQT1JUX1NZTUJPTF9HUEwocGh5XzEwZ2JpdF9mZWNfZmVh dHVyZXMpOworCiBzdGF0aWMgY29uc3QgaW50IHBoeV9iYXNpY19wb3J0c19hcnJheVtdID0gewog CUVUSFRPT0xfTElOS19NT0RFX0F1dG9uZWdfQklULAogCUVUSFRPT0xfTElOS19NT0RFX1RQX0JJ VCwKQEAgLTEwMiw2ICsxMDUsMTEgQEAgc3RhdGljIGNvbnN0IGludCBwaHlfMTBnYml0X2ZlYXR1 cmVzX2FycmF5W10gPSB7CiAJRVRIVE9PTF9MSU5LX01PREVfMTAwMDBiYXNlVF9GdWxsX0JJVCwK IH07CiAKK2NvbnN0IGludCBwaHlfMTBnYml0X2ZlY19mZWF0dXJlc19hcnJheVsxXSA9IHsKKwlF VEhUT09MX0xJTktfTU9ERV8xMDAwMGJhc2VSX0ZFQ19CSVQsCit9OworRVhQT1JUX1NZTUJPTF9H UEwocGh5XzEwZ2JpdF9mZWNfZmVhdHVyZXNfYXJyYXkpOworCiBfX0VUSFRPT0xfREVDTEFSRV9M SU5LX01PREVfTUFTSyhwaHlfMTBnYml0X2Z1bGxfZmVhdHVyZXMpIF9fcm9fYWZ0ZXJfaW5pdDsK IEVYUE9SVF9TWU1CT0xfR1BMKHBoeV8xMGdiaXRfZnVsbF9mZWF0dXJlcyk7CiAKQEAgLTE4NCw2 ICsxOTIsMTAgQEAgc3RhdGljIHZvaWQgZmVhdHVyZXNfaW5pdCh2b2lkKQogCWxpbmttb2RlX3Nl dF9iaXRfYXJyYXkocGh5XzEwZ2JpdF9mdWxsX2ZlYXR1cmVzX2FycmF5LAogCQkJICAgICAgIEFS UkFZX1NJWkUocGh5XzEwZ2JpdF9mdWxsX2ZlYXR1cmVzX2FycmF5KSwKIAkJCSAgICAgICBwaHlf MTBnYml0X2Z1bGxfZmVhdHVyZXMpOworCS8qIDEwRyBGRUMgb25seSAqLworCWxpbmttb2RlX3Nl dF9iaXRfYXJyYXkocGh5XzEwZ2JpdF9mZWNfZmVhdHVyZXNfYXJyYXksCisJCQkgICAgICAgQVJS QVlfU0laRShwaHlfMTBnYml0X2ZlY19mZWF0dXJlc19hcnJheSksCisJCQkgICAgICAgcGh5XzEw Z2JpdF9mZWNfZmVhdHVyZXMpOwogfQogCiB2b2lkIHBoeV9kZXZpY2VfZnJlZShzdHJ1Y3QgcGh5 X2RldmljZSAqcGh5ZGV2KQpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9saW51eC9waHkuaCBiL2luY2x1 ZGUvbGludXgvcGh5LmgKaW5kZXggM2VhODdmNzc0YTc2Li4zMDY2MzBkMTM1MjMgMTAwNjQ0Ci0t LSBhL2luY2x1ZGUvbGludXgvcGh5LmgKKysrIGIvaW5jbHVkZS9saW51eC9waHkuaApAQCAtNDgs NiArNDgsNyBAQCBleHRlcm4gX19FVEhUT09MX0RFQ0xBUkVfTElOS19NT0RFX01BU0socGh5X2di aXRfZmVhdHVyZXMpIF9fcm9fYWZ0ZXJfaW5pdDsKIGV4dGVybiBfX0VUSFRPT0xfREVDTEFSRV9M SU5LX01PREVfTUFTSyhwaHlfZ2JpdF9maWJyZV9mZWF0dXJlcykgX19yb19hZnRlcl9pbml0Owog ZXh0ZXJuIF9fRVRIVE9PTF9ERUNMQVJFX0xJTktfTU9ERV9NQVNLKHBoeV9nYml0X2FsbF9wb3J0 c19mZWF0dXJlcykgX19yb19hZnRlcl9pbml0OwogZXh0ZXJuIF9fRVRIVE9PTF9ERUNMQVJFX0xJ TktfTU9ERV9NQVNLKHBoeV8xMGdiaXRfZmVhdHVyZXMpIF9fcm9fYWZ0ZXJfaW5pdDsKK2V4dGVy biBfX0VUSFRPT0xfREVDTEFSRV9MSU5LX01PREVfTUFTSyhwaHlfMTBnYml0X2ZlY19mZWF0dXJl cykgX19yb19hZnRlcl9pbml0OwogZXh0ZXJuIF9fRVRIVE9PTF9ERUNMQVJFX0xJTktfTU9ERV9N QVNLKHBoeV8xMGdiaXRfZnVsbF9mZWF0dXJlcykgX19yb19hZnRlcl9pbml0OwogCiAjZGVmaW5l IFBIWV9CQVNJQ19GRUFUVVJFUyAoKHVuc2lnbmVkIGxvbmcgKikmcGh5X2Jhc2ljX2ZlYXR1cmVz KQpAQCAtNTYsNiArNTcsNyBAQCBleHRlcm4gX19FVEhUT09MX0RFQ0xBUkVfTElOS19NT0RFX01B U0socGh5XzEwZ2JpdF9mdWxsX2ZlYXR1cmVzKSBfX3JvX2FmdGVyX2luaQogI2RlZmluZSBQSFlf R0JJVF9GSUJSRV9GRUFUVVJFUyAoKHVuc2lnbmVkIGxvbmcgKikmcGh5X2diaXRfZmlicmVfZmVh dHVyZXMpCiAjZGVmaW5lIFBIWV9HQklUX0FMTF9QT1JUU19GRUFUVVJFUyAoKHVuc2lnbmVkIGxv bmcgKikmcGh5X2diaXRfYWxsX3BvcnRzX2ZlYXR1cmVzKQogI2RlZmluZSBQSFlfMTBHQklUX0ZF QVRVUkVTICgodW5zaWduZWQgbG9uZyAqKSZwaHlfMTBnYml0X2ZlYXR1cmVzKQorI2RlZmluZSBQ SFlfMTBHQklUX0ZFQ19GRUFUVVJFUyAoKHVuc2lnbmVkIGxvbmcgKikmcGh5XzEwZ2JpdF9mZWNf ZmVhdHVyZXMpCiAjZGVmaW5lIFBIWV8xMEdCSVRfRlVMTF9GRUFUVVJFUyAoKHVuc2lnbmVkIGxv bmcgKikmcGh5XzEwZ2JpdF9mdWxsX2ZlYXR1cmVzKQogCiAvKgotLSAKMi4yMC4xCgoKRnJvbSA1 YjdlYmQ0MzlhNTA3ZWE4OTEyNTNkODAyNTNiNzQ1YzQ1OTA4MmNiIE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiBUaW1vdGVqIExhemFyIDx0aW1vdGVqLmxhemFyQGFyYW5lby5zaT4KRGF0 ZTogU3VuLCAxMyBKYW4gMjAxOSAwMToyMjo1NSArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMDgvMTVd IG5ldDogcGh5OiBtZXNvbi1neGw6IFVzZSB0aGUgZ2VucGh5X3NvZnRfcmVzZXQgY2FsbGJhY2sK ClsgVXBzdHJlYW0gY29tbWl0IGYyZjk4YzFkN2ZhODFlMjVhNWNmOTEwZWRjOWRiNGQzYzZmMzZj MWIgXQoKU2luY2UgdGhlIHJlZmVyZW5jZWQgY29tbWl0LCBFdGhlcm5ldCBmYWlscyB0byBjb21l IHVwIGF0IGJvb3Qgb24gdGhlCmJvYXJkIG1lc29uLWd4bC1zOTA1eC1saWJyZXRlY2gtY2MuIEZp eCB0aGlzIGJ5IHJlLWVuYWJsaW5nIHRoZQpnZW5waHlfc29mdF9yZXNldCBjYWxsYmFjayBmb3Ig dGhlIEFtbG9naWMgTWVzb24gR1hMIFBIWSBkcml2ZXIuCgpGaXhlczogNmUyZDg1ZWMwNTU5ICgi bmV0OiBwaHk6IFN0b3Agd2l0aCBleGNlc3NpdmUgc29mdCByZXNldCIpClNpZ25lZC1vZmYtYnk6 IFRpbW90ZWogTGF6YXIgPHRpbW90ZWoubGF6YXJAYXJhbmVvLnNpPgpSZXZpZXdlZC1ieTogRmxv cmlhbiBGYWluZWxsaSA8Zi5mYWluZWxsaUBnbWFpbC5jb20+ClNpZ25lZC1vZmYtYnk6IERhdmlk IFMuIE1pbGxlciA8ZGF2ZW1AZGF2ZW1sb2Z0Lm5ldD4KLS0tCiBkcml2ZXJzL25ldC9waHkvbWVz b24tZ3hsLmMgfCAxICsKIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKQoKZGlmZiAtLWdp dCBhL2RyaXZlcnMvbmV0L3BoeS9tZXNvbi1neGwuYyBiL2RyaXZlcnMvbmV0L3BoeS9tZXNvbi1n eGwuYwppbmRleCBkZGMyYzVlYTM3ODcuLjZhY2UxMTg1MDJiOSAxMDA2NDQKLS0tIGEvZHJpdmVy cy9uZXQvcGh5L21lc29uLWd4bC5jCisrKyBiL2RyaXZlcnMvbmV0L3BoeS9tZXNvbi1neGwuYwpA QCAtMjMzLDYgKzIzMyw3IEBAIHN0YXRpYyBzdHJ1Y3QgcGh5X2RyaXZlciBtZXNvbl9neGxfcGh5 W10gPSB7CiAJCS5uYW1lCQk9ICJNZXNvbiBHWEwgSW50ZXJuYWwgUEhZIiwKIAkJLmZlYXR1cmVz CT0gUEhZX0JBU0lDX0ZFQVRVUkVTLAogCQkuZmxhZ3MJCT0gUEhZX0lTX0lOVEVSTkFMIHwgUEhZ X0hBU19JTlRFUlJVUFQsCisJCS5zb2Z0X3Jlc2V0ICAgICA9IGdlbnBoeV9zb2Z0X3Jlc2V0LAog CQkuY29uZmlnX2luaXQJPSBtZXNvbl9neGxfY29uZmlnX2luaXQsCiAJCS5hbmVnX2RvbmUgICAg ICA9IGdlbnBoeV9hbmVnX2RvbmUsCiAJCS5yZWFkX3N0YXR1cwk9IG1lc29uX2d4bF9yZWFkX3N0 YXR1cywKLS0gCjIuMjAuMQoKCkZyb20gNjRjNGNjNGRmYTE2MWM3MTAyZjMxNWUyOTdjYjIzZGMz YTg5ZDcyYiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogQnJ5YW4gV2hpdGVoZWFkIDxC cnlhbi5XaGl0ZWhlYWRAbWljcm9jaGlwLmNvbT4KRGF0ZTogTW9uLCA3IEphbiAyMDE5IDE0OjAw OjA5IC0wNTAwClN1YmplY3Q6IFtQQVRDSCAwOS8xNV0gbGFuNzQzeDogUmVtb3ZlIHBoeV9yZWFk IGZyb20gbGluayBzdGF0dXMgY2hhbmdlCiBmdW5jdGlvbgoKWyBVcHN0cmVhbSBjb21taXQgYTAw NzE4NDBkMjA0MGVhMWIyN2U1YTAwODE4MmIwOWI4OGRlZmMxNSBdCgpJdCBoYXMgYmVlbiBub3Rp Y2VkIHRoYXQgc29tZSBwaHlzIGRvIG5vdCBoYXZlIHRoZSByZWdpc3RlcnMKcmVxdWlyZWQgYnkg dGhlIHByZXZpb3VzIGltcGxlbWVudGF0aW9uLgoKVG8gZml4IHRoaXMsIGluc3RlYWQgb2YgdXNp bmcgcGh5X3JlYWQsIHRoZSByZXF1aXJlZCBpbmZvcm1hdGlvbgppcyBleHRyYWN0ZWQgZnJvbSB0 aGUgcGh5X2RldmljZSBzdHJ1Y3R1cmUuCgpmaXhlczogMjNmMDcwM2MxMjViICgibGFuNzQzeDog QWRkIG1haW4gc291cmNlIGZpbGVzIGZvciBuZXcgbGFuNzQzeCBkcml2ZXIiKQpTaWduZWQtb2Zm LWJ5OiBCcnlhbiBXaGl0ZWhlYWQgPEJyeWFuLldoaXRlaGVhZEBtaWNyb2NoaXAuY29tPgpSZXZp ZXdlZC1ieTogQW5kcmV3IEx1bm4gPGFuZHJld0BsdW5uLmNoPgpTaWduZWQtb2ZmLWJ5OiBEYXZp ZCBTLiBNaWxsZXIgPGRhdmVtQGRhdmVtbG9mdC5uZXQ+Ci0tLQogZHJpdmVycy9uZXQvZXRoZXJu ZXQvbWljcm9jaGlwL2xhbjc0M3hfbWFpbi5jIHwgMTEgKysrKy0tLS0tLS0KIDEgZmlsZSBjaGFu Z2VkLCA0IGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVy cy9uZXQvZXRoZXJuZXQvbWljcm9jaGlwL2xhbjc0M3hfbWFpbi5jIGIvZHJpdmVycy9uZXQvZXRo ZXJuZXQvbWljcm9jaGlwL2xhbjc0M3hfbWFpbi5jCmluZGV4IDIwYzkzNzdlOTljYi4uMWNlOGI3 Mjk5MjlmIDEwMDY0NAotLS0gYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9taWNyb2NoaXAvbGFuNzQz eF9tYWluLmMKKysrIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvbWljcm9jaGlwL2xhbjc0M3hfbWFp bi5jCkBAIC05NjIsMTMgKzk2MiwxMCBAQCBzdGF0aWMgdm9pZCBsYW43NDN4X3BoeV9saW5rX3N0 YXR1c19jaGFuZ2Uoc3RydWN0IG5ldF9kZXZpY2UgKm5ldGRldikKIAogCQltZW1zZXQoJmtzZXR0 aW5ncywgMCwgc2l6ZW9mKGtzZXR0aW5ncykpOwogCQlwaHlfZXRodG9vbF9nZXRfbGlua19rc2V0 dGluZ3MobmV0ZGV2LCAma3NldHRpbmdzKTsKLQkJbG9jYWxfYWR2ZXJ0aXNlbWVudCA9IHBoeV9y ZWFkKHBoeWRldiwgTUlJX0FEVkVSVElTRSk7Ci0JCWlmIChsb2NhbF9hZHZlcnRpc2VtZW50IDwg MCkKLQkJCXJldHVybjsKLQotCQlyZW1vdGVfYWR2ZXJ0aXNlbWVudCA9IHBoeV9yZWFkKHBoeWRl diwgTUlJX0xQQSk7Ci0JCWlmIChyZW1vdGVfYWR2ZXJ0aXNlbWVudCA8IDApCi0JCQlyZXR1cm47 CisJCWxvY2FsX2FkdmVydGlzZW1lbnQgPQorCQkJZXRodG9vbF9hZHZfdG9fbWlpX2Fkdl90KHBo eWRldi0+YWR2ZXJ0aXNpbmcpOworCQlyZW1vdGVfYWR2ZXJ0aXNlbWVudCA9CisJCQlldGh0b29s X2Fkdl90b19taWlfYWR2X3QocGh5ZGV2LT5scF9hZHZlcnRpc2luZyk7CiAKIAkJbGFuNzQzeF9w aHlfdXBkYXRlX2Zsb3djb250cm9sKGFkYXB0ZXIsCiAJCQkJCSAgICAgICBrc2V0dGluZ3MuYmFz ZS5kdXBsZXgsCi0tIAoyLjIwLjEKCgpGcm9tIGI0OTBhZTQ3YzQ1YzEwMjVlZmVkY2FmNmQ4MWE3 NmI4ZGFiM2U0OTUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEdyZWcgS3JvYWgtSGFy dG1hbiA8Z3JlZ2toQGxpbnV4Zm91bmRhdGlvbi5vcmc+CkRhdGU6IFRodSwgMTAgSmFuIDIwMTkg MjE6MjQ6MTMgKzAxMDAKU3ViamVjdDogW1BBVENIIDEwLzE1XSBJTl9CQURDTEFTUzogZml4IG1h Y3JvIHRvIGFjdHVhbGx5IHdvcmsKClsgVXBzdHJlYW0gY29tbWl0IGYyNzVlZTBmYTNhMDZlYjg3 ZWRjMjI5NzQ5Y2YxZWIxOGYwNjYzZmEgXQoKQ29tbWl0IDY1Y2FiODUwZjBlZSAoIm5ldDogQWxs b3cgY2xhc3MtZSBhZGRyZXNzIGFzc2lnbm1lbnQgdmlhIGlmY29uZmlnCmlvY3RsIikgbW9kaWZp ZWQgdGhlIElOX0JBRENMQVNTIG1hY3JvIGEgYml0LCBidXQgdW5mb3J0dW5hdGx5IG9uZSB0b28K bWFueSAnKCcgY2hhcmFjdGVycyB3ZXJlIGFkZGVkIHRvIHRoZSBsaW5lLCBtYWtpbmcgYW55IGNv ZGUgdGhhdCB1c2VkCml0LCBub3QgYnVpbGQgcHJvcGVybHkuCgpBbHNvLCB0aGUgbWFjcm8gbm93 IGNvbXBhcmVzIGFuIHVuc2lnbmVkIHdpdGggYSBzaWduZWQgdmFsdWUsIHdoaWNoCmlzbid0IG9r LCBzbyBmaXggdGhhdCB1cCBieSBtYWtpbmcgYm90aCB0eXBlcyBtYXRjaCBwcm9wZXJseS4KClJl cG9ydGVkLWJ5OiBDaHJpc3RvcGhlciBGZXJyaXMgPGNmZXJyaXNAZ29vZ2xlLmNvbT4KRml4ZXM6 IDY1Y2FiODUwZjBlZSAoIm5ldDogQWxsb3cgY2xhc3MtZSBhZGRyZXNzIGFzc2lnbm1lbnQgdmlh IGlmY29uZmlnIGlvY3RsIikKQ2M6IERhdmUgVGFodCA8ZGF2ZS50YWh0QGdtYWlsLmNvbT4KU2ln bmVkLW9mZi1ieTogR3JlZyBLcm9haC1IYXJ0bWFuIDxncmVna2hAbGludXhmb3VuZGF0aW9uLm9y Zz4KU2lnbmVkLW9mZi1ieTogRGF2aWQgUy4gTWlsbGVyIDxkYXZlbUBkYXZlbWxvZnQubmV0Pgot LS0KIGluY2x1ZGUvdWFwaS9saW51eC9pbi5oIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5z ZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvaW5jbHVkZS91YXBpL2xpbnV4 L2luLmggYi9pbmNsdWRlL3VhcGkvbGludXgvaW4uaAppbmRleCBmNjA1MmU3MGJmNDAuLmE1NWNi OGIxMDE2NSAxMDA2NDQKLS0tIGEvaW5jbHVkZS91YXBpL2xpbnV4L2luLmgKKysrIGIvaW5jbHVk ZS91YXBpL2xpbnV4L2luLmgKQEAgLTI2OCw3ICsyNjgsNyBAQCBzdHJ1Y3Qgc29ja2FkZHJfaW4g ewogI2RlZmluZQlJTl9NVUxUSUNBU1QoYSkJCUlOX0NMQVNTRChhKQogI2RlZmluZQlJTl9NVUxU SUNBU1RfTkVUCTB4ZTAwMDAwMDAKIAotI2RlZmluZQlJTl9CQURDTEFTUyhhKQkJKCgoKGxvbmcg aW50KSAoYSkgKSA9PSAweGZmZmZmZmZmKQorI2RlZmluZQlJTl9CQURDTEFTUyhhKQkJKCgobG9u ZyBpbnQpIChhKSApID09IChsb25nIGludCkweGZmZmZmZmZmKQogI2RlZmluZQlJTl9FWFBFUklN RU5UQUwoYSkJSU5fQkFEQ0xBU1MoKGEpKQogCiAjZGVmaW5lCUlOX0NMQVNTRShhKQkJKCgoKGxv bmcgaW50KSAoYSkpICYgMHhmMDAwMDAwMCkgPT0gMHhmMDAwMDAwMCkKLS0gCjIuMjAuMQoKCkZy b20gNTcyZjM4NDIwNTFmY2I5NTJiNmVjNDhmYmI0NjY4OWUzNGQzNDJlMSBNb24gU2VwIDE3IDAw OjAwOjAwIDIwMDEKRnJvbTogSGVpbmVyIEthbGx3ZWl0IDxoa2FsbHdlaXQxQGdtYWlsLmNvbT4K RGF0ZTogTW9uLCA3IEphbiAyMDE5IDIxOjQ5OjA5ICswMTAwClN1YmplY3Q6IFtQQVRDSCAxMS8x NV0gcjgxNjk6IGxvYWQgUmVhbHRlayBQSFkgZHJpdmVyIG1vZHVsZSBiZWZvcmUgcjgxNjkKClsg VXBzdHJlYW0gY29tbWl0IDExMjg3YjY5M2QwMzgzMDAxMDM1NjMzOWU0Y2VkZGY0N2RlZTM0ZmEg XQoKVGhpcyBzb2Z0IGRlcGVuZGVuY3kgd29ya3MgYXJvdW5kIGFuIGlzc3VlIHdoZXJlIHNvbWV0 aW1lcyB0aGUgZ2VucGh5CmRyaXZlciBpcyB1c2VkIGluc3RlYWQgb2YgdGhlIGRlZGljYXRlZCBQ SFkgZHJpdmVyLiBUaGUgcm9vdCBjYXVzZSBvZgp0aGUgaXNzdWUgaXNuJ3QgY2xlYXIgeWV0LiBQ ZW9wbGUgcmVwb3J0ZWQgdGhlIHVubG9hZGluZy9yZS1sb2FkaW5nCm1vZHVsZSByODE2OSBoZWxw cywgYW5kIGFsc28gY29uZmlndXJpbmcgdGhpcyBzb2Z0IGRlcGVuZGVuY3kgaW4KdGhlIG1vZHBy b2JlIGNvbmZpZyBmaWxlcy4gSW1wb3J0YW50IGp1c3Qgc2VlbXMgdG8gYmUgdGhhdCB0aGUKcmVh bHRlayBtb2R1bGUgaXMgbG9hZGVkIGJlZm9yZSByODE2OS4KCk9uY2UgdGhpcyBoYXMgYmVlbiBh cHBsaWVkIHByZWxpbWluYXJ5IGZpeCAzOGFmNGI5MDMyMTAgKCJuZXQ6IHBoeToKYWRkIHdvcmth cm91bmQgZm9yIGlzc3VlIHdoZXJlIFBIWSBkcml2ZXIgZG9lc24ndCBiaW5kIHRvIHRoZSBkZXZp Y2UiKQp3aWxsIGJlIHJlbW92ZWQuCgpGaXhlczogZjFlOTExZDVkMGRmICgicjgxNjk6IGFkZCBi YXNpYyBwaHlsaWIgc3VwcG9ydCIpClNpZ25lZC1vZmYtYnk6IEhlaW5lciBLYWxsd2VpdCA8aGth bGx3ZWl0MUBnbWFpbC5jb20+ClNpZ25lZC1vZmYtYnk6IERhdmlkIFMuIE1pbGxlciA8ZGF2ZW1A ZGF2ZW1sb2Z0Lm5ldD4KLS0tCiBkcml2ZXJzL25ldC9ldGhlcm5ldC9yZWFsdGVrL3I4MTY5LmMg fCAxICsKIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKQoKZGlmZiAtLWdpdCBhL2RyaXZl cnMvbmV0L2V0aGVybmV0L3JlYWx0ZWsvcjgxNjkuYyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L3Jl YWx0ZWsvcjgxNjkuYwppbmRleCAyMDk1NjZmODA5N2IuLjQ0ZWNhYjYzMzlhYiAxMDA2NDQKLS0t IGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvcmVhbHRlay9yODE2OS5jCisrKyBiL2RyaXZlcnMvbmV0 L2V0aGVybmV0L3JlYWx0ZWsvcjgxNjkuYwpAQCAtNzE0LDYgKzcxNCw3IEBAIG1vZHVsZV9wYXJh bSh1c2VfZGFjLCBpbnQsIDApOwogTU9EVUxFX1BBUk1fREVTQyh1c2VfZGFjLCAiRW5hYmxlIFBD SSBEQUMuIFVuc2FmZSBvbiAzMiBiaXQgUENJIHNsb3QuIik7CiBtb2R1bGVfcGFyYW1fbmFtZWQo ZGVidWcsIGRlYnVnLm1zZ19lbmFibGUsIGludCwgMCk7CiBNT0RVTEVfUEFSTV9ERVNDKGRlYnVn LCAiRGVidWcgdmVyYm9zaXR5IGxldmVsICgwPW5vbmUsIC4uLiwgMTY9YWxsKSIpOworTU9EVUxF X1NPRlRERVAoInByZTogcmVhbHRlayIpOwogTU9EVUxFX0xJQ0VOU0UoIkdQTCIpOwogTU9EVUxF X0ZJUk1XQVJFKEZJUk1XQVJFXzgxNjhEXzEpOwogTU9EVUxFX0ZJUk1XQVJFKEZJUk1XQVJFXzgx NjhEXzIpOwotLSAKMi4yMC4xCgoKRnJvbSBhNTlkYjkyYzkxYWE0Zjc0OTdlNTg4NDM2NWFkNzY4 NjNhNDJlZWM3IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBXaWxsZW0gZGUgQnJ1aWpu IDx3aWxsZW1iQGdvb2dsZS5jb20+CkRhdGU6IFR1ZSwgOCBKYW4gMjAxOSAxMjozMjo0MiAtMDUw MApTdWJqZWN0OiBbUEFUQ0ggMTIvMTVdIGJvbmRpbmc6IHVwZGF0ZSBuZXN0IGxldmVsIG9uIHVu bGluawoKWyBVcHN0cmVhbSBjb21taXQgMDAxZTQ2NWYwOWExODg1NzQ0MzQ4OWE1N2U3NDMxNGEz MzY4YzgwNSBdCgpBIG5ldHdvcmsgZGV2aWNlIHN0YWNrIHdpdGggbXVsdGlwbGUgbGF5ZXJzIG9m IGJvbmRpbmcgZGV2aWNlcyBjYW4KdHJpZ2dlciBhIGZhbHNlIHBvc2l0aXZlIGxvY2tkZXAgd2Fy bmluZy4gQWRkaW5nIGxvY2tkZXAgbmVzdCBsZXZlbHMKZml4ZXMgdGhpcy4gVXBkYXRlIHRoZSBs ZXZlbCBvbiBib3RoIGVuc2xhdmUgYW5kIHVubGluaywgdG8gYXZvaWQgdGhlCmZvbGxvd2luZyBz ZXJpZXMgb2YgZXZlbnRzIC4uCgogICAgaXAgbmV0bnMgYWRkIHRlc3QKICAgIGlwIG5ldG5zIGV4 ZWMgdGVzdCBiYXNoCiAgICBpcCBsaW5rIHNldCBkZXYgbG8gYWRkciAwMDoxMToyMjozMzo0NDo1 NQogICAgaXAgbGluayBzZXQgZGV2IGxvIGRvd24KCiAgICBpcCBsaW5rIGFkZCBkZXYgYm9uZDEg dHlwZSBib25kCiAgICBpcCBsaW5rIGFkZCBkZXYgYm9uZDIgdHlwZSBib25kCgogICAgaXAgbGlu ayBzZXQgZGV2IGxvIG1hc3RlciBib25kMQogICAgaXAgbGluayBzZXQgZGV2IGJvbmQxIG1hc3Rl ciBib25kMgoKICAgIGlwIGxpbmsgc2V0IGRldiBib25kMSBub21hc3RlcgogICAgaXAgbGluayBz ZXQgZGV2IGJvbmQyIG1hc3RlciBib25kMQoKLi4gZnJvbSBzdGlsbCBnZW5lcmF0aW5nIGEgc3Bs YXQ6CgogICAgWyAgMTkzLjY1MjEyN10gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09CiAgICBbICAxOTMuNjU4MjMxXSBXQVJOSU5HOiBwb3NzaWJs ZSBjaXJjdWxhciBsb2NraW5nIGRlcGVuZGVuY3kgZGV0ZWN0ZWQKICAgIFsgIDE5My42NjQzNTBd IDQuMjAuMCAjOCBOb3QgdGFpbnRlZAogICAgWyAgMTkzLjY2ODMxMF0gLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgICBbICAxOTMuNjc0NDE3 XSBpcC8xNTU3NyBpcyB0cnlpbmcgdG8gYWNxdWlyZSBsb2NrOgogICAgWyAgMTkzLjY3ODg5N10g MDAwMDAwMDBhNDBlM2I2OSAoJigmYm9uZC0+c3RhdHNfbG9jayktPnJsb2NrIzMvMyl7Ky4rLn0s IGF0OiBib25kX2dldF9zdGF0cysweDU4LzB4MjkwCiAgICBbICAxOTMuNjg3ODUxXQogICAgCSAg ICAgICBidXQgdGFzayBpcyBhbHJlYWR5IGhvbGRpbmcgbG9jazoKICAgIFsgIDE5My42OTM2MjVd IDAwMDAwMDAwODA3YjlkOWYgKCYoJmJvbmQtPnN0YXRzX2xvY2spLT5ybG9jayMyLzIpeysuKy59 LCBhdDogYm9uZF9nZXRfc3RhdHMrMHg1OC8weDI5MAoKICAgIFsuLl0KCiAgICBbICAxOTMuODUx MDkyXSAgICAgICAgbG9ja19hY3F1aXJlKzB4YTcvMHgxOTAKICAgIFsgIDE5My44NTUxMzhdICAg ICAgICBfcmF3X3NwaW5fbG9ja19uZXN0ZWQrMHgyZC8weDQwCiAgICBbICAxOTMuODU5ODc4XSAg ICAgICAgYm9uZF9nZXRfc3RhdHMrMHg1OC8weDI5MAogICAgWyAgMTkzLjg2NDA5M10gICAgICAg IGRldl9nZXRfc3RhdHMrMHg1YS8weGMwCiAgICBbICAxOTMuODY4MTQwXSAgICAgICAgYm9uZF9n ZXRfc3RhdHMrMHgxMDUvMHgyOTAKICAgIFsgIDE5My44NzI0NDRdICAgICAgICBkZXZfZ2V0X3N0 YXRzKzB4NWEvMHhjMAogICAgWyAgMTkzLjg3NjQ5M10gICAgICAgIHJ0bmxfZmlsbF9zdGF0cysw eDQwLzB4MTMwCiAgICBbICAxOTMuODgwNzk3XSAgICAgICAgcnRubF9maWxsX2lmaW5mbysweDZj NS8weGRjMAogICAgWyAgMTkzLjg4NTI3MV0gICAgICAgIHJ0bXNnX2lmaW5mb19idWlsZF9za2Ir MHg4Ni8weGUwCiAgICBbICAxOTMuODkwMDkxXSAgICAgICAgcnRuZXRsaW5rX2V2ZW50KzB4NWIv MHhhMAogICAgWyAgMTkzLjg5NDMyMF0gICAgICAgIHJhd19ub3RpZmllcl9jYWxsX2NoYWluKzB4 NDMvMHg2MAogICAgWyAgMTkzLjg5OTIyNV0gICAgICAgIG5ldGRldl9jaGFuZ2VfZmVhdHVyZXMr MHg1MC8weGEwCiAgICBbICAxOTMuOTA0MDQ0XSAgICAgICAgYm9uZF9jb21wdXRlX2ZlYXR1cmVz LmlzcmEuNDYrMHgxYWIvMHgyNzAKICAgIFsgIDE5My45MDk2NDBdICAgICAgICBib25kX2Vuc2xh dmUrMHgxNDFkLzB4MTViMAogICAgWyAgMTkzLjkxMzk0Nl0gICAgICAgIGRvX3NldF9tYXN0ZXIr MHg4OS8weGEwCiAgICBbICAxOTMuOTE4MDE2XSAgICAgICAgZG9fc2V0bGluaysweDM3Yy8weGRh MAogICAgWyAgMTkzLjkyMTk4MF0gICAgICAgIF9fcnRubF9uZXdsaW5rKzB4NDk5LzB4ODkwCiAg ICBbICAxOTMuOTI2MjgxXSAgICAgICAgcnRubF9uZXdsaW5rKzB4NDgvMHg3MAogICAgWyAgMTkz LjkzMDIzOF0gICAgICAgIHJ0bmV0bGlua19yY3ZfbXNnKzB4MTcxLzB4NGIwCiAgICBbICAxOTMu OTM0ODAxXSAgICAgICAgbmV0bGlua19yY3Zfc2tiKzB4ZDEvMHgxMTAKICAgIFsgIDE5My45Mzkx MDNdICAgICAgICBydG5ldGxpbmtfcmN2KzB4MTUvMHgyMAogICAgWyAgMTkzLjk0MzE1MV0gICAg ICAgIG5ldGxpbmtfdW5pY2FzdCsweDNiNS8weDUyMAogICAgWyAgMTkzLjk0NzU0NF0gICAgICAg IG5ldGxpbmtfc2VuZG1zZysweDJmZC8weDNmMAogICAgWyAgMTkzLjk1MTk0Ml0gICAgICAgIHNv Y2tfc2VuZG1zZysweDM4LzB4NTAKICAgIFsgIDE5My45NTU4OTldICAgICAgICBfX19zeXNfc2Vu ZG1zZysweDJiYS8weDJkMAogICAgWyAgMTkzLjk2MDIwNV0gICAgICAgIF9feDY0X3N5c19zZW5k bXNnKzB4YWQvMHgxMDAKICAgIFsgIDE5My45NjQ2ODddICAgICAgICBkb19zeXNjYWxsXzY0KzB4 NWEvMHg0NjAKICAgIFsgIDE5My45Njg4MjNdICAgICAgICBlbnRyeV9TWVNDQUxMXzY0X2FmdGVy X2h3ZnJhbWUrMHg0OS8weGJlCgpGaXhlczogN2UyNTU2ZTQwMDI2ICgiYm9uZGluZzogYXZvaWQg bG9ja2RlcCBjb25mdXNpb24gaW4gYm9uZF9nZXRfc3RhdHMoKSIpClJlcG9ydGVkLWJ5OiBzeXpi b3QgPHN5emthbGxlckBnb29nbGVncm91cHMuY29tPgpTaWduZWQtb2ZmLWJ5OiBXaWxsZW0gZGUg QnJ1aWpuIDx3aWxsZW1iQGdvb2dsZS5jb20+ClNpZ25lZC1vZmYtYnk6IERhdmlkIFMuIE1pbGxl ciA8ZGF2ZW1AZGF2ZW1sb2Z0Lm5ldD4KLS0tCiBkcml2ZXJzL25ldC9ib25kaW5nL2JvbmRfbWFp bi5jIHwgMyArKysKIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQg YS9kcml2ZXJzL25ldC9ib25kaW5nL2JvbmRfbWFpbi5jIGIvZHJpdmVycy9uZXQvYm9uZGluZy9i b25kX21haW4uYwppbmRleCAzMzMzODdmMWYxZmUuLjYyNjU5YWJmNzNjZCAxMDA2NDQKLS0tIGEv ZHJpdmVycy9uZXQvYm9uZGluZy9ib25kX21haW4uYworKysgYi9kcml2ZXJzL25ldC9ib25kaW5n L2JvbmRfbWFpbi5jCkBAIC0xOTQ4LDYgKzE5NDgsOSBAQCBzdGF0aWMgaW50IF9fYm9uZF9yZWxl YXNlX29uZShzdHJ1Y3QgbmV0X2RldmljZSAqYm9uZF9kZXYsCiAJaWYgKCFib25kX2hhc19zbGF2 ZXMoYm9uZCkpIHsKIAkJYm9uZF9zZXRfY2Fycmllcihib25kKTsKIAkJZXRoX2h3X2FkZHJfcmFu ZG9tKGJvbmRfZGV2KTsKKwkJYm9uZC0+bmVzdF9sZXZlbCA9IFNJTkdMRV9ERVBUSF9ORVNUSU5H OworCX0gZWxzZSB7CisJCWJvbmQtPm5lc3RfbGV2ZWwgPSBkZXZfZ2V0X25lc3RfbGV2ZWwoYm9u ZF9kZXYpICsgMTsKIAl9CiAKIAl1bmJsb2NrX25ldHBvbGxfdHgoKTsKLS0gCjIuMjAuMQoKCkZy b20gNDE3YWRlZWFlY2RiYjFhY2Y5NDlhNmJkYTRjOWJkYjE2MjQ0MWY3MiBNb24gU2VwIDE3IDAw OjAwOjAwIDIwMDEKRnJvbTogV2lsbGVtIGRlIEJydWlqbiA8d2lsbGVtYkBnb29nbGUuY29tPgpE YXRlOiBNb24sIDcgSmFuIDIwMTkgMTY6NDc6MzMgLTA1MDAKU3ViamVjdDogW1BBVENIIDEzLzE1 XSBpcDogb24gcXVldWVkIHNrYiB1c2Ugc2tiX2hlYWRlcl9wb2ludGVyIGluc3RlYWQgb2YKIHBz a2JfbWF5X3B1bGwKClsgVXBzdHJlYW0gY29tbWl0IDRhMDZmYTY3YzRkYTIwMTQ4ODAzNTI1MTUx ODQ1Mjc2Y2RiOTk1YzEgXQoKQ29tbWl0IDJlZmQ0ZmNhNzAzYSAoImlwOiBpbiBjbXNnIElQKFY2 KV9PUklHRFNUQUREUiBjYWxsCnBza2JfbWF5X3B1bGwiKSBhdm9pZGVkIGEgcmVhZCBiZXlvbmQg dGhlIGVuZCBvZiB0aGUgc2tiIGxpbmVhcgpzZWdtZW50IGJ5IGNhbGxpbmcgcHNrYl9tYXlfcHVs bC4KClRoYXQgZnVuY3Rpb24gY2FuIHRyaWdnZXIgYSBCVUdfT04gaW4gcHNrYl9leHBhbmRfaGVh ZCBpZiB0aGUgc2tiIGlzCnNoYXJlZCwgd2hpY2ggaXQgaXMgd2hlbiB3aGVuIHBlZWtpbmcuIEl0 IGNhbiBhbHNvIHJldHVybiBFTk9NRU0uCgpBdm9pZCBib3RoIGJ5IHN3aXRjaGluZyB0byBzYWZl ciBza2JfaGVhZGVyX3BvaW50ZXIuCgpGaXhlczogMmVmZDRmY2E3MDNhICgiaXA6IGluIGNtc2cg SVAoVjYpX09SSUdEU1RBRERSIGNhbGwgcHNrYl9tYXlfcHVsbCIpClJlcG9ydGVkLWJ5OiBzeXpi b3QgPHN5emthbGxlckBnb29nbGVncm91cHMuY29tPgpTdWdnZXN0ZWQtYnk6IEVyaWMgRHVtYXpl dCA8ZWR1bWF6ZXRAZ29vZ2xlLmNvbT4KU2lnbmVkLW9mZi1ieTogV2lsbGVtIGRlIEJydWlqbiA8 d2lsbGVtYkBnb29nbGUuY29tPgpTaWduZWQtb2ZmLWJ5OiBEYXZpZCBTLiBNaWxsZXIgPGRhdmVt QGRhdmVtbG9mdC5uZXQ+Ci0tLQogbmV0L2lwdjQvaXBfc29ja2dsdWUuYyB8IDEyICsrKysrLS0t LS0tLQogbmV0L2lwdjYvZGF0YWdyYW0uYyAgICB8IDEwICsrKystLS0tLS0KIDIgZmlsZXMgY2hh bmdlZCwgOSBpbnNlcnRpb25zKCspLCAxMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9uZXQv aXB2NC9pcF9zb2NrZ2x1ZS5jIGIvbmV0L2lwdjQvaXBfc29ja2dsdWUuYwppbmRleCBmZmZjYzEz MDkwMGUuLjgyZjM0MWU4NGZhZSAxMDA2NDQKLS0tIGEvbmV0L2lwdjQvaXBfc29ja2dsdWUuYwor KysgYi9uZXQvaXB2NC9pcF9zb2NrZ2x1ZS5jCkBAIC0xNDgsMTkgKzE0OCwxNyBAQCBzdGF0aWMg dm9pZCBpcF9jbXNnX3JlY3Zfc2VjdXJpdHkoc3RydWN0IG1zZ2hkciAqbXNnLCBzdHJ1Y3Qgc2tf YnVmZiAqc2tiKQogCiBzdGF0aWMgdm9pZCBpcF9jbXNnX3JlY3ZfZHN0YWRkcihzdHJ1Y3QgbXNn aGRyICptc2csIHN0cnVjdCBza19idWZmICpza2IpCiB7CisJX19iZTE2IF9wb3J0c1syXSwgKnBv cnRzOwogCXN0cnVjdCBzb2NrYWRkcl9pbiBzaW47Ci0JX19iZTE2ICpwb3J0czsKLQlpbnQgZW5k OwotCi0JZW5kID0gc2tiX3RyYW5zcG9ydF9vZmZzZXQoc2tiKSArIDQ7Ci0JaWYgKGVuZCA+IDAg JiYgIXBza2JfbWF5X3B1bGwoc2tiLCBlbmQpKQotCQlyZXR1cm47CiAKIAkvKiBBbGwgY3VycmVu dCB0cmFuc3BvcnQgcHJvdG9jb2xzIGhhdmUgdGhlIHBvcnQgbnVtYmVycyBpbiB0aGUKIAkgKiBm aXJzdCBmb3VyIGJ5dGVzIG9mIHRoZSB0cmFuc3BvcnQgaGVhZGVyIGFuZCB0aGlzIGZ1bmN0aW9u IGlzCiAJICogd3JpdHRlbiB3aXRoIHRoaXMgYXNzdW1wdGlvbiBpbiBtaW5kLgogCSAqLwotCXBv cnRzID0gKF9fYmUxNiAqKXNrYl90cmFuc3BvcnRfaGVhZGVyKHNrYik7CisJcG9ydHMgPSBza2Jf aGVhZGVyX3BvaW50ZXIoc2tiLCBza2JfdHJhbnNwb3J0X29mZnNldChza2IpLAorCQkJCSAgIHNp emVvZihfcG9ydHMpLCAmX3BvcnRzKTsKKwlpZiAoIXBvcnRzKQorCQlyZXR1cm47CiAKIAlzaW4u c2luX2ZhbWlseSA9IEFGX0lORVQ7CiAJc2luLnNpbl9hZGRyLnNfYWRkciA9IGlwX2hkcihza2Ip LT5kYWRkcjsKZGlmZiAtLWdpdCBhL25ldC9pcHY2L2RhdGFncmFtLmMgYi9uZXQvaXB2Ni9kYXRh Z3JhbS5jCmluZGV4IDdiMDkwNTc4ZjA0NC4uY2IyNDg1MGQyYzdmIDEwMDY0NAotLS0gYS9uZXQv aXB2Ni9kYXRhZ3JhbS5jCisrKyBiL25ldC9pcHY2L2RhdGFncmFtLmMKQEAgLTcwMSwxNyArNzAx LDE1IEBAIHZvaWQgaXA2X2RhdGFncmFtX3JlY3Zfc3BlY2lmaWNfY3RsKHN0cnVjdCBzb2NrICpz aywgc3RydWN0IG1zZ2hkciAqbXNnLAogCX0KIAlpZiAobnAtPnJ4b3B0LmJpdHMucnhvcmlnZHN0 YWRkcikgewogCQlzdHJ1Y3Qgc29ja2FkZHJfaW42IHNpbjY7Ci0JCV9fYmUxNiAqcG9ydHM7Ci0J CWludCBlbmQ7CisJCV9fYmUxNiBfcG9ydHNbMl0sICpwb3J0czsKIAotCQllbmQgPSBza2JfdHJh bnNwb3J0X29mZnNldChza2IpICsgNDsKLQkJaWYgKGVuZCA8PSAwIHx8IHBza2JfbWF5X3B1bGwo c2tiLCBlbmQpKSB7CisJCXBvcnRzID0gc2tiX2hlYWRlcl9wb2ludGVyKHNrYiwgc2tiX3RyYW5z cG9ydF9vZmZzZXQoc2tiKSwKKwkJCQkJICAgc2l6ZW9mKF9wb3J0cyksICZfcG9ydHMpOworCQlp ZiAocG9ydHMpIHsKIAkJCS8qIEFsbCBjdXJyZW50IHRyYW5zcG9ydCBwcm90b2NvbHMgaGF2ZSB0 aGUgcG9ydCBudW1iZXJzIGluIHRoZQogCQkJICogZmlyc3QgZm91ciBieXRlcyBvZiB0aGUgdHJh bnNwb3J0IGhlYWRlciBhbmQgdGhpcyBmdW5jdGlvbiBpcwogCQkJICogd3JpdHRlbiB3aXRoIHRo aXMgYXNzdW1wdGlvbiBpbiBtaW5kLgogCQkJICovCi0JCQlwb3J0cyA9IChfX2JlMTYgKilza2Jf dHJhbnNwb3J0X2hlYWRlcihza2IpOwotCiAJCQlzaW42LnNpbjZfZmFtaWx5ID0gQUZfSU5FVDY7 CiAJCQlzaW42LnNpbjZfYWRkciA9IGlwdjZfaGRyKHNrYiktPmRhZGRyOwogCQkJc2luNi5zaW42 X3BvcnQgPSBwb3J0c1sxXTsKLS0gCjIuMjAuMQoKCkZyb20gMDUxMjU3YWNlZjU5NmZmMTBhMTAw OWVlM2QxNTZkZWEwYTc2MDcyYyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogSGVpbmVy IEthbGx3ZWl0IDxoa2FsbHdlaXQxQGdtYWlsLmNvbT4KRGF0ZTogU3VuLCA2IEphbiAyMDE5IDIw OjQ0OjAwICswMTAwClN1YmplY3Q6IFtQQVRDSCAxNC8xNV0gcjgxNjk6IGRvbid0IHRyeSB0byBy ZWFkIGNvdW50ZXJzIGlmIGNoaXAgaXMgaW4gYSBQQ0kKIHBvd2VyLXNhdmUgc3RhdGUKClsgVXBz dHJlYW0gY29tbWl0IDEwMjYyYjBiNTM2NjZjYmM1MDY5ODliMTdhM2VhZDFlOWMzYjQzYjQgXQoK QXZvaWQgbG9nIHNwYW0gY2F1c2VkIGJ5IHRyeWluZyB0byByZWFkIGNvdW50ZXJzIGZyb20gdGhl IGNoaXAgd2hpbHN0Cml0IGlzIGluIGEgUENJIHBvd2VyLXNhdmUgc3RhdGUuCgpSZWZlcmVuY2U6 IGh0dHBzOi8vYnVnemlsbGEua2VybmVsLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA3NDIxCgpGaXhl czogMWVmNzI4NmU3ZjM2ICgicjgxNjk6IERlcmVmZXJlbmNlIE1NSU8gYWRkcmVzcyBpbW1lZGlh dGVseSBiZWZvcmUgdXNlIikKU2lnbmVkLW9mZi1ieTogSGVpbmVyIEthbGx3ZWl0IDxoa2FsbHdl aXQxQGdtYWlsLmNvbT4KU2lnbmVkLW9mZi1ieTogRGF2aWQgUy4gTWlsbGVyIDxkYXZlbUBkYXZl bWxvZnQubmV0PgotLS0KIGRyaXZlcnMvbmV0L2V0aGVybmV0L3JlYWx0ZWsvcjgxNjkuYyB8IDYg KysrKy0tCiAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L3JlYWx0ZWsvcjgxNjkuYyBiL2RyaXZl cnMvbmV0L2V0aGVybmV0L3JlYWx0ZWsvcjgxNjkuYwppbmRleCA0NGVjYWI2MzM5YWIuLjc4ZWE5 NjM5YjYyMiAxMDA2NDQKLS0tIGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvcmVhbHRlay9yODE2OS5j CisrKyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L3JlYWx0ZWsvcjgxNjkuYwpAQCAtMTcyOSwxMSAr MTcyOSwxMyBAQCBzdGF0aWMgYm9vbCBydGw4MTY5X3Jlc2V0X2NvdW50ZXJzKHN0cnVjdCBydGw4 MTY5X3ByaXZhdGUgKnRwKQogCiBzdGF0aWMgYm9vbCBydGw4MTY5X3VwZGF0ZV9jb3VudGVycyhz dHJ1Y3QgcnRsODE2OV9wcml2YXRlICp0cCkKIHsKKwl1OCB2YWwgPSBSVExfUjgodHAsIENoaXBD bWQpOworCiAJLyoKIAkgKiBTb21lIGNoaXBzIGFyZSB1bmFibGUgdG8gZHVtcCB0YWxseSBjb3Vu dGVycyB3aGVuIHRoZSByZWNlaXZlcgotCSAqIGlzIGRpc2FibGVkLgorCSAqIGlzIGRpc2FibGVk LiBJZiAweGZmIGNoaXAgbWF5IGJlIGluIGEgUENJIHBvd2VyLXNhdmUgc3RhdGUuCiAJICovCi0J aWYgKChSVExfUjgodHAsIENoaXBDbWQpICYgQ21kUnhFbmIpID09IDApCisJaWYgKCEodmFsICYg Q21kUnhFbmIpIHx8IHZhbCA9PSAweGZmKQogCQlyZXR1cm4gdHJ1ZTsKIAogCXJldHVybiBydGw4 MTY5X2RvX2NvdW50ZXJzKHRwLCBDb3VudGVyRHVtcCk7Ci0tIAoyLjIwLjEKCgpGcm9tIDczZWEw MDZmYzkwODQ4NjVmMGJjMThlZjEyOWVmYTEyMmI4MmZjNGIgTW9uIFNlcCAxNyAwMDowMDowMCAy MDAxCkZyb206IENvbmcgV2FuZyA8eGl5b3Uud2FuZ2NvbmdAZ21haWwuY29tPgpEYXRlOiBTYXQs IDUgSmFuIDIwMTkgMjM6NDU6MjYgLTA4MDAKU3ViamVjdDogW1BBVENIIDE1LzE1XSBzbWM6IG1v dmUgdW5oYXNoIGFzIGVhcmx5IGFzIHBvc3NpYmxlIGluIHNtY19yZWxlYXNlKCkKClsgVXBzdHJl YW0gY29tbWl0IDI2ZDkyZTk1MWZlMGE0NGVlNGFlYzE1N2NhYmI2NWE4MThjYzgxNTEgXQoKSW4g c21jX3JlbGVhc2UoKSB3ZSByZWxlYXNlIHNtYy0+Y2xjc29jayBiZWZvcmUgdW5oYXNoIHRoZSBz bWMKc29jaywgYnV0IGEgcGFyYWxsZWwgc21jX2RpYWdfZHVtcCgpIG1heSBiZSBzdGlsbCByZWFk aW5nCnNtYy0+Y2xjc29jaywgdGhlcmVmb3JlIHRoaXMgY291bGQgY2F1c2UgYSB1c2UtYWZ0ZXIt ZnJlZSBhcwpyZXBvcnRlZCBieSBzeXpib3QuCgpSZXBvcnRlZC1hbmQtdGVzdGVkLWJ5OiBzeXpi b3QrZmJkMWU1NDc2ZTRjOTRjN2IzNGVAc3l6a2FsbGVyLmFwcHNwb3RtYWlsLmNvbQpGaXhlczog NTFmMWRlNzlhZDhlICgibmV0L3NtYzogcmVwbGFjZSBzb2NrX3B1dCB3b3JrZXIgYnkgc29ja2V0 IHJlZmNvdW50aW5nIikKQ2M6IFVyc3VsYSBCcmF1biA8dWJyYXVuQGxpbnV4LmlibS5jb20+ClNp Z25lZC1vZmYtYnk6IENvbmcgV2FuZyA8eGl5b3Uud2FuZ2NvbmdAZ21haWwuY29tPgpSZXBvcnRl ZC1ieTogc3l6Ym90KzBiZjJlMDEyNjlmMTI3NGI0YjAzQHN5emthbGxlci5hcHBzcG90bWFpbC5j b20KUmVwb3J0ZWQtYnk6IHN5emJvdCtlMzEzMjg5NTYzMGY5NTczMDZiY0BzeXprYWxsZXIuYXBw c3BvdG1haWwuY29tClNpZ25lZC1vZmYtYnk6IERhdmlkIFMuIE1pbGxlciA8ZGF2ZW1AZGF2ZW1s b2Z0Lm5ldD4KLS0tCiBuZXQvc21jL2FmX3NtYy5jIHwgNCArKystCiAxIGZpbGUgY2hhbmdlZCwg MyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvbmV0L3NtYy9hZl9z bWMuYyBiL25ldC9zbWMvYWZfc21jLmMKaW5kZXggODJjYjBlNTYzNGJjLi41ZDIyMTQxODM2MDEg MTAwNjQ0Ci0tLSBhL25ldC9zbWMvYWZfc21jLmMKKysrIGIvbmV0L3NtYy9hZl9zbWMuYwpAQCAt MTQ2LDYgKzE0Niw5IEBAIHN0YXRpYyBpbnQgc21jX3JlbGVhc2Uoc3RydWN0IHNvY2tldCAqc29j aykKIAkJc29ja19zZXRfZmxhZyhzaywgU09DS19ERUFEKTsKIAkJc2stPnNrX3NodXRkb3duIHw9 IFNIVVRET1dOX01BU0s7CiAJfQorCisJc2stPnNrX3Byb3QtPnVuaGFzaChzayk7CisKIAlpZiAo c21jLT5jbGNzb2NrKSB7CiAJCWlmIChzbWMtPnVzZV9mYWxsYmFjayAmJiBzay0+c2tfc3RhdGUg PT0gU01DX0xJU1RFTikgewogCQkJLyogd2FrZSB1cCBjbGNzb2NrIGFjY2VwdCAqLwpAQCAtMTcw LDcgKzE3Myw2IEBAIHN0YXRpYyBpbnQgc21jX3JlbGVhc2Uoc3RydWN0IHNvY2tldCAqc29jaykK IAkJc21jX2Nvbm5fZnJlZSgmc21jLT5jb25uKTsKIAlyZWxlYXNlX3NvY2soc2spOwogCi0Jc2st PnNrX3Byb3QtPnVuaGFzaChzayk7CiAJc29ja19wdXQoc2spOyAvKiBmaW5hbCBzb2NrX3B1dCAq Lwogb3V0OgogCXJldHVybiByYzsKLS0gCjIuMjAuMQoK ----Next_Part(Sun_Jan_20_11_12_06_2019_013)----