From patchwork Wed Apr 17 20:19:58 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nick Alcock X-Patchwork-Id: 88597 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id DEB8238460A3 for ; Wed, 17 Apr 2024 20:21:40 +0000 (GMT) X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by sourceware.org (Postfix) with ESMTPS id F14D9386101D for ; Wed, 17 Apr 2024 20:20:43 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org F14D9386101D Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=oracle.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org F14D9386101D Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1713385245; cv=pass; b=SRK7Z5CZZ0UyLWbjVMYulAj1WQtjfnOlVxYXpew2zqROGaFXccmXkR4K/X6VfyHCvnf1FdegWkU0Pr0nwVxkmESQ/k181DmrQd4lilOYTMXB9jU+R6K64N6RsgLoZmRrhkH1TYDknNUUEIuyKBf30tQ68juOgmmB6xgG7PjcwIQ= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1713385245; c=relaxed/simple; bh=/OXkd8agCch/ZXOVc6vsyldZ47Chbqt7LWGAHo3Wp0E=; h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID: MIME-Version; b=jg/GGqVienKLHIy7vajLd5JsluHmBpKxj3n7M/lMkvKi6f6sKYUS7I/iqRdeKaMPt2uH7acVFLEXKwR9BJBLeBzs3r2gLAJInbZxO6jHwEbiVIg79VQoJ+nmoNYxhow8qNRVvtg85ruMJ7ywMctDxXy8q3/SiGV3kf6hLSlP+Gw= ARC-Authentication-Results: i=2; server2.sourceware.org Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 43HHi2uD009051 for ; Wed, 17 Apr 2024 20:20:43 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2023-11-20; bh=D1rQGW/Z7oW28oZYPz1GUeoMgy8Pm0+sj+qbh0te2Rc=; b=gdSunfILZF0u86PzGqwPFtiXZAA/CQIQMhh8W/cjuYyEP35b/cFk6HsKXnadmkf2+1df G0GsBG0NUlE6D5pxH2aOptFL5+rfM8kSN7Ov79+AYTLaSSQ3F/BUsL+csNR1uxYIIsLY JHIcVgAIEt+cnL3MUEUHsrEMjtUf8tw8CH6L12xhwnZAtW2O0dhhUufbkEwHp46OKK1n J+u3g2kfTD50fGXak+xKZfujovc/2EfXgHoLt7E3PSPFi8YOsHFTALz82tLMhz0PgOu1 eXSoz8doUWKlAdLGqU0LMzhGNJ4N6PdYCU7OjOLkAQ9/s0jU64/Guc813pxR7MLkecO1 Aw== Received: from iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta03.appoci.oracle.com [130.35.103.27]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3xfgn2ruq0-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Wed, 17 Apr 2024 20:20:42 +0000 Received: from pps.filterd (iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 43HJvYf4004332 for ; Wed, 17 Apr 2024 20:20:41 GMT Received: from nam12-dm6-obe.outbound.protection.outlook.com (mail-dm6nam12lp2169.outbound.protection.outlook.com [104.47.59.169]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3xfggfnpxs-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Wed, 17 Apr 2024 20:20:41 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=StowK4tO5wVIJOChAb5Qtr2TClxzBUjx3wgANspbfJK41bBLqq9sS6v4aWUoRyB9YZxV0xD8xCxL2teEPwocxitSdi9wVAG1aNbo5MA8j68UIxpsyql9vSkzd+TJ8uTFHBhEn9ItuK7mvRc4DIrj6OODOyweIxQ36RggJ65O+zinjpBEflcO/+0+6bCE0whBt/mJsAjQaFF8w1DKMka/xysskYx7TiDwvYg03G3uDgY5DrCP7aZyfCwqAUXDtNxpnHIIAZdoaO8mLQstPEaErtTrmAkJjqISYOEeaRKfW7O9VkZtnex8gOnAoFAboQelj1na/mhsJI4FSPzBHVuvlg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=D1rQGW/Z7oW28oZYPz1GUeoMgy8Pm0+sj+qbh0te2Rc=; b=S2GCNcpjkNkuDLPMJCuurR7ZvFJCBohMdGjKYFjmcFT8idDGR04+hp/BE2Zk+J0kC0eicmITDhyoyF9VKLdKZdT+iz43lEPQnSZteyZFA9ziGyi8ucs0qcc3LiDjqSHC6LeyVSv9rjseU8OhhjIeKZ/SEEZ2iIh/vDJeEZybgWDynVhIdbjIQtK1DrZzTtZepgl7U4onYdieTZctCvm3h9hjdykgT9GjoOnj8RdCTMh/4YIXmTZm0ok1QPTlU5+y30XY836jl9AVQbftp/HPgB3JHxhBAymfrUpBnuZriLZT+OYZ6XX5uU95zs9wnNj0RzIwOeL6oPBSsJIQkF9TaQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=D1rQGW/Z7oW28oZYPz1GUeoMgy8Pm0+sj+qbh0te2Rc=; b=qWrsDRrFbKsf3Afn+W+VT2u4+Uc8XiRChXV7SBYuYwSHvEGb0SJG7iWPrIwvzm1kc7OoCW1PqdkBsEKiy9SGUH/lQEfCnN1a5E9nOtMdtpXUtXBZwxWBji6hmuAVQTO7KkfSlWNL+XjhRtK92FFNWhsTUhJE2nVRkGGTHY8j8f4= Received: from MW4PR10MB6608.namprd10.prod.outlook.com (2603:10b6:303:22e::8) by SA1PR10MB6640.namprd10.prod.outlook.com (2603:10b6:806:2b6::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7452.50; Wed, 17 Apr 2024 20:20:39 +0000 Received: from MW4PR10MB6608.namprd10.prod.outlook.com ([fe80::67a4:9544:7249:7751]) by MW4PR10MB6608.namprd10.prod.outlook.com ([fe80::67a4:9544:7249:7751%7]) with mapi id 15.20.7472.037; Wed, 17 Apr 2024 20:20:39 +0000 From: Nick Alcock To: binutils@sourceware.org Subject: [PATCH 02/22] libctf: don't leak the symbol name in the name->type cache Date: Wed, 17 Apr 2024 21:19:58 +0100 Message-ID: <20240417202018.34966-3-nick.alcock@oracle.com> X-Mailer: git-send-email 2.44.0.273.ge0bd14271f In-Reply-To: <20240417202018.34966-1-nick.alcock@oracle.com> References: <20240417202018.34966-1-nick.alcock@oracle.com> X-ClientProxiedBy: LO4P123CA0073.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:190::6) To MW4PR10MB6608.namprd10.prod.outlook.com (2603:10b6:303:22e::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MW4PR10MB6608:EE_|SA1PR10MB6640:EE_ X-MS-Office365-Filtering-Correlation-Id: 6c3c0fe0-10d8-494f-9901-08dc5f1bd95a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: NWEl0gwT40W3Rms+GtrGAW9+OZdqu/IFR0O3x2r++ZEVbsfNjctD/o07Ifwt/EgmewkZqVqjW9x9iBLMdA5t2/rrIzcStJ0pXthgS09uAh1fTzQzFEeVvTFbnwTM1kmGXY2XDlwhTobipJtyHcQwr9nMc+UjGsx2Mb6CAKQB/aYUsu/zdsN50Jl87mtthORah5ReQZLCKPAkzEA4YwKOHjzqwZnDWTaXOPROm3akgtGkJgsbVawXSj/oJVKxfBXkDWw1XtvbKcRXwHGwR33OJ4MB9e6wM2fbqvInIAVly3FYedGbGAZ45pEeR9qgif/G13YnOwI1lhyWBvHfJnljuTflEMfZ5cAymcDAgcdEcoQZYzL52cnOFzjbsKTmtBsT6BqI13KJKPe56aZYAcafxAORLiRfzrMSVayB4kxc+bCPxCxtAGuwROZemYohwNqbJ1KNd7/PGZvFAML6VFfs6PevOxPs+vJ9LtmZCPOpqB0XtSlhElr9u8bSQ0D12AlhWJQ/QXYMKiq+yp+R/OLeX8Q7FfWCe1dc4SdpaFe+vVYmT/I3ZHP0ZPHVI/j0TXdNTQDGzPTKdSIh8tN84ekzys/c/q6r7gAWyz6IwhiQGkhGviKZkelwdxVFNt4jEKUjVKYgukRxcNXpEvmL7AsNJ6YFTnQf2dQrdh9ujHxolpM= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MW4PR10MB6608.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230031)(1800799015)(376005)(366007); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: sXV/1yZ9QhsZ+ixAX0Cvt1QSMFWZQS0g320QMGosOmIedNpheXsFCVS7OQMIg+964IUycE6wyacTe1D44Z6/2gt2vo0W7hMQNbmMab7OqlQkugK+AZaNhGOFjVYEC9G6uNDrflLApF/AE4op/LproEJh7Qt9U41ep9Hb/Il15o26aTBPrroM9rYXnPuczA6Pnb+Ujt0zUCojDBT+49GN+LtbLwdoFk6KkJ4J7X9gZv4t8Dwb+82jbjMQx74VrUO4lkUpWVsKVG02vaPnLKtjYCn1tedqvPiqQATN24kcrDWf/HuMifbiAK2+/HUX9Gfk8NPVratzvh2ffO7d4VA+DMRGkB1vKkX0Rn5aHg+GiwyssFuaY3iP9kAhoEocQVi6BPZoyjO9B1mChd/+jeDVuPus7VYbwxXzBuKOTkVIZqu59+HOU47WGifkmTxI/sZKpaEOCaFS/G2NnPWQKrLCa607N6j8KPmkY+hS9Iu56cXMrUKCs2D8MNc2I/GoLL6/8qN2OGc46YHzXfAKsGWGsiSa34vdkZLgwuJTAKSbhC0klTu7LzOZtAt90rvP1tliXjqFw3XfSOsKQb8jqVLyQxuam5IYOjz97tqbokgMxSDp3gDcy3a6S8nz8d7RjzzfN6EWtqxo/YYkl2mJIydV0MCK0YZPs/jJuuvnPA+L5LHVeHSYkNSmOz6b1FGbZGVrMvfkan/5AwdeRaQLWeMuQBWuIBBl7/Id9+2ecVMExtGb9o8mD7IOACrPJyz6IqrLHwP2G5fXiVM5M4iFhO0QyCoEfOaRk7EIprI3OQhc/HRmowxgthfE3Kc/2KITlavcMiTQCCDB7fgaKVMwE7RraLChTykFVTFy1dLRsIR1ayS+lsYoAG9lGm6wnUyA+5d5J2JG482bEzBmQSb+JVQWRw03hVTQ4ahegOHCRKPoVnYrd6p9Ts1AA35oyFFWaH3quuZ4sR9vausD5zuyhiXimePrpzyszcws5qbzsU1IcR98aIuSOWLoLmYfLszMc+AIeZG9hulg9QAvx5ixHFYZcuAZcGETnPShWXVvUHHqg00GFn0GBCUxY5EKvLQvme/rZehHfq2QcTsTe+2peL2sJK5iFFX0R2IjTJx7vUIjjkqCD8KeuQRpy5YnYlz9OnuI0IPJEfOpsjhgfp4NT0Ez/5uTcgmtBnZC0yT508OnTySLMxMCMivMO9BthU5FvnEbcmbEIXjBn0JW0mq4L9+UK+1H1JpMFzTj0waifgauRD8n+AugSI/EiCRzk3a3AILmDbtWSX6pU8l3R8ChTFem/L0B3zvzVf/TUMzzuoe7v83R4VGW4qYaVrswYc7QQMB86Uou2HWccBRgNaOKivA/tTZEQDVLX1iKV3rA4P36p78MiE3rVvxXUA8MbJTXc4GaDeqc2R31GG50eTH6n7YOVTkfIFAZE7/nKwCS/pP7fpUtVfTQUyvXDQ6CoZjA7ZFlpseYPr5To4EOaBGjAux9CGGtgyk0DaM5CvifD3F97rD6dF3EINlcbwRSWBXKV8OnQqP86m2KC1zaa28LutyIV0otxfGGyy1vXLn8QdlJuCSfkPNy4vRHfNVVhHoVJVOiKLbDOlbb3NUngwbc0q6JDA== X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: XIe/ygu9Yec2xp+msyB72ub0+55yvG53+xWSJOEZSe0mVQPMeZaD3dGMqObshUEPsZhVPHfq3v+D3BrgYuCYIgmrinbABlQOjVwZl1XHTwluvXNcGfhcbP+yITAO6WJ03b+dgi3XtXsa8RmQsQPiMcy8BvEr+4mJtRfOq9hgJ54GYu9fJI+XjJoFwcNCfzzGu4nUvUllnJ1KXSrnqYcN7KcIuz+14i/eIc1IiJvtpQth/dIayDQHZeHtgo0Nl4hOABgkZDI2S4Ns9tEfxfu/32ntsRR/XwEjQkyvdexyhanDY8gcg1peA0GEH5dTqf/zQVNhslCWs6dTro1Uts73VceC/RuZi6tCKNhFvF/FZ0ogMs0S+g244iClw4WDIRx0yRxGNq8B0d4G/ml6jof1Krk3FiCYGITRvv16FACAeT3t2IPSJxwx/DkrTr4wHlfKhbylhActA+oyXhFLkHPu8H/8gaGOkIUIoChYcGhcz6UNyAFqnBHE3CJ9awebE/4khFgUAs6Qs8EjWRkI7oBA2wHvAUvE3itUn+mvV1IRksXbxJXcUeEyHuQfMfzxPUhwhr0sZi9adi1fLvelOALH7VdZV92oyfvKDBxIO4Mv5Io= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6c3c0fe0-10d8-494f-9901-08dc5f1bd95a X-MS-Exchange-CrossTenant-AuthSource: MW4PR10MB6608.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Apr 2024 20:20:39.5830 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Fu18ibwTCTXuSABPI2KEVXCdps7GQu9Fb9JHK1XwH62bTJ9MBxsVzntubE1AtWA5jGfaNfp04Y0tu0VO1aeHwQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR10MB6640 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.1011,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2024-04-17_17,2024-04-17_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 phishscore=0 adultscore=0 mlxlogscore=948 suspectscore=0 bulkscore=0 spamscore=0 mlxscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2404010000 definitions=main-2404170143 X-Proofpoint-ORIG-GUID: o_M8vlvC22PfSEG9LNoGcmXfruMGJKYe X-Proofpoint-GUID: o_M8vlvC22PfSEG9LNoGcmXfruMGJKYe X-Spam-Status: No, score=-11.7 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL, SPF_HELO_NONE, SPF_NONE, 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 X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: binutils-bounces+patchwork=sourceware.org@sourceware.org This cache replaced a cache of symbol index->ctf_id_t. That cache was just an array, so it could get away with just being free()d, but the ctfi_symnamedicts cache that replaced it is a full dynhash with a dynamically-allocated string as the key. As such, it needs freeing with ctf_dynhash_destroy(), not just free(), or we leak parts of the underlying hashtab, and all the keys. libctf/ChangeLog: * ctf-archive.c (ctf_arc_flush_caches): Fix leak. --- libctf/ctf-archive.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libctf/ctf-archive.c b/libctf/ctf-archive.c index a0ea838ddc4..a88c6135e1a 100644 --- a/libctf/ctf-archive.c +++ b/libctf/ctf-archive.c @@ -699,7 +699,7 @@ void ctf_arc_flush_caches (ctf_archive_t *wrapper) { free (wrapper->ctfi_symdicts); - free (wrapper->ctfi_symnamedicts); + ctf_dynhash_destroy (wrapper->ctfi_symnamedicts); ctf_dynhash_destroy (wrapper->ctfi_dicts); wrapper->ctfi_symdicts = NULL; wrapper->ctfi_symnamedicts = NULL;