From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pl1-x62d.google.com (mail-pl1-x62d.google.com [IPv6:2607:f8b0:4864:20::62d]) by sourceware.org (Postfix) with ESMTPS id 902033858D3C for ; Wed, 10 Apr 2024 23:50:28 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 902033858D3C Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 902033858D3C Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2607:f8b0:4864:20::62d ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1712793032; cv=none; b=hDTLVdbh1vHBvcuceMDVw63dTr6sLu4YHP761kR3yHL6/t9/TksPpnEpzNg2WicDQIT4CcKWhlRe6SYosauXtTuEsAviH6ZRKRdKXyCKwr12trOUp8rd3pXLLqqwpx82bhiRHOYrlqt118Z+mH06IK+oWTX2Qt/4Atdy0xv00YU= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1712793032; c=relaxed/simple; bh=qNuZZ1aOgtyn/tYTCi95wKyYFBq5ynCuINDlVaiDfGY=; h=DKIM-Signature:Date:From:To:Subject:Message-ID:MIME-Version; b=e3PqOHbfWY0i7kCP2clqrg7MHCCgZ5xL9DC6Nwzta5uAwlv7Pq9OrJmFOVZ/p4RPtAUH2F07fSckqmPRguYFk9rguPZyIyaC+k+CDtYR05AopvcO/OX47FOcXfI+KrA66A7/odB8qAO9w4qKxo0i06uxvLoXAMf4eMntFR+Z4sM= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-pl1-x62d.google.com with SMTP id d9443c01a7336-1dff837d674so61316025ad.3 for ; Wed, 10 Apr 2024 16:50:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1712793026; x=1713397826; darn=sourceware.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=nQSBGplLlKAo0JSHuCgRdYlNB/OQ1OmJwDdgHdDtFog=; b=QEfe5JmnsE35S3c3S1FtksZxd/RHYRVYnSY/ifPFUB7z4c1PXq1NrVKy1cPZeU5JgA Gd2gNYP/U16ovQvieoph/pYVwnfdvWC622sMVImNwahlYWfkITHNxQL5hgOCWhX8wPg8 yskOrhRlfdwE0AGJFwrwuhbGLitLkTJhvrSPISShQvyO5aiGMgT8qF4I4KQQF+xnKDDx 3zyFwctIwnAzvSYfaIgF9SyYG5CjfRdzFFUYFNdqL1FFbv4j7MjILxq+kt4b/Ut8k2Ku tqRt4sXxB6FtLBx+T2rAi4IAPP8rn80QBRjtAMhwHeyCL/Rnc2SAHEYUCbG64FTLPM4V R9uA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1712793026; x=1713397826; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=nQSBGplLlKAo0JSHuCgRdYlNB/OQ1OmJwDdgHdDtFog=; b=dLMx0Oa3962SdBbhOI4n8O6O5GV0VWxZiMIkOJ1hAzchJsrRbhTJ2b2EyHivZbZ8H8 Vl2Sp9A+ZYzb/tkcEXle1m9/IQLrdxXAm+MKda9zbSwKJ6/bQs+HHIIPJsaleRvfBpZL 9dTTC9qgS+3XoDRxgeSOdNYryvYHJMvAYQ59RQwIFeNi1td5rUGevell9W3Tr26gt9J2 MBgtXYjvfggSAydhZrkwFd4QZ+dUVFmJg7h3tG3ZG9kwysYx0WogugiR9qbt5hXCoOlF wkl6HaNgx0jlKeRwTYzk4i2xR+OccBbejl5pNSize9spUEvLuU8mRhVRDSB2oD/1pqjZ dpSQ== X-Gm-Message-State: AOJu0YxTT1h8vQfRP8CKRAXvwSLC5N76/oTWaW5KGuZJWOOkOjguQAKD ecrwHSen8IGzVbj6dVhy0sJMPUPg0IlHv8r8i6wj4NcCaz2ZrLXlmEDsfg== X-Google-Smtp-Source: AGHT+IEJBmIHY/hKsV/Mziu+4Wl3125QeTaaPzArJPNOX/SjjPircxgPqM4Soj7xCGa6wuTxWiYZDA== X-Received: by 2002:a17:902:f709:b0:1e4:3b58:7720 with SMTP id h9-20020a170902f70900b001e43b587720mr5929695plo.2.1712793026221; Wed, 10 Apr 2024 16:50:26 -0700 (PDT) Received: from squeak.grove.modra.org ([2406:3400:51d:8cc0:da25:346f:5e55:47ce]) by smtp.gmail.com with ESMTPSA id l8-20020a170902f68800b001e2814e08b9sm115027plg.32.2024.04.10.16.50.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 10 Apr 2024 16:50:25 -0700 (PDT) Received: by squeak.grove.modra.org (Postfix, from userid 1000) id 75F191140084; Thu, 11 Apr 2024 09:20:23 +0930 (ACST) Date: Thu, 11 Apr 2024 09:20:23 +0930 From: Alan Modra To: "H.J. Lu" Cc: binutils@sourceware.org Subject: Re: [PATCH] elf: Fix a memory leak in _bfd_elf_add_dynamic_entry Message-ID: References: <20240410014159.2780541-1-hjl.tools@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20240410014159.2780541-1-hjl.tools@gmail.com> X-Spam-Status: No, score=-3025.7 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: On Tue, Apr 09, 2024 at 06:41:59PM -0700, H.J. Lu wrote: > Normally, the section contents is allocated by bfd_alloc which is freed > when the object is closed. But the .dynamic section contents is allocated > by bfd_realloc, which should be freed by calling free. Add a dynamic > field to elf_link_hash_table for the .dynamic section and free its > contents in _bfd_elf_link_hash_table_free. > > * elf-bfd.h (elf_link_hash_table): Add dynamic. > * elflink.c (_bfd_elf_link_create_dynamic_sections): Set the > dynamic field in elf_link_hash_table. > (_bfd_elf_add_dynamic_entry): Use hash_table->dynamic. > (_bfd_elf_strip_zero_sized_dynamic_sections): Likewise. > (bfd_elf_add_dt_needed_tag): Likewise. > (elf_finalize_dynstr): Likewise. > (_bfd_elf_link_hash_table_free): Free htab->dynamic->contents. > (bfd_elf_final_link): Use htab->dynamic. > * elfxx-x86.c (_bfd_x86_elf_finish_dynamic_sections): Use > htab->elf.dynamic. OK. -- Alan Modra Australia Development Lab, IBM