From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 8371 invoked by alias); 25 Feb 2019 20:21:34 -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 8231 invoked by uid 89); 25 Feb 2019 20:21:33 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-34.9 required=5.0 tests=BAYES_00,ENV_AND_HDR_SPF_MATCH,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,RCVD_IN_DNSWL_NONE,SPF_PASS,USER_IN_DEF_SPF_WL autolearn=ham version=3.3.2 spammy= X-HELO: mail-it1-f177.google.com Received: from mail-it1-f177.google.com (HELO mail-it1-f177.google.com) (209.85.166.177) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 25 Feb 2019 20:21:31 +0000 Received: by mail-it1-f177.google.com with SMTP id v83so459402itf.1 for ; Mon, 25 Feb 2019 12:21:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=gw7t4q4jbeHvQno0SSEj5LJCeGwana7iJrP2EGrr5ns=; b=jLMz+B7RGAT2ypxJDTw3jPA9H+7p+XqO/tbfea8SQMcKlEan1u2snTZx1iOeQsHdDK EdYwXpthyNZZsE/o8l4fZNLm+k+RqmO1XA8i0epLlHWnJZxpy06BiCtmnWGFaltxUuPS eX+i7f/Iw9mUYf+frL7RhWknGRIt5d8Mn4i/qnqD0gBC5EOOXlyFP0Lh56dZ4Qjcy8hr 9IowzoibVzJmgIDx3ttnGosJ5OzWZmbAI/xTWdofZh09YevFEnN3kpNbMPw6eWbqTy64 C7lMMmgxOGkIG9EVKS0P1NaOtSYeFwdNbeRYVFeEJHoliR3MVYEkGdcF/Mx6+h78QVY1 uGUQ== MIME-Version: 1.0 References: <439bf4f6859a539472a2e51a028b9503@polymtl.ca> <20190225201715.144927-1-rupprecht@google.com> In-Reply-To: <20190225201715.144927-1-rupprecht@google.com> From: "Jordan Rupprecht via gdb-patches" Reply-To: Jordan Rupprecht Date: Mon, 25 Feb 2019 20:21:00 -0000 Message-ID: Subject: Re: [PATCH] [dwarf2read] Fix crash when loading dwp files: calculate num_sections based on actual section indices, not just the number of sections. To: gdb-patches@sourceware.org Cc: Eric Christopher , David Blaikie , dje@google.com, simon.marchi@polymtl.ca Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha-256; boundary="0000000000008bb33c0582bdaf9c" X-SW-Source: 2019-02/txt/msg00419.txt.bz2 --0000000000008bb33c0582bdaf9c Content-Type: text/plain; charset="UTF-8" Content-length: 1318 Sorry, patch somehow didn't make it in the previous message. Including it manually: --- gdb/ChangeLog | 6 ++++++ gdb/dwarf2read.c | 3 +-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 118f17588a..c2340e694c 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,9 @@ +2019-02-25 Jordan Rupprecht + + * dwarf2read.c (open_and_init_dwp_file): Call + elf_numsections instead of bfd_count_sections to initialize + dwp_file->num_sections. + 2019-02-25 Tom Tromey * solib-darwin.c (darwin_get_dyld_bfd): Don't release dyld_bfd. diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c index 98f46e0416..2908a233fe 100644 --- a/gdb/dwarf2read.c +++ b/gdb/dwarf2read.c @@ -13230,8 +13230,7 @@ open_and_init_dwp_file (struct dwarf2_per_objfile *dwarf2_per_objfile) std::unique_ptr dwp_file (new struct dwp_file (name, std::move (dbfd))); - /* +1: section 0 is unused */ - dwp_file->num_sections = bfd_count_sections (dwp_file->dbfd) + 1; + dwp_file->num_sections = elf_numsections (dwp_file->dbfd); dwp_file->elf_sections = OBSTACK_CALLOC (&objfile->objfile_obstack, dwp_file->num_sections, asection *); -- 2.21.0.rc0.258.g878e2cd30e-goog --0000000000008bb33c0582bdaf9c Content-Type: application/pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-Description: S/MIME Cryptographic Signature Content-length: 6576 MIIS7QYJKoZIhvcNAQcCoIIS3jCCEtoCAQExDzANBglghkgBZQMEAgEFADAL BgkqhkiG9w0BBwGgghBTMIIEXDCCA0SgAwIBAgIOSBtqDm4P/739RPqw/wcw DQYJKoZIhvcNAQELBQAwZDELMAkGA1UEBhMCQkUxGTAXBgNVBAoTEEdsb2Jh bFNpZ24gbnYtc2ExOjA4BgNVBAMTMUdsb2JhbFNpZ24gUGVyc29uYWxTaWdu IFBhcnRuZXJzIENBIC0gU0hBMjU2IC0gRzIwHhcNMTYwNjE1MDAwMDAwWhcN MjEwNjE1MDAwMDAwWjBMMQswCQYDVQQGEwJCRTEZMBcGA1UEChMQR2xvYmFs U2lnbiBudi1zYTEiMCAGA1UEAxMZR2xvYmFsU2lnbiBIViBTL01JTUUgQ0Eg MTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALR23lKtjlZW/17k thzYcMHHKFgywfc4vLIjfq42NmMWbXkNUabIgS8KX4PnIFsTlD6FGO2fqnsT ygvYPFBSMX4OCFtJXoikP2CQlEvO7WooyE94tqmqD+w0YtyP2IB5j4KvOIeN v1GbnnesBIUWLFxs1ERvYDhmk+OrvW7Vd8ZfpRJj71Rb+QQsUpkyTySaqALX nyztTDp1L5d1bABJN/bJbEU3Hf5FLrANmognIu+Npty6GrA6p3yKELzTsilO FmYNWg7L838NS2JbFOndl+ce89gM36CW7vyhszi66LqqzJL8MsmkP53GGhf1 1YMP9EkmawYouMDP/PwQYhIiUO0CAwEAAaOCASIwggEeMA4GA1UdDwEB/wQE AwIBBjAdBgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwQwEgYDVR0TAQH/ BAgwBgEB/wIBADAdBgNVHQ4EFgQUyzgSsMeZwHiSjLMhleb0JmLA4D8wHwYD VR0jBBgwFoAUJiSSix/TRK+xsBttr+500ox4AAMwSwYDVR0fBEQwQjBAoD6g PIY6aHR0cDovL2NybC5nbG9iYWxzaWduLmNvbS9ncy9nc3BlcnNvbmFsc2ln bnB0bnJzc2hhMmcyLmNybDBMBgNVHSAERTBDMEEGCSsGAQQBoDIBKDA0MDIG CCsGAQUFBwIBFiZodHRwczovL3d3dy5nbG9iYWxzaWduLmNvbS9yZXBvc2l0 b3J5LzANBgkqhkiG9w0BAQsFAAOCAQEACskdySGYIOi63wgeTmljjA5BHHN9 uLuAMHotXgbYeGVrz7+DkFNgWRQ/dNseQa4e+FeHWq2fu73SamhAQyLigNKZ F7ZzHPUkSpSTjQqVzbyDaFHtRBAwuACuymaOWOWPePZXOH9xt4HPwRQuur57 RKiEm1F6/YJVQ5UTkzAyPoeND/y1GzXS4kjhVuoOQX3GfXDZdwoN8jMYBZTO 0H5hisymlIl6aot0E5KIKqosW6mhupdkS1ZZPp4WXR4frybSkLejjmkTYCTU mh9DuvKEQ1Ge7siwsWgANS1Ln+uvIuObpbNaeAyMZY0U5R/OyIDaq+m9KXPY vrCZ0TCLbcKuRzCCBB4wggMGoAMCAQICCwQAAAAAATGJxkCyMA0GCSqGSIb3 DQEBCwUAMEwxIDAeBgNVBAsTF0dsb2JhbFNpZ24gUm9vdCBDQSAtIFIzMRMw EQYDVQQKEwpHbG9iYWxTaWduMRMwEQYDVQQDEwpHbG9iYWxTaWduMB4XDTEx MDgwMjEwMDAwMFoXDTI5MDMyOTEwMDAwMFowZDELMAkGA1UEBhMCQkUxGTAX BgNVBAoTEEdsb2JhbFNpZ24gbnYtc2ExOjA4BgNVBAMTMUdsb2JhbFNpZ24g UGVyc29uYWxTaWduIFBhcnRuZXJzIENBIC0gU0hBMjU2IC0gRzIwggEiMA0G CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCg/hRKosYAGP+P7mIdq5NBKr3J 0tg+8lPATlgp+F6W9CeIvnXRGUvdniO+BQnKxnX6RsC3AnE0hUUKRaM9/RDD WldYw35K+sgeC8fWXvIbcYLXxWkXz+Hbxh0GXG61Evqux6i2sKeKvMr4s9Ba N09cqJ/wF6KuP9jSyWcyY+IgL6u252my5UzYhnbf7D7IcC372bfhwM92n6r5 hJx3r++rQEMHXlp/G9J3fftgsD1bzS7J/uHMFpr4MXuaeoiMLV5gdmo0sQg2 3j4pihyFlAkkHHn4usPJ3EePw7ewQT6BUTFyvmEB+KDoi7T4RCAZDstgfpzD rR/TNwrK8/FXoqnFAgMBAAGjgegwgeUwDgYDVR0PAQH/BAQDAgEGMBIGA1Ud EwEB/wQIMAYBAf8CAQEwHQYDVR0OBBYEFCYkkosf00SvsbAbba/udNKMeAAD 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 BgNVHREEGDAWgRRydXBwcmVjaHRAZ29vZ2xlLmNvbTBQBggrBgEFBQcBAQRE MEIwQAYIKwYBBQUHMAKGNGh0dHA6Ly9zZWN1cmUuZ2xvYmFsc2lnbi5jb20v Y2FjZXJ0L2dzaHZzbWltZWNhMS5jcnQwHQYDVR0OBBYEFEzRyLdWAOnD/r5t 2oxq71oqZrNuMB8GA1UdIwQYMBaAFMs4ErDHmcB4koyzIZXm9CZiwOA/MEwG A1UdIARFMEMwQQYJKwYBBAGgMgEoMDQwMgYIKwYBBQUHAgEWJmh0dHBzOi8v d3d3Lmdsb2JhbHNpZ24uY29tL3JlcG9zaXRvcnkvMDsGA1UdHwQ0MDIwMKAu oCyGKmh0dHA6Ly9jcmwuZ2xvYmFsc2lnbi5jb20vZ3NodnNtaW1lY2ExLmNy bDAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsGAQUF BwMEMA0GCSqGSIb3DQEBCwUAA4IBAQBJgcZICXH97aPN8CWWfdcTGvINItDp d2QzUxJ1QgRSypCd0qXBevDhmEyJiSe2yK3G9ZTjxdY3jweCFpmNoaSGexz1 OSbBBkqR4yVvoaU7vTGg/h7aE0B38UdyLSQpjMaaj/m62h1uZPDFLpzm0W3Z HXvVgcElmR6P2E3v71/17oqehAv6tOyHq4qpghOkAWbGTS0lArjiRSkP5AtK QHaDqmrUSekn4bO1sx4GcS8C+oWPtcQ9TZC94SbqpVBmGV0lm58buObjoGy/ YDIuffcRzv2edbQRwJ7iFlfGatsbgalYzfRTRNS56BOmGpqFnR+eKUmZe66T hjUoY1QtIKVjMYICXjCCAloCAQEwXDBMMQswCQYDVQQGEwJCRTEZMBcGA1UE ChMQR2xvYmFsU2lnbiBudi1zYTEiMCAGA1UEAxMZR2xvYmFsU2lnbiBIViBT L01JTUUgQ0EgMQIMZ45BjBNFrislm5V5MA0GCWCGSAFlAwQCAQUAoIHUMC8G CSqGSIb3DQEJBDEiBCDLhKytuqcMgZ9uGf9swzPDMziuy2hWtBoB0b77BgSp aDAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcBMBwGCSqGSIb3DQEJBTEPFw0x OTAyMjUyMDIxMjlaMGkGCSqGSIb3DQEJDzFcMFowCwYJYIZIAWUDBAEqMAsG CWCGSAFlAwQBFjALBglghkgBZQMEAQIwCgYIKoZIhvcNAwcwCwYJKoZIhvcN AQEKMAsGCSqGSIb3DQEBBzALBglghkgBZQMEAgEwDQYJKoZIhvcNAQEBBQAE ggEAxnauMdYEqKqgOc4VFgoRfFjkGYbDefeYE4IRlZrb/U9/zBd3crfU4n23 MqhJMVTCDMThsIfLIMxfz2Ixrwk7r0OOft5wrEAJf+C8rpxCGt8o3/ig0K3L S3XAAW8vccAeof7JyChzOPDJRw5u5nTwudj+5dhP/LzJghvcI8mbYOqfNJIg 4KujINcmQEs3ZEQi0iiqDQjjHnV80mebHoSidWi6DU+UuiK71WqXJMVIyngi /rRH8/YqOH/fi9oTeBZhzWKpCR/I12FEWFR9VVJU5KF8caD+D0GrynbEoq1y CElFeyqdNqSxkU4XfPw49xHI25dvgnuveIBP79Hh5liygw== --0000000000008bb33c0582bdaf9c--