From patchwork Wed Jun 18 16:44:52 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Justin King X-Patchwork-Id: 114682 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 215CD3839C55 for ; Wed, 18 Jun 2025 16:46:04 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 215CD3839C55 Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=google.com header.i=@google.com header.a=rsa-sha256 header.s=20230601 header.b=poNcAEr7 X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from mail-pg1-x54a.google.com (mail-pg1-x54a.google.com [IPv6:2607:f8b0:4864:20::54a]) by sourceware.org (Postfix) with ESMTPS id A52C7381507B for ; Wed, 18 Jun 2025 16:44:56 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org A52C7381507B Authentication-Results: sourceware.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=flex--jcking.bounces.google.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org A52C7381507B Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2607:f8b0:4864:20::54a ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1750265096; cv=none; b=koiJY14IhKf62Bf00RYZ7gKFriEx0xTRCNLXzyKVuIceRZJzptfL7wJh99m3k90Mzj6Ixk8QunYLD+5Yr68sGQRkJVqlyp5sTNcoEU9CNjRe6mXhTs04y13JAouCtJsLrvQ1lu8WzDEHHyJ+c8fTTynEwg+KFpQL2gEEhOuOyAI= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1750265096; c=relaxed/simple; bh=DNFzlO+44CL3CyZJv9yUC0AGH2pWwSaYnK3gTCLQcTs=; h=DKIM-Signature:Date:Mime-Version:Message-ID:Subject:From:To; b=w1ElmWQB5ZCCUVCVdcA4qvxkdyQHZbIZK/WCKzTY+W6LMsC7gJa5WcDjXagxDaU1dVMN0aaF1rkJyO1MURfYPbQLIMYg/Mm3Ns3rgqTqV3wi0AL34mJE4SoG6V8UQs/fgo4vVuaFEB+FQp77DdJ4YfCEz5ekIZLq8nu44O9nUcg= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org A52C7381507B Received: by mail-pg1-x54a.google.com with SMTP id 41be03b00d2f7-b26eec6da92so787897a12.1 for ; Wed, 18 Jun 2025 09:44:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1750265096; x=1750869896; darn=sourceware.org; h=cc:to:from:subject:message-id:mime-version:date:from:to:cc:subject :date:message-id:reply-to; bh=pqe+7zGTSoTPJe7q8qAlbWQeJkN/n5HBrpIEt0JdkFE=; b=poNcAEr7yGfmMcIOsUIfjiV6UOjjS0kjYj02LTUZITgNTpn53okH31Gqq98+N2eJ3y WOQGHPqZwG4F3uL9mwOzM7kUX7DptJhrUbsI4IlJmGOOtAPN21QjPzLcVecLXGQjXNj8 kBrJIrcoRC1HMK0wxncYQzEzImvLf9iDR5/iDcY3KDRzrGP8URN//p9b+s7mpahPrOv1 ZPPy7htxBptQjq61rutsKlsIyDhquQHzuhL7wbVYTxU+w7gDSDVGFKeR8BqgQPeVC/d9 /GFNJ4iD6/1q8Kt+RxCgqHibye3cJozMwEIbCmCA8HtcRdGUctgA8Y3AYbSpcQXx2jhw M7/A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1750265096; x=1750869896; h=cc:to:from:subject:message-id:mime-version:date:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=pqe+7zGTSoTPJe7q8qAlbWQeJkN/n5HBrpIEt0JdkFE=; b=GS1e+QbBKj7R3zycWGUoflChuAWwqxp3EPLnbPAWUQ40DbgU62SHaLO9GYj9FXmsjQ c2/+ZgvJioo42fuM4FZthPxlupBrEqmVjP6ye0Ix22O4fvJKFTbV29my30XFnzOwD26n jC6O7nRVt4vOETRZpof7Y+n7LdAJnGehDvBPWbbOB5/XRF7g9l4J5mk+0LZV3lyIJaIe 6mMyulTV/hqDYNZ6bpcRwY5R26H7dFvXslJvKlyh4Y6FC/gAgh+kdYbMPpQ8iQ09WBDT y9N01nslGIPX1c55yPwQ2CObYbdXBC5D9bW3qGSZwQ9QwtFkKlS//RI1G3+yFIAAHe0w JKvw== X-Gm-Message-State: AOJu0Yx3/cBOzU9DNqVhzT9za95kHwBiZyV2GNqzo1oLPzde/tF4OuYe 4d+7Zf0xfALDdlE/ybUe07/lE7u7O+gIVLGEARZcoUikV3fWI9tLNe6yeJUIXJX/ZkhOkXjD5oJ ZJCRnhaK2bzElzn5JzVFn4Yx7ItFKeYa+84jEUlzonNbIvlsi5rG1XqBSdeEfYdgenqwi10uKER GbXWIue+Kzc0e9O9TGDylRMt46bUqZ5SNBfe54j16X X-Google-Smtp-Source: AGHT+IEs0lpuGNPrh584GYAMESKXH0tgicVoLLuvCuf/DT+FFsuSp2PGfTyMU5fV2qdxe7/AXgHKjkTJ3hI= X-Received: from pjbsp12.prod.google.com ([2002:a17:90b:52cc:b0:311:7bc3:2a8d]) (user=jcking job=prod-delivery.src-stubby-dispatcher) by 2002:a17:90b:390f:b0:313:d361:73d7 with SMTP id 98e67ed59e1d1-3158ac2ce60mr338661a91.13.1750265095497; Wed, 18 Jun 2025 09:44:55 -0700 (PDT) Date: Wed, 18 Jun 2025 09:44:52 -0700 Mime-Version: 1.0 X-Mailer: git-send-email 2.50.0.rc2.701.gf1e915cc24-goog Message-ID: <20250618164452.271193-1-jcking@google.com> Subject: [PATCH] malloc: add free_sized and free_aligned_sized from C23 From: Justin King To: libc-alpha@sourceware.org Cc: Justin King X-Spam-Status: No, score=-19.8 required=5.0 tests=BAYES_00, DKIMWL_WL_MED, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, USER_IN_DEF_DKIM_WL 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: libc-alpha@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libc-alpha-bounces~patchwork=sourceware.org@sourceware.org Signed-off-by: Justin King --- conform/data/stdlib.h-data | 4 +++ malloc/Makefile | 2 ++ malloc/Versions | 3 ++ malloc/malloc.c | 29 ++++++++++++++++ malloc/tst-free-aligned-sized.c | 33 +++++++++++++++++++ malloc/tst-free-sized.c | 33 +++++++++++++++++++ manual/memory.texi | 31 +++++++++++++++++ stdlib/stdlib.h | 11 +++++++ sysdeps/unix/sysv/linux/aarch64/libc.abilist | 2 ++ .../linux/aarch64/libc_malloc_debug.abilist | 2 ++ sysdeps/unix/sysv/linux/alpha/libc.abilist | 2 ++ .../linux/alpha/libc_malloc_debug.abilist | 2 ++ sysdeps/unix/sysv/linux/arc/libc.abilist | 2 ++ .../sysv/linux/arc/libc_malloc_debug.abilist | 2 ++ sysdeps/unix/sysv/linux/arm/be/libc.abilist | 2 ++ .../linux/arm/be/libc_malloc_debug.abilist | 2 ++ sysdeps/unix/sysv/linux/arm/le/libc.abilist | 2 ++ .../linux/arm/le/libc_malloc_debug.abilist | 2 ++ sysdeps/unix/sysv/linux/csky/libc.abilist | 2 ++ .../sysv/linux/csky/libc_malloc_debug.abilist | 2 ++ sysdeps/unix/sysv/linux/hppa/libc.abilist | 2 ++ .../sysv/linux/hppa/libc_malloc_debug.abilist | 2 ++ sysdeps/unix/sysv/linux/i386/libc.abilist | 2 ++ .../sysv/linux/i386/libc_malloc_debug.abilist | 2 ++ .../sysv/linux/loongarch/lp64/libc.abilist | 2 ++ .../loongarch/lp64/libc_malloc_debug.abilist | 2 ++ .../sysv/linux/m68k/coldfire/libc.abilist | 2 ++ .../m68k/coldfire/libc_malloc_debug.abilist | 2 ++ .../unix/sysv/linux/m68k/m680x0/libc.abilist | 2 ++ .../m68k/m680x0/libc_malloc_debug.abilist | 2 ++ .../sysv/linux/microblaze/be/libc.abilist | 2 ++ .../sysv/linux/microblaze/le/libc.abilist | 2 ++ .../sysv/linux/mips/mips32/fpu/libc.abilist | 2 ++ .../mips/mips32/fpu/libc_malloc_debug.abilist | 2 ++ .../sysv/linux/mips/mips32/nofpu/libc.abilist | 2 ++ .../mips32/nofpu/libc_malloc_debug.abilist | 2 ++ .../sysv/linux/mips/mips64/n32/libc.abilist | 2 ++ .../mips/mips64/n32/libc_malloc_debug.abilist | 2 ++ .../sysv/linux/mips/mips64/n64/libc.abilist | 2 ++ .../mips/mips64/n64/libc_malloc_debug.abilist | 2 ++ sysdeps/unix/sysv/linux/or1k/libc.abilist | 2 ++ .../linux/powerpc/powerpc32/fpu/libc.abilist | 2 ++ .../powerpc32/fpu/libc_malloc_debug.abilist | 2 ++ .../powerpc/powerpc32/nofpu/libc.abilist | 2 ++ .../powerpc32/nofpu/libc_malloc_debug.abilist | 2 ++ .../linux/powerpc/powerpc64/be/libc.abilist | 2 ++ .../linux/powerpc/powerpc64/le/libc.abilist | 2 ++ .../unix/sysv/linux/riscv/rv32/libc.abilist | 2 ++ .../riscv/rv32/libc_malloc_debug.abilist | 2 ++ .../unix/sysv/linux/riscv/rv64/libc.abilist | 2 ++ .../riscv/rv64/libc_malloc_debug.abilist | 2 ++ .../unix/sysv/linux/s390/s390-32/libc.abilist | 2 ++ .../s390/s390-32/libc_malloc_debug.abilist | 2 ++ .../unix/sysv/linux/s390/s390-64/libc.abilist | 2 ++ .../s390/s390-64/libc_malloc_debug.abilist | 2 ++ sysdeps/unix/sysv/linux/sh/be/libc.abilist | 2 ++ sysdeps/unix/sysv/linux/sh/le/libc.abilist | 2 ++ .../linux/sh/le/libc_malloc_debug.abilist | 2 ++ .../sysv/linux/sparc/sparc32/libc.abilist | 2 ++ .../sysv/linux/sparc/sparc64/libc.abilist | 2 ++ .../unix/sysv/linux/x86_64/64/libc.abilist | 2 ++ .../linux/x86_64/64/libc_malloc_debug.abilist | 2 ++ .../unix/sysv/linux/x86_64/x32/libc.abilist | 2 ++ .../x86_64/x32/libc_malloc_debug.abilist | 2 ++ 64 files changed, 258 insertions(+) create mode 100644 malloc/tst-free-aligned-sized.c create mode 100644 malloc/tst-free-sized.c diff --git a/conform/data/stdlib.h-data b/conform/data/stdlib.h-data index 0f6da09166..246a734ae1 100644 --- a/conform/data/stdlib.h-data +++ b/conform/data/stdlib.h-data @@ -185,6 +185,10 @@ function {void*} valloc (size_t) #endif function size_t wcstombs (char*, const wchar_t*, size_t) function int wctomb (char*, wchar_t) +#if defined ISO23 +function void free_sized (void*, size_t) +function void free_aligned_sized (void*, size_t, size_t) +#endif #if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX allow-header stddef.h diff --git a/malloc/Makefile b/malloc/Makefile index 2f232f9238..04a6a356da 100644 --- a/malloc/Makefile +++ b/malloc/Makefile @@ -66,6 +66,8 @@ tests := \ tst-tcfree1 tst-tcfree2 tst-tcfree3 tst-tcfree4 \ tst-trim1 \ tst-valloc \ + tst-free-aligned-sized \ + tst-free-sized \ # tests tests-static := \ diff --git a/malloc/Versions b/malloc/Versions index c763395c6d..604cbc8fc6 100644 --- a/malloc/Versions +++ b/malloc/Versions @@ -67,6 +67,9 @@ libc { GLIBC_2.33 { mallinfo2; } + GLIBC_2.42 { + free_sized; free_aligned_sized; + } GLIBC_PRIVATE { # Internal startup hook for libpthread. __libc_malloc_pthread_startup; diff --git a/malloc/malloc.c b/malloc/malloc.c index d28cd66faa..cefef4221c 100644 --- a/malloc/malloc.c +++ b/malloc/malloc.c @@ -3732,6 +3732,35 @@ aligned_alloc (size_t alignment, size_t bytes) return _mid_memalign (alignment, bytes); } +/* For ISO C23. */ +void +weak_function +free_sized(void *ptr, size_t size) +{ + /* We do not perform validation that size is the same as the original + requested size at this time. We leave that to the sanitizers. We + simply forward to `free`. This allows existing malloc replacements + to continue to work. */ + + ((void) size); + free(ptr); +} + +/* For ISO C23. */ +void +weak_function +free_aligned_sized(void *ptr, size_t alignment, size_t size) +{ + /* We do not perform validation that size and alignment is the same as + the original requested size and alignment at this time. We leave that + to the sanitizers. We simply forward to `free`. This allows existing + malloc replacements to continue to work. */ + + ((void) alignment); + ((void) size); + free(ptr); +} + static void * _mid_memalign (size_t alignment, size_t bytes) { diff --git a/malloc/tst-free-aligned-sized.c b/malloc/tst-free-aligned-sized.c new file mode 100644 index 0000000000..029b3443dc --- /dev/null +++ b/malloc/tst-free-aligned-sized.c @@ -0,0 +1,33 @@ +/* Test that free_aligned_sized works. + Copyright (C) 2025 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#include +#include + +static int +do_test (void) +{ + free_aligned_sized(NULL, 0, 0); + + void *p = aligned_alloc(128, 1024); + free_aligned_sized(p, 128, 1024); + + return 0; +} + +#include \ No newline at end of file diff --git a/malloc/tst-free-sized.c b/malloc/tst-free-sized.c new file mode 100644 index 0000000000..45546dbc99 --- /dev/null +++ b/malloc/tst-free-sized.c @@ -0,0 +1,33 @@ +/* Test that free_sized works. + Copyright (C) 2025 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#include +#include + +static int +do_test (void) +{ + free_sized(NULL, 0); + + void *p = malloc(128); + free_sized(p, 128); + + return 0; +} + +#include \ No newline at end of file diff --git a/manual/memory.texi b/manual/memory.texi index 46f76c17ca..12c7708a49 100644 --- a/manual/memory.texi +++ b/manual/memory.texi @@ -764,6 +764,37 @@ There is no point in freeing blocks at the end of a program, because all of the program's space is given back to the system when the process terminates. +@deftypefun void free_sized (void *@var{ptr}, size_t @var{size}) +@standards{???, stdlib.h} +@safety{@prelim{}@mtsafe{}@asunsafe{@asulock{}}@acunsafe{@aculock{} @acsfd{} @acsmem{}}} +The @code{free_sized} function deallocates the block of memory pointed at +by @var{ptr} that was previously allocated by @code{malloc}, @code{calloc} +or @code{realloc}. The size @var{size} must match the previously requested +total size provided to @code{malloc}, @code{calloc} or @code{realloc}. +Attempting to deallocated memory allocated by @code{aligned_alloc}, +@code{memalign}, @code{posix_memalign}, @code{valloc} or @code{pvalloc} is +undefined behavior, use @code{free_aligned_sized} instead. +@end deftypefun + +@deftypefun void free_aligned_sized (void *@var{ptr}, size_t @var{alignment}, size_t @var{size}) +@standards{???, stdlib.h} +@safety{@prelim{}@mtsafe{}@asunsafe{@asulock{}}@acunsafe{@aculock{} @acsfd{} @acsmem{}}} +The @code{free_aligned_sized} function deallocates the block of memory +pointed at by @var{ptr} that was previously allocated by +@code{aligned_alloc}, @code{memalign}, @code{posix_memalign}, +@code{valloc} or @code{pvalloc}. The size @var{size} and alignment +@var{alignment} must match the previously requested total size and +alignment provided to @code{aligned_alloc}, @code{memalign} or +@code{posix_memalign}. In the case of @code{valloc}, @var{alignment} +must be @code{sysconf(_SC_PAGESIZE)}. In the case of @code{pvalloc}, +@var{alignment} must be @code{sysconf(_SC_PAGESIZE)} and @var{size} +must be the original size rounded up to the next multiple of the system +page size. Attempting to deallocated memory allocated by @code{malloc}, +@code{calloc} or @code{realloc} is undefined behavior. In the case of +either @code{valloc} or @code{pvalloc}, it is recommended to use +@code{free} instead due to the mentioned subtlety. +@end deftypefun + @node Changing Block Size @subsubsection Changing the Size of a Block @cindex changing the size of a block (@code{malloc}) diff --git a/stdlib/stdlib.h b/stdlib/stdlib.h index cd4503c761..5009982561 100644 --- a/stdlib/stdlib.h +++ b/stdlib/stdlib.h @@ -686,6 +686,17 @@ extern void *realloc (void *__ptr, size_t __size) /* Free a block allocated by `malloc', `realloc' or `calloc'. */ extern void free (void *__ptr) __THROW; +#if __GLIBC_USE(ISOC23) +/* Free a block allocated by `malloc`, `realloc` or `calloc` but not `aligned_alloc`. + SIZE must be equal to the original requested size provided to `malloc`, `realloc` + or `calloc`. For `calloc` SIZE is NMEMB elements * SIZE bytes. */ +extern void free_sized (void *__ptr, size_t __size) __THROW; + +/* Free a block allocated by `aligned_alloc`. ALIGNMENT and SIZE must be the same as + the values provided to `aligned_alloc`. */ +extern void free_aligned_sized (void *__ptr, size_t __alignment, size_t __size) __THROW; +#endif + #ifdef __USE_MISC /* Re-allocate the previously allocated block in PTR, making the new block large enough for NMEMB elements of SIZE bytes each. */ diff --git a/sysdeps/unix/sysv/linux/aarch64/libc.abilist b/sysdeps/unix/sysv/linux/aarch64/libc.abilist index a22e651432..4658f2a89d 100644 --- a/sysdeps/unix/sysv/linux/aarch64/libc.abilist +++ b/sysdeps/unix/sysv/linux/aarch64/libc.abilist @@ -2767,3 +2767,5 @@ GLIBC_2.42 uabs F GLIBC_2.42 uimaxabs F GLIBC_2.42 ulabs F GLIBC_2.42 ullabs F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/aarch64/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/aarch64/libc_malloc_debug.abilist index c82c88dcf7..6cae4b367f 100644 --- a/sysdeps/unix/sysv/linux/aarch64/libc_malloc_debug.abilist +++ b/sysdeps/unix/sysv/linux/aarch64/libc_malloc_debug.abilist @@ -26,3 +26,5 @@ GLIBC_2.17 pvalloc F GLIBC_2.17 realloc F GLIBC_2.17 valloc F GLIBC_2.33 mallinfo2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/alpha/libc.abilist b/sysdeps/unix/sysv/linux/alpha/libc.abilist index 4b5736a3b6..0505dd4359 100644 --- a/sysdeps/unix/sysv/linux/alpha/libc.abilist +++ b/sysdeps/unix/sysv/linux/alpha/libc.abilist @@ -3204,3 +3204,5 @@ GLIBC_2.9 ns_name_skip F GLIBC_2.9 ns_name_uncompress F GLIBC_2.9 ns_name_unpack F GLIBC_2.9 pipe2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/alpha/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/alpha/libc_malloc_debug.abilist index 15b3293b03..bbc437ae6d 100644 --- a/sysdeps/unix/sysv/linux/alpha/libc_malloc_debug.abilist +++ b/sysdeps/unix/sysv/linux/alpha/libc_malloc_debug.abilist @@ -26,3 +26,5 @@ GLIBC_2.2 mcheck_check_all F GLIBC_2.2 mcheck_pedantic F GLIBC_2.2 posix_memalign F GLIBC_2.33 mallinfo2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/arc/libc.abilist b/sysdeps/unix/sysv/linux/arc/libc.abilist index b8a44784bd..6217157c02 100644 --- a/sysdeps/unix/sysv/linux/arc/libc.abilist +++ b/sysdeps/unix/sysv/linux/arc/libc.abilist @@ -2528,3 +2528,5 @@ GLIBC_2.42 uabs F GLIBC_2.42 uimaxabs F GLIBC_2.42 ulabs F GLIBC_2.42 ullabs F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/arc/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/arc/libc_malloc_debug.abilist index cf9f611403..7a0103f80b 100644 --- a/sysdeps/unix/sysv/linux/arc/libc_malloc_debug.abilist +++ b/sysdeps/unix/sysv/linux/arc/libc_malloc_debug.abilist @@ -24,3 +24,5 @@ GLIBC_2.32 pvalloc F GLIBC_2.32 realloc F GLIBC_2.32 valloc F GLIBC_2.33 mallinfo2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/arm/be/libc.abilist b/sysdeps/unix/sysv/linux/arm/be/libc.abilist index 959e44672f..19c8146a1b 100644 --- a/sysdeps/unix/sysv/linux/arm/be/libc.abilist +++ b/sysdeps/unix/sysv/linux/arm/be/libc.abilist @@ -2893,3 +2893,5 @@ GLIBC_2.9 ns_name_skip F GLIBC_2.9 ns_name_uncompress F GLIBC_2.9 ns_name_unpack F GLIBC_2.9 pipe2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/arm/be/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/arm/be/libc_malloc_debug.abilist index e505469154..180b9c1b19 100644 --- a/sysdeps/unix/sysv/linux/arm/be/libc_malloc_debug.abilist +++ b/sysdeps/unix/sysv/linux/arm/be/libc_malloc_debug.abilist @@ -26,3 +26,5 @@ GLIBC_2.4 posix_memalign F GLIBC_2.4 pvalloc F GLIBC_2.4 realloc F GLIBC_2.4 valloc F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/arm/le/libc.abilist b/sysdeps/unix/sysv/linux/arm/le/libc.abilist index a930d1a52b..8079aa4139 100644 --- a/sysdeps/unix/sysv/linux/arm/le/libc.abilist +++ b/sysdeps/unix/sysv/linux/arm/le/libc.abilist @@ -2890,3 +2890,5 @@ GLIBC_2.9 ns_name_skip F GLIBC_2.9 ns_name_uncompress F GLIBC_2.9 ns_name_unpack F GLIBC_2.9 pipe2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/arm/le/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/arm/le/libc_malloc_debug.abilist index e505469154..180b9c1b19 100644 --- a/sysdeps/unix/sysv/linux/arm/le/libc_malloc_debug.abilist +++ b/sysdeps/unix/sysv/linux/arm/le/libc_malloc_debug.abilist @@ -26,3 +26,5 @@ GLIBC_2.4 posix_memalign F GLIBC_2.4 pvalloc F GLIBC_2.4 realloc F GLIBC_2.4 valloc F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/csky/libc.abilist b/sysdeps/unix/sysv/linux/csky/libc.abilist index 6325fc12c4..59a0fb71c5 100644 --- a/sysdeps/unix/sysv/linux/csky/libc.abilist +++ b/sysdeps/unix/sysv/linux/csky/libc.abilist @@ -2804,3 +2804,5 @@ GLIBC_2.42 uabs F GLIBC_2.42 uimaxabs F GLIBC_2.42 ulabs F GLIBC_2.42 ullabs F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/csky/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/csky/libc_malloc_debug.abilist index 4cd866430b..2685348236 100644 --- a/sysdeps/unix/sysv/linux/csky/libc_malloc_debug.abilist +++ b/sysdeps/unix/sysv/linux/csky/libc_malloc_debug.abilist @@ -24,3 +24,5 @@ GLIBC_2.29 pvalloc F GLIBC_2.29 realloc F GLIBC_2.29 valloc F GLIBC_2.33 mallinfo2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/hppa/libc.abilist b/sysdeps/unix/sysv/linux/hppa/libc.abilist index 86b3fbdeec..4428a9c6c5 100644 --- a/sysdeps/unix/sysv/linux/hppa/libc.abilist +++ b/sysdeps/unix/sysv/linux/hppa/libc.abilist @@ -2913,3 +2913,5 @@ GLIBC_2.9 ns_name_skip F GLIBC_2.9 ns_name_uncompress F GLIBC_2.9 ns_name_unpack F GLIBC_2.9 pipe2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/hppa/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/hppa/libc_malloc_debug.abilist index 8798ca8653..670127ccf3 100644 --- a/sysdeps/unix/sysv/linux/hppa/libc_malloc_debug.abilist +++ b/sysdeps/unix/sysv/linux/hppa/libc_malloc_debug.abilist @@ -26,3 +26,5 @@ GLIBC_2.2 pvalloc F GLIBC_2.2 realloc F GLIBC_2.2 valloc F GLIBC_2.33 mallinfo2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/i386/libc.abilist b/sysdeps/unix/sysv/linux/i386/libc.abilist index 6555592d86..f3bb1ee551 100644 --- a/sysdeps/unix/sysv/linux/i386/libc.abilist +++ b/sysdeps/unix/sysv/linux/i386/libc.abilist @@ -3096,3 +3096,5 @@ GLIBC_2.9 ns_name_skip F GLIBC_2.9 ns_name_uncompress F GLIBC_2.9 ns_name_unpack F GLIBC_2.9 pipe2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/i386/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/i386/libc_malloc_debug.abilist index 55ef952885..65e2d49cee 100644 --- a/sysdeps/unix/sysv/linux/i386/libc_malloc_debug.abilist +++ b/sysdeps/unix/sysv/linux/i386/libc_malloc_debug.abilist @@ -26,3 +26,5 @@ GLIBC_2.2 mcheck_check_all F GLIBC_2.2 mcheck_pedantic F GLIBC_2.2 posix_memalign F GLIBC_2.33 mallinfo2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/loongarch/lp64/libc.abilist b/sysdeps/unix/sysv/linux/loongarch/lp64/libc.abilist index a6cab9612a..f2a164e6f6 100644 --- a/sysdeps/unix/sysv/linux/loongarch/lp64/libc.abilist +++ b/sysdeps/unix/sysv/linux/loongarch/lp64/libc.abilist @@ -2288,3 +2288,5 @@ GLIBC_2.42 uabs F GLIBC_2.42 uimaxabs F GLIBC_2.42 ulabs F GLIBC_2.42 ullabs F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/loongarch/lp64/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/loongarch/lp64/libc_malloc_debug.abilist index 6ddfd162b3..160158c88e 100644 --- a/sysdeps/unix/sysv/linux/loongarch/lp64/libc_malloc_debug.abilist +++ b/sysdeps/unix/sysv/linux/loongarch/lp64/libc_malloc_debug.abilist @@ -24,3 +24,5 @@ GLIBC_2.36 posix_memalign F GLIBC_2.36 pvalloc F GLIBC_2.36 realloc F GLIBC_2.36 valloc F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist index 7b7b72aa50..3a57e44436 100644 --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist @@ -2872,3 +2872,5 @@ GLIBC_2.9 ns_name_skip F GLIBC_2.9 ns_name_uncompress F GLIBC_2.9 ns_name_unpack F GLIBC_2.9 pipe2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libc_malloc_debug.abilist index e505469154..180b9c1b19 100644 --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libc_malloc_debug.abilist +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libc_malloc_debug.abilist @@ -26,3 +26,5 @@ GLIBC_2.4 posix_memalign F GLIBC_2.4 pvalloc F GLIBC_2.4 realloc F GLIBC_2.4 valloc F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist index df398e43c6..0291a5c1ac 100644 --- a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist +++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist @@ -3039,3 +3039,5 @@ GLIBC_2.9 ns_name_skip F GLIBC_2.9 ns_name_uncompress F GLIBC_2.9 ns_name_unpack F GLIBC_2.9 pipe2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libc_malloc_debug.abilist index 55ef952885..65e2d49cee 100644 --- a/sysdeps/unix/sysv/linux/m68k/m680x0/libc_malloc_debug.abilist +++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libc_malloc_debug.abilist @@ -26,3 +26,5 @@ GLIBC_2.2 mcheck_check_all F GLIBC_2.2 mcheck_pedantic F GLIBC_2.2 posix_memalign F GLIBC_2.33 mallinfo2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist index ca8df6f4b0..839edf7a78 100644 --- a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist @@ -2853,3 +2853,5 @@ GLIBC_2.42 uabs F GLIBC_2.42 uimaxabs F GLIBC_2.42 ulabs F GLIBC_2.42 ullabs F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist index 9508154847..172fa6cb07 100644 --- a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist +++ b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist @@ -2850,3 +2850,5 @@ GLIBC_2.42 uabs F GLIBC_2.42 uimaxabs F GLIBC_2.42 ulabs F GLIBC_2.42 ullabs F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist index 4d51cc428f..c1b8c55740 100644 --- a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist @@ -3002,3 +3002,5 @@ GLIBC_2.9 ns_name_skip F GLIBC_2.9 ns_name_uncompress F GLIBC_2.9 ns_name_unpack F GLIBC_2.9 pipe2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc_malloc_debug.abilist index 55ef952885..65e2d49cee 100644 --- a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc_malloc_debug.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc_malloc_debug.abilist @@ -26,3 +26,5 @@ GLIBC_2.2 mcheck_check_all F GLIBC_2.2 mcheck_pedantic F GLIBC_2.2 posix_memalign F GLIBC_2.33 mallinfo2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist index 7f90fadc76..a0d69745f2 100644 --- a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist @@ -3000,3 +3000,5 @@ GLIBC_2.9 ns_name_skip F GLIBC_2.9 ns_name_uncompress F GLIBC_2.9 ns_name_unpack F GLIBC_2.9 pipe2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc_malloc_debug.abilist index 55ef952885..65e2d49cee 100644 --- a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc_malloc_debug.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc_malloc_debug.abilist @@ -26,3 +26,5 @@ GLIBC_2.2 mcheck_check_all F GLIBC_2.2 mcheck_pedantic F GLIBC_2.2 posix_memalign F GLIBC_2.33 mallinfo2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist index fc366d1bd0..c2f08b5cfe 100644 --- a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist @@ -3008,3 +3008,5 @@ GLIBC_2.9 ns_name_skip F GLIBC_2.9 ns_name_uncompress F GLIBC_2.9 ns_name_unpack F GLIBC_2.9 pipe2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc_malloc_debug.abilist index 55ef952885..65e2d49cee 100644 --- a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc_malloc_debug.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc_malloc_debug.abilist @@ -26,3 +26,5 @@ GLIBC_2.2 mcheck_check_all F GLIBC_2.2 mcheck_pedantic F GLIBC_2.2 posix_memalign F GLIBC_2.33 mallinfo2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist index debd5c37c9..2da91b4dcc 100644 --- a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist @@ -2910,3 +2910,5 @@ GLIBC_2.9 ns_name_skip F GLIBC_2.9 ns_name_uncompress F GLIBC_2.9 ns_name_unpack F GLIBC_2.9 pipe2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc_malloc_debug.abilist index 15b3293b03..bbc437ae6d 100644 --- a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc_malloc_debug.abilist +++ b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc_malloc_debug.abilist @@ -26,3 +26,5 @@ GLIBC_2.2 mcheck_check_all F GLIBC_2.2 mcheck_pedantic F GLIBC_2.2 posix_memalign F GLIBC_2.33 mallinfo2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/or1k/libc.abilist b/sysdeps/unix/sysv/linux/or1k/libc.abilist index b62d59f1af..c5f5820cdf 100644 --- a/sysdeps/unix/sysv/linux/or1k/libc.abilist +++ b/sysdeps/unix/sysv/linux/or1k/libc.abilist @@ -2278,3 +2278,5 @@ GLIBC_2.42 uabs F GLIBC_2.42 uimaxabs F GLIBC_2.42 ulabs F GLIBC_2.42 ullabs F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist index 883e66f3ae..8974d054a2 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist @@ -3249,3 +3249,5 @@ GLIBC_2.9 ns_name_skip F GLIBC_2.9 ns_name_uncompress F GLIBC_2.9 ns_name_unpack F GLIBC_2.9 pipe2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc_malloc_debug.abilist index 55ef952885..65e2d49cee 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc_malloc_debug.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc_malloc_debug.abilist @@ -26,3 +26,5 @@ GLIBC_2.2 mcheck_check_all F GLIBC_2.2 mcheck_pedantic F GLIBC_2.2 posix_memalign F GLIBC_2.33 mallinfo2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist index 84cd9e0e18..ecf055741b 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist @@ -3294,3 +3294,5 @@ GLIBC_2.9 ns_name_skip F GLIBC_2.9 ns_name_uncompress F GLIBC_2.9 ns_name_unpack F GLIBC_2.9 pipe2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc_malloc_debug.abilist index 55ef952885..65e2d49cee 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc_malloc_debug.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc_malloc_debug.abilist @@ -26,3 +26,5 @@ GLIBC_2.2 mcheck_check_all F GLIBC_2.2 mcheck_pedantic F GLIBC_2.2 posix_memalign F GLIBC_2.33 mallinfo2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist index 8832568ab3..c7701dc144 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist @@ -3003,3 +3003,5 @@ GLIBC_2.9 ns_name_skip F GLIBC_2.9 ns_name_uncompress F GLIBC_2.9 ns_name_unpack F GLIBC_2.9 pipe2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist index b6ff8016e4..cc5582dd99 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist @@ -2987,3 +2987,5 @@ GLIBC_2.42 uabs F GLIBC_2.42 uimaxabs F GLIBC_2.42 ulabs F GLIBC_2.42 ullabs F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist index 1771a2370c..143371b862 100644 --- a/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist +++ b/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist @@ -2531,3 +2531,5 @@ GLIBC_2.42 uabs F GLIBC_2.42 uimaxabs F GLIBC_2.42 ulabs F GLIBC_2.42 ullabs F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libc_malloc_debug.abilist index ff6713a479..183ad64a8e 100644 --- a/sysdeps/unix/sysv/linux/riscv/rv32/libc_malloc_debug.abilist +++ b/sysdeps/unix/sysv/linux/riscv/rv32/libc_malloc_debug.abilist @@ -24,3 +24,5 @@ GLIBC_2.33 posix_memalign F GLIBC_2.33 pvalloc F GLIBC_2.33 realloc F GLIBC_2.33 valloc F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist index 4b48352fd9..149ff92b48 100644 --- a/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist +++ b/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist @@ -2731,3 +2731,5 @@ GLIBC_2.42 uabs F GLIBC_2.42 uimaxabs F GLIBC_2.42 ulabs F GLIBC_2.42 ullabs F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libc_malloc_debug.abilist index 65425a03ee..1f2f2d9b83 100644 --- a/sysdeps/unix/sysv/linux/riscv/rv64/libc_malloc_debug.abilist +++ b/sysdeps/unix/sysv/linux/riscv/rv64/libc_malloc_debug.abilist @@ -24,3 +24,5 @@ GLIBC_2.27 pvalloc F GLIBC_2.27 realloc F GLIBC_2.27 valloc F GLIBC_2.33 mallinfo2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist index f0decc787b..251ed49f03 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist @@ -3261,3 +3261,5 @@ GLIBC_2.9 pututline F GLIBC_2.9 pututxline F GLIBC_2.9 updwtmp F GLIBC_2.9 updwtmpx F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libc_malloc_debug.abilist index 55ef952885..65e2d49cee 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-32/libc_malloc_debug.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libc_malloc_debug.abilist @@ -26,3 +26,5 @@ GLIBC_2.2 mcheck_check_all F GLIBC_2.2 mcheck_pedantic F GLIBC_2.2 posix_memalign F GLIBC_2.33 mallinfo2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist index da8a2bfb74..11b87e3105 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist @@ -3038,3 +3038,5 @@ GLIBC_2.9 ns_name_skip F GLIBC_2.9 ns_name_uncompress F GLIBC_2.9 ns_name_unpack F GLIBC_2.9 pipe2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libc_malloc_debug.abilist index 554567ab85..72095b6888 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-64/libc_malloc_debug.abilist +++ b/sysdeps/unix/sysv/linux/s390/s390-64/libc_malloc_debug.abilist @@ -26,3 +26,5 @@ GLIBC_2.2 pvalloc F GLIBC_2.2 realloc F GLIBC_2.2 valloc F GLIBC_2.33 mallinfo2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/sh/be/libc.abilist b/sysdeps/unix/sysv/linux/sh/be/libc.abilist index fb30341894..c53a8ee669 100644 --- a/sysdeps/unix/sysv/linux/sh/be/libc.abilist +++ b/sysdeps/unix/sysv/linux/sh/be/libc.abilist @@ -2919,3 +2919,5 @@ GLIBC_2.9 ns_name_skip F GLIBC_2.9 ns_name_uncompress F GLIBC_2.9 ns_name_unpack F GLIBC_2.9 pipe2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/sh/le/libc.abilist b/sysdeps/unix/sysv/linux/sh/le/libc.abilist index d716673432..79b5c1f110 100644 --- a/sysdeps/unix/sysv/linux/sh/le/libc.abilist +++ b/sysdeps/unix/sysv/linux/sh/le/libc.abilist @@ -2916,3 +2916,5 @@ GLIBC_2.9 ns_name_skip F GLIBC_2.9 ns_name_uncompress F GLIBC_2.9 ns_name_unpack F GLIBC_2.9 pipe2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/sh/le/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/sh/le/libc_malloc_debug.abilist index 8798ca8653..670127ccf3 100644 --- a/sysdeps/unix/sysv/linux/sh/le/libc_malloc_debug.abilist +++ b/sysdeps/unix/sysv/linux/sh/le/libc_malloc_debug.abilist @@ -26,3 +26,5 @@ GLIBC_2.2 pvalloc F GLIBC_2.2 realloc F GLIBC_2.2 valloc F GLIBC_2.33 mallinfo2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist index 6deedf216d..744becaad6 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist @@ -3268,3 +3268,5 @@ GLIBC_2.9 ns_name_skip F GLIBC_2.9 ns_name_uncompress F GLIBC_2.9 ns_name_unpack F GLIBC_2.9 pipe2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist index 1ce22bf036..9aa65235b7 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist @@ -2886,3 +2886,5 @@ GLIBC_2.9 ns_name_skip F GLIBC_2.9 ns_name_uncompress F GLIBC_2.9 ns_name_unpack F GLIBC_2.9 pipe2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist index 564877250b..c30cd5bd18 100644 --- a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist @@ -2835,3 +2835,5 @@ GLIBC_2.9 ns_name_skip F GLIBC_2.9 ns_name_uncompress F GLIBC_2.9 ns_name_unpack F GLIBC_2.9 pipe2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libc_malloc_debug.abilist index 45dfcd31c5..a0c7db451c 100644 --- a/sysdeps/unix/sysv/linux/x86_64/64/libc_malloc_debug.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/64/libc_malloc_debug.abilist @@ -26,3 +26,5 @@ GLIBC_2.2.5 pvalloc F GLIBC_2.2.5 realloc F GLIBC_2.2.5 valloc F GLIBC_2.33 mallinfo2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist index 25a39d0943..88d0aef11c 100644 --- a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist @@ -2782,3 +2782,5 @@ GLIBC_2.42 uabs F GLIBC_2.42 uimaxabs F GLIBC_2.42 ulabs F GLIBC_2.42 ullabs F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libc_malloc_debug.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libc_malloc_debug.abilist index 821525018b..b9dc6ba495 100644 --- a/sysdeps/unix/sysv/linux/x86_64/x32/libc_malloc_debug.abilist +++ b/sysdeps/unix/sysv/linux/x86_64/x32/libc_malloc_debug.abilist @@ -26,3 +26,5 @@ GLIBC_2.16 pvalloc F GLIBC_2.16 realloc F GLIBC_2.16 valloc F GLIBC_2.33 mallinfo2 F +GLIBC_2.42 free_sized F +GLIBC_2.42 free_aligned_sized F