From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 8602 invoked by alias); 27 Jan 2017 22:26:05 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 8567 invoked by uid 89); 27 Jan 2017 22:26:03 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=0.6 required=5.0 tests=AWL,BAYES_50,RCVD_IN_DNSWL_NONE,SPF_HELO_PASS autolearn=ham version=3.3.2 spammy=user_reg_add, 979, SP, *aarch64_syscall_record X-Spam-User: qpsmtpd, 2 recipients X-HELO: NAM01-SN1-obe.outbound.protection.outlook.com Received: from mail-sn1nam01on0079.outbound.protection.outlook.com (HELO NAM01-SN1-obe.outbound.protection.outlook.com) (104.47.32.79) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Fri, 27 Jan 2017 22:25:53 +0000 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Steve.Ellcey@cavium.com; Received: from sellcey-dt.caveonetworks.com (50.233.148.156) by BLUPR0701MB1060.namprd07.prod.outlook.com (10.160.35.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.860.13; Fri, 27 Jan 2017 22:25:49 +0000 Message-ID: <1485555939.2509.5.camel@caviumnetworks.com> Subject: Re: [PATCH] Patch 2 of 2 for aarch64 ILP32 support in gdb From: Steve Ellcey To: Yao Qi CC: binutils , gdb-patches , Yury Norov , , "Pinski, Andrew" Date: Fri, 27 Jan 2017 22:26:00 -0000 In-Reply-To: <20170126141414.GY28060@E107787-LIN> References: <1485303639.29977.10.camel@caviumnetworks.com> <20170126141414.GY28060@E107787-LIN> Content-Type: multipart/mixed; boundary="=-zkrWSN6S6iAKquZA8d87" MIME-Version: 1.0 X-ClientProxiedBy: DM5PR10CA0024.namprd10.prod.outlook.com (10.172.33.34) To BLUPR0701MB1060.namprd07.prod.outlook.com (10.160.35.147) X-MS-Office365-Filtering-Correlation-Id: 9b83c852-e138-4737-441d-08d4470372f9 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001);SRVR:BLUPR0701MB1060; X-Microsoft-Exchange-Diagnostics: 1;BLUPR0701MB1060;3:6uBH2UWUG97h4higpstg8E69p0992l9+L7hKmyw5klIis2vE9C7crCW4whkBzeOdJFHrXiTX9kr4FsrSNHdYV5+CEt2NxHPIg9iIV8N8PoR/0czXP901SVBXJ0j0k40AI+I3z1wbu1QlQpy7bSt1GI4hOWtU3nix8azEonTxZZOlTblhQrMxLqSVrUZ54AkHgTbOHdOYBn/K2cJy4WfGveVORtXBon9HTRz0pmXXWaJudWJY4QRqXEVRtTDesMATjt20z5imIOSI+dKet/fASQ== X-Microsoft-Exchange-Diagnostics: 1;BLUPR0701MB1060;25:Wbk2/FlxW3fP2bEdeusrzGSdRqX7kYPyukGZQ40lVM+4icAkGe+SUMxSyZsgzXKpAccw/oyihxhi/q8j5hqlJCA5Y0e5mKMrVT7i8rtmgswJYO1LTX2iUdVFZBgYgE7i0bNT0znmw1nhlJNPU67wYYcBF9NzJpOFXVSL+aM8oc3VI6cpSq723gMD2YXh651U40Tub4Tzr5rLWg4b0IKy1AH/TV6pxUBfBENaMXThzS4fRmtebq8P8T1MYCwWRIYkI+dNQmqivua4pXh/MGaOSP+VAmer7nvErCybjyP7lECDWNwI//irn18PSO7FqfDymi8625jClCjIs8W813c7U7etOZtqS5BgzNYrcRQSMqYbYQB+98KjGMt3bDe+mzz+p0WRrHckbJt3Qww+WIb/pi/lM3fyjz4K/HBMp/LJb6cLzwGJK07WQ52YY8R3VAglzEwuLgHU09Kh05XVLLyEomtDW5o6wi4lgG2ivh1FMctUY/KtSQLi4eGG6ZLQVhZquLqD0sM9btytwoba18lpBYJk7jeGRk0nYuUloSqxbPip91RNDFgMKExOUS9S2Eib7cPaxgWsHwZpB57PYh/W9Giy+FxNBIXuxg8hfqiXTA++eSx+usNE24XCnMk8oxbZJMPxYTZfhMlO8Z8/TWKTXIOm+yOH1Rh5HDWuph/7QprgYjeO+YS/A9eN4558hv5DWQ9z5He02PE6vuRmKcN2DVzDtxsWWpJvffm2CTFJbTEM16GNq33GvpUzSKBxUnRrU8GMPNX0ZMEHFnweS7LV1b211MP0hhaLaAlQ9C83JS1wr3vT/URTxxPE8ugX2O9C/K9albL9E2p6DeRaFce9aVBT+Rk7AtinhbNYmzUuqPusvQrTDTDbFayVdIHWqzEfAzaoRMItvbfjh5rkidx3CwlpyvlUgq5did6hNt38Cun9d3V9rHVyoAn3yNNE7T6W X-Microsoft-Exchange-Diagnostics: 1;BLUPR0701MB1060;31:IIM/e+KF2GImajeGOEvN+sPHJbGY6/dazINtm0Eg+SpW9RYgygz1AJt2nC6+Pp0v5N+XcBnkOEC6ucxDkMU10J52sQugCSEzRlWtQCrXzDwg5/jbgXiJZSqjZ1d8gMfivP9lUNvNQ2UWTg6RyqpoV9ycUEeL8BPObVfLAIE7qZny2NX3p4LjLiIZmrch4Helc04ItGQg9jHbMDj5QpPQBVirkiFPlqKxeEcPDgZM1HnsP9bs3PsL3s6u2du5vVu3iwnMmXOnYcebQl+BlwZjQsEK9xz4hUe6SXiZ4ix/ECM=;20:h44rNODgHbp+4F7QU52Am6hxfvs87i+mJx1c6RX35lIOs6PBJPi2XUyHMzIf9PzTFlPkcTVXCnVybDZGkPNdDM+8uE7jpQ8m6qsro7udYLlZ3AbkZlNkYMq3z4l+vnd4/qmIM2+5XMHRVJv7BeG6IEX1MfXYkq9fSeEV/QVhMLds+35sVB+I1oIQFr0Dq/fb/2/N0fMMIh95ORGm2IX25igsPTwf0Qi1E5ZdiCCXRjgNeTMZwAb+p1p/V+nCWQg2/BneDwLSSeYNI1hmw8u9Qyo7Rfd3S0hbqd8KHW526yC9GkDlp3gRAQczqUhJu4kbztSvnMG4933J2Y7DWHv9FIx39tFSrA99yIYahaiuhs5JG26jw7d1KlsbmX+BkM3bRjY9JCF01Rw9P7Fq1ji0MSlU0WtrOk/zgI2PZjwyhMZ7W4HyytAH4GyRPWGBkoVbzarEZaeW7k2CdtCz+3vu1JNsuRzMpnoPRkVOA6s9/p0o2NZ9fn9POKiybpbekXVB7tSC/S7fRIdvOaPdubVI7YHqrKSO4mMecNF8qt9wm/Bo/1+djqa0UcPYAnrO7cyHB6zpR7HaVtocOSCor1M9gjwSBiA7yRz/SpR+mIzChhw= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(102415395)(6040375)(601004)(2401047)(8121501046)(5005006)(3002001)(10201501046)(6041248)(20161123555025)(20161123560025)(20161123562025)(20161123564025)(6072148);SRVR:BLUPR0701MB1060;BCL:0;PCL:0;RULEID:;SRVR:BLUPR0701MB1060; X-Microsoft-Exchange-Diagnostics: 1;BLUPR0701MB1060;4:1B5IXJ9fSjCjJkxzLckkBfnPzJy0pw+JkEv4cNgf0/16mLvIZQ+YqZSSbD5ZfXBHjHOm0T7pmVe3U9wLz+k/0coNHcheBM/6x7s0JfqYEmd7ys7r6dclZfycKTarXGupIP/uuvdWQfOEdXOGXg7F0jSrdAuMgncuio/b0KHLCCnF56m3luTqVmNNdthj6W5Ag/mn58Gg8Nwt/NcNafOnxMYJopUCnL1dhjKbNGQrfkA52OBZ/k/zyj8i1sYWe76IxdbsKYlnIkj+akb6Vsc36ExTaL6vaATHM7qBDjAleO6OYxJzu7e7FbuhB82JajZuRwbSRK6A35/zNa7wmVOSjqZbzv0MGlvM37GXkXqC8+vztekppkIAul8XyYgK+ITWh0yWZClAlcDmCd2hi4N/LsW/ZmtKIbUdLTVdWbbHDrKCJQ/xNzeiyapTneX4ZqemEYnHRmDGCAC3sDchySfh5imjO6z18eJdPrTjARPewfwX6Kc5147dQf0Em0JEelkiCZNx8MgfkL+IVtV/IhvbaTQ04Jxalq+0vxX1FH0XNvhlwj9XFEYLf0lgYI8fpyy1NtLySNcVnLVGeCWNlrio93Emrnf1GDOaTY/Cok9Yhuo= X-Forefront-PRVS: 0200DDA8BE X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(4630300001)(6009001)(7916002)(39450400003)(377424004)(189002)(199003)(24454002)(69596002)(110136003)(4326007)(68736007)(2906002)(4001430100002)(103116003)(53936002)(568964002)(38730400001)(39060400001)(5660300001)(6666003)(305945005)(3846002)(2950100002)(25786008)(7736002)(512874002)(6116002)(6506006)(42882006)(229853002)(6306002)(6512007)(36756003)(54906002)(6486002)(6916009)(84326002)(2476003)(4610100001)(107886002)(81166006)(81156014)(66066001)(189998001)(53416004)(42186005)(1411001)(97736004)(105586002)(106356001)(50986999)(5890100001)(76176999)(92566002)(101416001)(33646002)(50226002)(8676002)(99106002);DIR:OUT;SFP:1101;SCL:1;SRVR:BLUPR0701MB1060;H:sellcey-dt.caveonetworks.com;FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; Received-SPF: None (protection.outlook.com: cavium.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;BLUPR0701MB1060;23:+EPT1t6XbOYMj0BlorArZHtBWISwDM6zHDyJdch?= =?us-ascii?Q?ts4hsbXMRorDasbihIZ+GrhfhHpbtVdweHjQqe4jiAz2QM9zm3Jqc6s/v1R+?= =?us-ascii?Q?sV7A7PvlRwnUxwRxTcpE+gXxZB/3DcF2P7tNGzA4I7efYldcGs9ot3+18bLq?= =?us-ascii?Q?UHRHrAl72G8HtekupWwKO8xYzkEZCqvW2ZZO0k5nYI6GoB4Zx4cfP0Y99Iqo?= =?us-ascii?Q?lLBrIcEydaGsLdH5UOtPx5BDUAucOlwEscAYRpHGNN+uDMbNiaEePqWDWTqO?= =?us-ascii?Q?qS8O/dwJbT6d6hsjMWWE2JlM0ZSZtIKBed0kqr0iJ3BripLNk0zD0wCmUI73?= =?us-ascii?Q?AI6SttFvfsVPSwQpDb/AZN3uEhiyyt45+hssKVwozyo1pjpaizk0A3DkbXOg?= =?us-ascii?Q?PWo2rSiHLo7eYpCVbMqKCrceDb82j6j3Iv5d+nsXKJP6rNPynl8X0L870Bvm?= =?us-ascii?Q?x7ZUt+8RFwd0rDdomtEu96L404lnpwaRb1Cd1rjAQYpXn+ATdcapZBHheuBO?= =?us-ascii?Q?ENXA5BTEf2ZfT9s6//axM/xkfRuTPjDKJ5ZOWLm1EdACBIBvsQv5FKQqnuE2?= =?us-ascii?Q?8pNssEhf/kVxsvKPJSZsb0avdzsbcWutA6IspClHIM2palhWVcPqVaAMBc/u?= =?us-ascii?Q?/o71pK37dFrC6Up7TvAIJAGU5uZ5xa9OaeEQ9sblqR16Kf0vNr4NJ/dcARuf?= =?us-ascii?Q?dSa+eWAjS79FXfCuPJrOQ45hauXgbZceztpuZVb5uegYBTCDSl/oCskqiBwY?= =?us-ascii?Q?RTR1ckZKm96Ga71hKN8LQ4Lpd7jyEu3NJtc65AprilNGI0BSwgcrEI7+tQ3d?= =?us-ascii?Q?a9D89o09u5Ukl3OCVMC1eQnR+m7JwvhR0/CpMp+46zEBp3Sb5kCNFwpCq9XG?= =?us-ascii?Q?LF8YzZkb5SucMQPAQMsdpKqpJKdwz2qp6426f9Pymo0741/BE9CWB7CudyHB?= =?us-ascii?Q?9mJgiTyJHS51zCuktGkUhoNKRQSTNQlKermRgEQ36qa+Q28xWFFuL5QBI5Z/?= =?us-ascii?Q?DUC9wqfFidp6KAwvI6SS5XXx7mU+Qo3pKQP4mj9JzaEXW60tskXQGXRUj8YZ?= =?us-ascii?Q?A+kD3SQ5A+NihacvVZFEIIeF8F8wj6RLIXFZV0g+YsWoek1hOwxG/ARCUjNL?= =?us-ascii?Q?ruX0UotFg/ahcvkxlcDEfcudDQsQ90cjQAE5p/aNcDlI/XPfQY8XfIihInly?= =?us-ascii?Q?w+XDsuo5EPnEsZD+vY6FcSIHZcUNMeSw5JIj/Ssr58AeJcBKeU+eLnTiOdXP?= =?us-ascii?Q?vGBM8cisJ1zZNGuey5c+4eRhKnRxwo14SmlRmmuBfobaE0Jf241i1XkG1g0h?= =?us-ascii?Q?G9Bf4XZWDGM7At2CTlIVEDiCkDrbGkX6jw4sY8evFXQtL+nadjQiTBteRidJ?= =?us-ascii?Q?oDKBX0jhu7MAWKkU9VWr71npl8D42uovpG4R23S+SwokaqDqIfMLF/5JH4hk?= =?us-ascii?Q?1CD7lXE8zbFbMjo6bkVBFpGRAYIBR+FE=3D?= X-Microsoft-Exchange-Diagnostics: 1;BLUPR0701MB1060;6:MJFTFdks+5oMoykyUc8PfqiR08TkumR81/Hsf//nujV3PNst1vEPjr6MzlkUslhJbbI7tJVkR0sIlnZwqkbUUVrjR281AlgOjtRgt+f3kc05dkL1h7JbIjNMKsA3Zks5WjkjuMtQHJ9qqy8zvLMoU6Uyf8OoHs5JEOoyV0NsjRT6TLQlK+ZNYu/pTeU4rq0vDLRTBEJ4a1qtjnHZUicaNal1iv6FxgQuDzV/l32CrCqzGGOhyuajUbqfTxRqXw6CoIv1tzuQ13h1LFZ11PFVvMz+Owhj6z8/XUlGvqnZqeILOLdt65cMDYRVjBnRwuQGAqzkrjE44aCqWUywAH4+g3WEOGw09QQoPffYVntz/k9m8aoHGGeA1icT/6Y/05IbFkptWjwk6lNH9wPClh5ao96IpXFd/8JSxNLvNNM8HF4=;5:VHT9iKixQadmfEBVB7ZVg1SlsypUde8phzSCZLCrYO0JRItFibM1q+cfeI0qFKQM4NnmON6XaVR/E1sthVpkAv9D2Yc5JfqN++N7+uLF8TbotnzQJPOyJcAxVWMzq4MxrwOEfOLVGdj4QAarrYEd1sZr1tPRqGgCFlWZ61JoewQ=;24:6rcVkTSYr/jjjN4nl8xnbZpsDFyfYcdA4JCVAjJkqFw+rzgV2EwkgU4UDY588EZQWvm991xrx7vylMOceLJ96c/bLa1icR9Z3XEjum1cPPo= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;BLUPR0701MB1060;7:6fHDxBhoj06zdUuLj47R1k2Dz4wmfySDR6w6Xw0DcrqjDNGb5hGqbfg6Eu+KRpK87faEJXHAXd4nDdImd1o0K0kwQeBPFARS2HoLv9qUbq90eJNhw+LlfWA8h6WpHHv902AGC1IVW4j8qKjPGUvtTtMPh/ZAmPPUXPUnrUpMed7UKkMZHtw6AHRj9T8WQp7p9WfUUAY3kk5GFTNB1ZRczsBf854RAyMdh7khitmI/3dYL2RxFbswNLVzSi8Yk+4cH4Jp/RUGmwecIv3/HdwYjgFkI7oRxl2jBTvdN8zUqQmvD91QNAZVqXYR8dFtmF+/uCQUSA6cU09+IMgBNrPBylLrXN9COjzjmSQXtrG+aPDfHx1mK/+V3A+P18o3XawcyOxNyE5PcACsF3ckhOJFog4BVCBLVfzbDVps/EucO39lqAuK3+fwrmjA4UUPHf4ge9O1jVd0gHPvceBq8PQ0NQ== X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Jan 2017 22:25:49.8619 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLUPR0701MB1060 X-SW-Source: 2017-01/txt/msg00637.txt.bz2 --=-zkrWSN6S6iAKquZA8d87 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit Content-length: 2213 On Thu, 2017-01-26 at 14:14 +0000, Yao Qi wrote: >  > Could you remove these ilp32 xml files, use the existing aarch64 target > description, and try the patch below? Yao, I removed the ilp32 xml files and applied the patch you included and made the other changes.  gdb seems to be working as well as it did with the original patch but I ran into a problem that I missed before. If I apply the gdb/gdbserver patch attached to this email and the earlier bfd patch: https://sourceware.org/ml/gdb-patches/2017-01/msg00508.html and I try to run gdb on an ILP32 program I get: (gdb) r Starting program: /home/ubuntu/sellcey/gdb-ilp32/x32  PC register is not available I didn't see this before because I didn't have this bfd patch: https://sourceware.org/ml/binutils/2016-12/msg00167.html That patch seems reasonable and it fixed some test failures I had in the glibc testsuite but it is breaking gdb.  If I undo this patch by making this change to bfd/cpu-aarch64.c:  static const bfd_arch_info_type bfd_aarch64_arch_ilp32 = -  N (bfd_mach_aarch64_ilp32, "aarch64:ilp32", 32, FALSE, NULL); +  N (bfd_mach_aarch64_ilp32, "aarch64:ilp32", 64, FALSE, NULL); Then gdb starts working again and I can debug 32 bit programs. I am not sure how this change to the ILP32 aarch64 bfd description is affecting gdb and why this change would break things.  Do you know why this change messes up gdb? Steve Ellcey sellcey@cavium.com 2017-01-27  Andrew Pinski       Steve Ellcey       Yao Qi   * aarch64-linux-tdep.c (aarch64_linux_init_abi): Set link map offsets to 32 or 64 bits. * aarch64-tdep.c (aarch64_ilp32_register_type): New function. (aarch64_gdbarch_init): Setup ILP32 support. Make sure the gdbarches have compatible ilp32 flags. Set long and ptr sizes correctly for ilp32. * aarch64-tdep.h (gdbarch_tdep) : New field. 2017-01-27  Andrew Pinski       Steve Ellcey   * linux-aarch64-low.c (aarch64_linux_read_description): Use machine instead of is_elf64 to determine architecture.  Give an error when using 32 bit gdbserver on 64 bit program. --=-zkrWSN6S6iAKquZA8d87 Content-Disposition: attachment; filename="gdb-new.patch" Content-Type: text/x-patch; name="gdb-new.patch"; charset="UTF-8" Content-Transfer-Encoding: base64 Content-length: 6511 ZGlmZiAtLWdpdCBhL2dkYi9hYXJjaDY0LWxpbnV4LXRkZXAuYyBiL2dkYi9h YXJjaDY0LWxpbnV4LXRkZXAuYwppbmRleCBiOTRjY2IyLi42ZDBjM2JkIDEw MDY0NAotLS0gYS9nZGIvYWFyY2g2NC1saW51eC10ZGVwLmMKKysrIGIvZ2Ri L2FhcmNoNjQtbGludXgtdGRlcC5jCkBAIC0xMDAwLDggKzEwMDAsMTIgQEAg YWFyY2g2NF9saW51eF9pbml0X2FiaSAoc3RydWN0IGdkYmFyY2hfaW5mbyBp bmZvLCBzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCkKIAogICBsaW51eF9pbml0 X2FiaSAoaW5mbywgZ2RiYXJjaCk7CiAKLSAgc2V0X3NvbGliX3N2cjRfZmV0 Y2hfbGlua19tYXBfb2Zmc2V0cyAoZ2RiYXJjaCwKLQkJCQkJIHN2cjRfbHA2 NF9mZXRjaF9saW5rX21hcF9vZmZzZXRzKTsKKyAgaWYgKHRkZXAtPmlscDMy KQorICAgIHNldF9zb2xpYl9zdnI0X2ZldGNoX2xpbmtfbWFwX29mZnNldHMg KGdkYmFyY2gsCisJCQkJCSAgIHN2cjRfaWxwMzJfZmV0Y2hfbGlua19tYXBf b2Zmc2V0cyk7CisgIGVsc2UKKyAgICBzZXRfc29saWJfc3ZyNF9mZXRjaF9s aW5rX21hcF9vZmZzZXRzIChnZGJhcmNoLAorCQkJCQkgICBzdnI0X2xwNjRf ZmV0Y2hfbGlua19tYXBfb2Zmc2V0cyk7CiAKICAgLyogRW5hYmxlIFRMUyBz dXBwb3J0LiAgKi8KICAgc2V0X2dkYmFyY2hfZmV0Y2hfdGxzX2xvYWRfbW9k dWxlX2FkZHJlc3MgKGdkYmFyY2gsCmRpZmYgLS1naXQgYS9nZGIvYWFyY2g2 NC10ZGVwLmMgYi9nZGIvYWFyY2g2NC10ZGVwLmMKaW5kZXggODAxYzAzZC4u YmM2YjBiZSAxMDA2NDQKLS0tIGEvZ2RiL2FhcmNoNjQtdGRlcC5jCisrKyBi L2dkYi9hYXJjaDY0LXRkZXAuYwpAQCAtMjA5MSw2ICsyMDkxLDIyIEBAIGFh cmNoNjRfZ2VuX3JldHVybl9hZGRyZXNzIChzdHJ1Y3QgZ2RiYXJjaCAqZ2Ri YXJjaCwKIH0KIAwKIAorLyogSW1wbGVtZW50IHRoZSAicmVnaXN0ZXJfdHlw ZSIgZ2RiYXJjaCBtZXRob2QuCisgICBBZGp1c3QgdGhlIHJlZ2lzdGVyIHR5 cGUgb2YgJFBDIGFuZCAkU1Agb24gSUxQMzIuICAqLworCitzdGF0aWMgc3Ry dWN0IHR5cGUgKgorYWFyY2g2NF9pbHAzMl9yZWdpc3Rlcl90eXBlIChzdHJ1 Y3QgZ2RiYXJjaCAqZ2RiYXJjaCwgaW50IHJlZ251bSkKK3sKKyAgc3RydWN0 IGdkYmFyY2hfdGRlcCAqdGRlcCA9IGdkYmFyY2hfdGRlcCAoZ2RiYXJjaCk7 CisKKyAgZ2RiX2Fzc2VydCAodGRlcC0+aWxwMzIpOworCisgIGlmIChyZWdu dW0gPT0gQUFSQ0g2NF9TUF9SRUdOVU0gfHwgcmVnbnVtID09IEFBUkNINjRf UENfUkVHTlVNKQorICAgIHJldHVybiBidWlsdGluX3R5cGUgKGdkYmFyY2gp LT5idWlsdGluX3VpbnQ2NDsKKyAgZWxzZQorICAgIHJldHVybiB0ZGVzY19y ZWdpc3Rlcl90eXBlIChnZGJhcmNoLCByZWdudW0pOworfQorCiAvKiBSZXR1 cm4gdGhlIHBzZXVkbyByZWdpc3RlciBuYW1lIGNvcnJlc3BvbmRpbmcgdG8g cmVnaXN0ZXIgcmVnbnVtLiAgKi8KIAogc3RhdGljIGNvbnN0IGNoYXIgKgpA QCAtMjg1MSw2ICsyODY3LDEwIEBAIGFhcmNoNjRfZ2RiYXJjaF9pbml0IChz dHJ1Y3QgZ2RiYXJjaF9pbmZvIGluZm8sIHN0cnVjdCBnZGJhcmNoX2xpc3Qg KmFyY2hlcykKICAgY29uc3Qgc3RydWN0IHRkZXNjX2ZlYXR1cmUgKmZlYXR1 cmU7CiAgIGludCBudW1fcmVncyA9IDA7CiAgIGludCBudW1fcHNldWRvX3Jl Z3MgPSAwOworICBib29sIGlscDMyID0gRkFMU0U7CisKKyAgaWYgKGluZm8u YmZkX2FyY2hfaW5mby0+bWFjaCA9PSBiZmRfbWFjaF9hYXJjaDY0X2lscDMy KQorICAgIGlscDMyID0gVFJVRTsKIAogICAvKiBFbnN1cmUgd2UgYWx3YXlz IGhhdmUgYSB0YXJnZXQgZGVzY3JpcHRvci4gICovCiAgIGlmICghdGRlc2Nf aGFzX3JlZ2lzdGVycyAodGRlc2MpKQpAQCAtMjkwOCw2ICsyOTI4LDkgQEAg YWFyY2g2NF9nZGJhcmNoX2luaXQgKHN0cnVjdCBnZGJhcmNoX2luZm8gaW5m bywgc3RydWN0IGdkYmFyY2hfbGlzdCAqYXJjaGVzKQogICAgICAgIGJlc3Rf YXJjaCAhPSBOVUxMOwogICAgICAgIGJlc3RfYXJjaCA9IGdkYmFyY2hfbGlz dF9sb29rdXBfYnlfaW5mbyAoYmVzdF9hcmNoLT5uZXh0LCAmaW5mbykpCiAg ICAgeworICAgICAgLyogSUxQMzIgYW5kIExQNjQgYXJlIGluY29tcGF0aWJs ZS4gKi8KKyAgICAgIGlmIChnZGJhcmNoX3RkZXAgKGFyY2hlcy0+Z2RiYXJj aCktPmlscDMyICE9IGlscDMyKQorCWNvbnRpbnVlOwogICAgICAgLyogRm91 bmQgYSBtYXRjaC4gICovCiAgICAgICBicmVhazsKICAgICB9CkBAIC0yOTI2 LDYgKzI5NDksNyBAQCBhYXJjaDY0X2dkYmFyY2hfaW5pdCAoc3RydWN0IGdk YmFyY2hfaW5mbyBpbmZvLCBzdHJ1Y3QgZ2RiYXJjaF9saXN0ICphcmNoZXMp CiAgIHRkZXAtPmxvd2VzdF9wYyA9IDB4MjA7CiAgIHRkZXAtPmpiX3BjID0g LTE7CQkvKiBMb25nanVtcCBzdXBwb3J0IG5vdCBlbmFibGVkIGJ5IGRlZmF1 bHQuICAqLwogICB0ZGVwLT5qYl9lbHRfc2l6ZSA9IDg7CisgIHRkZXAtPmls cDMyID0gaWxwMzI7CiAKICAgc2V0X2dkYmFyY2hfcHVzaF9kdW1teV9jYWxs IChnZGJhcmNoLCBhYXJjaDY0X3B1c2hfZHVtbXlfY2FsbCk7CiAgIHNldF9n ZGJhcmNoX2ZyYW1lX2FsaWduIChnZGJhcmNoLCBhYXJjaDY0X2ZyYW1lX2Fs aWduKTsKQEAgLTI5NjgsOSArMjk5Miw5IEBAIGFhcmNoNjRfZ2RiYXJjaF9p bml0IChzdHJ1Y3QgZ2RiYXJjaF9pbmZvIGluZm8sIHN0cnVjdCBnZGJhcmNo X2xpc3QgKmFyY2hlcykKICAgc2V0X2dkYmFyY2hfZmxvYXRfYml0IChnZGJh cmNoLCAzMik7CiAgIHNldF9nZGJhcmNoX2RvdWJsZV9iaXQgKGdkYmFyY2gs IDY0KTsKICAgc2V0X2dkYmFyY2hfbG9uZ19kb3VibGVfYml0IChnZGJhcmNo LCAxMjgpOwotICBzZXRfZ2RiYXJjaF9sb25nX2JpdCAoZ2RiYXJjaCwgNjQp OworICBzZXRfZ2RiYXJjaF9sb25nX2JpdCAoZ2RiYXJjaCwgaWxwMzIgPyAz MiA6IDY0KTsKICAgc2V0X2dkYmFyY2hfbG9uZ19sb25nX2JpdCAoZ2RiYXJj aCwgNjQpOwotICBzZXRfZ2RiYXJjaF9wdHJfYml0IChnZGJhcmNoLCA2NCk7 CisgIHNldF9nZGJhcmNoX3B0cl9iaXQgKGdkYmFyY2gsIGlscDMyID8gMzIg OiA2NCk7CiAgIHNldF9nZGJhcmNoX2NoYXJfc2lnbmVkIChnZGJhcmNoLCAw KTsKICAgc2V0X2dkYmFyY2hfZmxvYXRfZm9ybWF0IChnZGJhcmNoLCBmbG9h dGZvcm1hdHNfaWVlZV9zaW5nbGUpOwogICBzZXRfZ2RiYXJjaF9kb3VibGVf Zm9ybWF0IChnZGJhcmNoLCBmbG9hdGZvcm1hdHNfaWVlZV9kb3VibGUpOwpA QCAtMzAxMiw2ICszMDM2LDEzIEBAIGFhcmNoNjRfZ2RiYXJjaF9pbml0IChz dHJ1Y3QgZ2RiYXJjaF9pbmZvIGluZm8sIHN0cnVjdCBnZGJhcmNoX2xpc3Qg KmFyY2hlcykKIAogICB0ZGVzY191c2VfcmVnaXN0ZXJzIChnZGJhcmNoLCB0 ZGVzYywgdGRlc2NfZGF0YSk7CiAKKyAgaWYgKGlscDMyKQorICAgIHsKKyAg ICAgIC8qIE92ZXJyaWRlIHRkZXNjX3JlZ2lzdGVyX3R5cGUgdG8gYWRqdXN0 IHRoZSB0eXBlcyBvZiAkUEMgYW5kCisJICRTUCBpbiBJTFAzMi4gICovCisg ICAgICBzZXRfZ2RiYXJjaF9yZWdpc3Rlcl90eXBlIChnZGJhcmNoLCBhYXJj aDY0X2lscDMyX3JlZ2lzdGVyX3R5cGUpOworICAgIH0KKwogICAvKiBBZGQg c3RhbmRhcmQgcmVnaXN0ZXIgYWxpYXNlcy4gICovCiAgIGZvciAoaSA9IDA7 IGkgPCBBUlJBWV9TSVpFIChhYXJjaDY0X3JlZ2lzdGVyX2FsaWFzZXMpOyBp KyspCiAgICAgdXNlcl9yZWdfYWRkIChnZGJhcmNoLCBhYXJjaDY0X3JlZ2lz dGVyX2FsaWFzZXNbaV0ubmFtZSwKZGlmZiAtLWdpdCBhL2dkYi9hYXJjaDY0 LXRkZXAuaCBiL2dkYi9hYXJjaDY0LXRkZXAuaAppbmRleCA4NWM2YTk3Li44 N2QzNmI2IDEwMDY0NAotLS0gYS9nZGIvYWFyY2g2NC10ZGVwLmgKKysrIGIv Z2RiL2FhcmNoNjQtdGRlcC5oCkBAIC05Nyw2ICs5Nyw5IEBAIHN0cnVjdCBn ZGJhcmNoX3RkZXAKIAogICAvKiBzeXNjYWxsIHJlY29yZC4gICovCiAgIGlu dCAoKmFhcmNoNjRfc3lzY2FsbF9yZWNvcmQpIChzdHJ1Y3QgcmVnY2FjaGUg KnJlZ2NhY2hlLCB1bnNpZ25lZCBsb25nIHN2Y19udW1iZXIpOworICAvKiBJ ZiB0aGlzIGlzIElMUDMyIG9yIExQNjQuICAqLworICBib29sIGlscDMyOwor CiB9OwogCiBleHRlcm4gc3RydWN0IHRhcmdldF9kZXNjICp0ZGVzY19hYXJj aDY0OwpkaWZmIC0tZ2l0IGEvZ2RiL2dkYnNlcnZlci9saW51eC1hYXJjaDY0 LWxvdy5jIGIvZ2RiL2dkYnNlcnZlci9saW51eC1hYXJjaDY0LWxvdy5jCmlu ZGV4IDMzNDMxMGIuLmUzMWQ1YzUgMTAwNjQ0Ci0tLSBhL2dkYi9nZGJzZXJ2 ZXIvbGludXgtYWFyY2g2NC1sb3cuYworKysgYi9nZGIvZ2Ric2VydmVyL2xp bnV4LWFhcmNoNjQtbG93LmMKQEAgLTQ4NCw3ICs0ODQsMTIgQEAgYWFyY2g2 NF9saW51eF9yZWFkX2Rlc2NyaXB0aW9uICh2b2lkKQogCiAgIGlzX2VsZjY0 ID0gbGludXhfcGlkX2V4ZV9pc19lbGZfNjRfZmlsZSAodGlkLCAmbWFjaGlu ZSk7CiAKLSAgaWYgKGlzX2VsZjY0KQorICAvKiBUaGVyZSBhcmUgcHJvYmxl bXMgd2l0aCBwdHJhY2Ugd2hlbiBnZGJzZXJ2ZXIgaXMgMzIgYml0cyBhbmQg dGhlCisgICAgIHByb2dyYW0gYmVpbmcgZGVidWdnZWQgaXMgNjQgYml0cy4g ICovCisgIGlmIChzaXplb2YgKHZvaWQgKikgPT0gNCAmJiBpc19lbGY2NCkK KyAgICBlcnJvciAoXygiQ2FuJ3QgZGVidWcgNjQtYml0IHByb2Nlc3Mgd2l0 aCAzMi1iaXQgR0RCc2VydmVyIikpOworCisgIGlmIChtYWNoaW5lID09IEVN X0FBUkNINjQpCiAgICAgcmV0dXJuIHRkZXNjX2FhcmNoNjQ7CiAgIGVsc2UK ICAgICByZXR1cm4gdGRlc2NfYXJtX3dpdGhfbmVvbjsK --=-zkrWSN6S6iAKquZA8d87--