Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/1.2/patches/2235053/?format=api
{ "id": 2235053, "url": "http://patchwork.ozlabs.org/api/1.2/patches/2235053/?format=api", "web_url": "http://patchwork.ozlabs.org/project/glibc/patch/20260508132211.3504357-2-yury.khrustalev@arm.com/", "project": { "id": 41, "url": "http://patchwork.ozlabs.org/api/1.2/projects/41/?format=api", "name": "GNU C Library", "link_name": "glibc", "list_id": "libc-alpha.sourceware.org", "list_email": "libc-alpha@sourceware.org", "web_url": "", "scm_url": "", "webscm_url": "", "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<20260508132211.3504357-2-yury.khrustalev@arm.com>", "list_archive_url": null, "date": "2026-05-08T13:22:09", "name": "[1/3] configure: remove --enable-memory-tagging option", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "63478ace8048de3e90d3d02997a4faa37f4995c4", "submitter": { "id": 88214, "url": "http://patchwork.ozlabs.org/api/1.2/people/88214/?format=api", "name": "Yury Khrustalev", "email": "yury.khrustalev@arm.com" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/glibc/patch/20260508132211.3504357-2-yury.khrustalev@arm.com/mbox/", "series": [ { "id": 503390, "url": "http://patchwork.ozlabs.org/api/1.2/series/503390/?format=api", "web_url": "http://patchwork.ozlabs.org/project/glibc/list/?series=503390", "date": "2026-05-08T13:22:08", "name": "Remove broken memory tagging in malloc", "version": 1, "mbox": "http://patchwork.ozlabs.org/series/503390/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/2235053/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/2235053/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<libc-alpha-bounces~incoming=patchwork.ozlabs.org@sourceware.org>", "X-Original-To": [ "incoming@patchwork.ozlabs.org", "libc-alpha@sourceware.org" ], "Delivered-To": [ "patchwork-incoming@legolas.ozlabs.org", "libc-alpha@sourceware.org" ], "Authentication-Results": [ "legolas.ozlabs.org;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n unprotected) header.d=arm.com header.i=@arm.com header.a=rsa-sha256\n header.s=foss header.b=lfjOoxT4;\n\tdkim-atps=neutral", "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=sourceware.org\n (client-ip=2620:52:6:3111::32; helo=vm01.sourceware.org;\n envelope-from=libc-alpha-bounces~incoming=patchwork.ozlabs.org@sourceware.org;\n receiver=patchwork.ozlabs.org)", "sourceware.org;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key,\n unprotected) header.d=arm.com header.i=@arm.com header.a=rsa-sha256\n header.s=foss header.b=lfjOoxT4", "sourceware.org;\n dmarc=pass (p=none dis=none) header.from=arm.com", "sourceware.org; spf=pass smtp.mailfrom=arm.com", "sourceware.org;\n arc=none smtp.remote-ip=217.140.110.172" ], "Received": [ "from vm01.sourceware.org (vm01.sourceware.org\n [IPv6:2620:52:6:3111::32])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4gBqYm539Qz1yCg\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 08 May 2026 23:23:08 +1000 (AEST)", "from vm01.sourceware.org (localhost [IPv6:::1])\n\tby sourceware.org (Postfix) with ESMTP id A43664BA2E11\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 8 May 2026 13:23:06 +0000 (GMT)", "from foss.arm.com (foss.arm.com [217.140.110.172])\n by sourceware.org (Postfix) with ESMTP id 3A0364BA2E30\n for <libc-alpha@sourceware.org>; Fri, 8 May 2026 13:22:24 +0000 (GMT)", "from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14])\n by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 61F8426BC;\n Fri, 8 May 2026 06:22:18 -0700 (PDT)", "from fdebian.localdomain (G7GWP2TF97.cambridge.arm.com [10.1.34.30])\n by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id\n A80D83F836; Fri, 8 May 2026 06:22:22 -0700 (PDT)" ], "DKIM-Filter": [ "OpenDKIM Filter v2.11.0 sourceware.org A43664BA2E11", "OpenDKIM Filter v2.11.0 sourceware.org 3A0364BA2E30" ], "DMARC-Filter": "OpenDMARC Filter v1.4.2 sourceware.org 3A0364BA2E30", "ARC-Filter": "OpenARC Filter v1.0.0 sourceware.org 3A0364BA2E30", "ARC-Seal": "i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1778246544; cv=none;\n b=jIf2DK6GYWOnq22+MI0gKgXClMAYOeAik9///z6X4ERR9qH21KGIkYm9UWTQ+Obc6A8WyznDXJWveOkZHFqx3QVp1Pjfz8a+PkLaU34c9C/D9ieF1opM5twb2cXFjde8ulIH9Xd1rQX/+/wIP1rxMkxjZglSCKy9sJFf+kS/e2Q=", "ARC-Message-Signature": "i=1; a=rsa-sha256; d=sourceware.org; s=key;\n t=1778246544; c=relaxed/simple;\n bh=XbV5I38nyg+ctj2255fPkBpb9EuwwQvJVapXQIXyQGY=;\n h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version;\n b=x+TCsKSaHth5OYEqCA7LzSDBmTyiegt9ZOP0xvVtUHcgznM+JENBKnTwMyta4xEv1rClXbaobIV5hPVg6UrTVTM9Qby/rPpURO5qIa8aug/p0ReVIg30CXcIMuPtyNQUv2yGAnjCBtLTNbeRbOm+zbx2i4xe3SUb9adRrU7nYn4=", "ARC-Authentication-Results": "i=1; sourceware.org;\n dkim=pass (1024-bit key, unprotected)\n header.d=arm.com header.i=@arm.com header.a=rsa-sha256 header.s=foss\n header.b=lfjOoxT4", "DKIM-Signature": "v=1; a=rsa-sha256; c=simple/simple; d=arm.com; s=foss;\n t=1778246543; bh=XbV5I38nyg+ctj2255fPkBpb9EuwwQvJVapXQIXyQGY=;\n h=From:To:Cc:Subject:Date:In-Reply-To:References:From;\n b=lfjOoxT4v/OM311NjdB7nxJzKXsAeOSi5kW61BM7BNicleYnAHrSAIPXMiAEsqy/k\n xAL52QgNt9FTy/JgOlSIYwYCeustYdp4/DzhZtZq7S3rbyEqmDboS76jG4Kok0M8Nf\n 71q1JGSQF+VV3YVBOuiPFaCHBgR25nnEOhlqORgw=", "From": "Yury Khrustalev <yury.khrustalev@arm.com>", "To": "libc-alpha@sourceware.org", "Cc": "DJ Delorie <dj@redhat.com>,\n Adhemerval Zanella <adhemerval.zanella@linaro.org>,\n Andreas Schwab <schwab@suse.de>, Wilco Dijkstra <wilco.dijkstra@arm.com>,\n Florian Weimer <fweimer@redhat.com>", "Subject": "[PATCH 1/3] configure: remove --enable-memory-tagging option", "Date": "Fri, 8 May 2026 14:22:09 +0100", "Message-ID": "<20260508132211.3504357-2-yury.khrustalev@arm.com>", "X-Mailer": "git-send-email 2.47.3", "In-Reply-To": "<20260508132211.3504357-1-yury.khrustalev@arm.com>", "References": "<20260508132211.3504357-1-yury.khrustalev@arm.com>", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "X-BeenThere": "libc-alpha@sourceware.org", "X-Mailman-Version": "2.1.30", "Precedence": "list", "List-Id": "Libc-alpha mailing list <libc-alpha.sourceware.org>", "List-Unsubscribe": "<https://sourceware.org/mailman/options/libc-alpha>,\n <mailto:libc-alpha-request@sourceware.org?subject=unsubscribe>", "List-Archive": "<https://sourceware.org/pipermail/libc-alpha/>", "List-Post": "<mailto:libc-alpha@sourceware.org>", "List-Help": "<mailto:libc-alpha-request@sourceware.org?subject=help>", "List-Subscribe": "<https://sourceware.org/mailman/listinfo/libc-alpha>,\n <mailto:libc-alpha-request@sourceware.org?subject=subscribe>", "Errors-To": "libc-alpha-bounces~incoming=patchwork.ozlabs.org@sourceware.org" }, "content": "Remove the '--enable-memory-tagging' configure option along with\nall associated variables and macros.\n\nThis includes:\n - Removing the 'glibc.mem.tagging' tunable.\n - Removing parts of the configure script that processes the\n '--enable-memory-tagging' configure option.\n - Remove the 'memory-tagging' makefile variable.\n - Remove the USE_MTAG macro definition. Code that is conditionally\n compiled when this macro is defined is not removed at this stage\n and will be dealt with in the following commits.\n\nAlso, update documentation accordingly.\n---\n INSTALL | 14 --------------\n config.h.in | 3 ---\n config.make.in | 2 --\n configure | 24 -----------------------\n configure.ac | 15 --------------\n elf/dl-tunables.list | 5 -----\n manual/install.texi | 13 -------------\n manual/tunables.texi | 29 ----------------------------\n sysdeps/aarch64/dl-diagnostics-cpu.c | 2 --\n 9 files changed, 107 deletions(-)", "diff": "diff --git a/INSTALL b/INSTALL\nindex 4174c9661f..b67da640bd 100644\n--- a/INSTALL\n+++ b/INSTALL\n@@ -154,20 +154,6 @@ passed to 'configure'. For example:\n \n NOTE: '--enable-cet' is only supported on x86_64 and x32.\n \n-'--enable-memory-tagging'\n- Enable memory tagging support if the architecture supports it.\n- When the GNU C Library is built with this option then the resulting\n- library will be able to control the use of tagged memory when\n- hardware support is present by use of the tunable\n- 'glibc.mem.tagging'. This includes the generation of tagged memory\n- when using the 'malloc' APIs.\n-\n- At present only AArch64 platforms with MTE provide this\n- functionality, although the library will still operate (without\n- memory tagging) on older versions of the architecture.\n-\n- The default is to disable support for memory tagging.\n-\n '--disable-profile'\n Don't build libraries with profiling information. You may want to\n use this option if you don't plan to do profiling.\ndiff --git a/config.h.in b/config.h.in\nindex b53731c393..18e8c822e3 100644\n--- a/config.h.in\n+++ b/config.h.in\n@@ -182,9 +182,6 @@\n /* Define if inlined system calls are available. */\n #undef HAVE_INLINED_SYSCALLS\n \n-/* Define if memory tagging support should be enabled. */\n-#undef USE_MTAG\n-\n /* Package description. */\n #undef PKGVERSION\n \ndiff --git a/config.make.in b/config.make.in\nindex 856363d0cd..12ccb55e53 100644\n--- a/config.make.in\n+++ b/config.make.in\n@@ -78,8 +78,6 @@ multi-arch = @multi_arch@\n \n mach-interface-list = @mach_interface_list@\n \n-memory-tagging = @memory_tagging@\n-\n # Configuration options.\n build-shared = @shared@\n build-profile = @profile@\ndiff --git a/configure b/configure\nindex c84d283bd5..6b5c6ff21f 100755\n--- a/configure\n+++ b/configure\n@@ -703,7 +703,6 @@ INSTALL_PROGRAM\n base_machine\n build_pt_chown\n build_nscd\n-memory_tagging\n enable_werror\n force_install\n bindnow\n@@ -811,7 +810,6 @@ enable_maintainer_mode\n enable_kernel\n enable_werror\n enable_multi_arch\n-enable_memory_tagging\n enable_systemtap\n enable_build_nscd\n enable_nscd\n@@ -1490,8 +1488,6 @@ Optional Features:\n --disable-werror do not build with -Werror\n --enable-multi-arch enable single DSO with optimizations for multiple\n architectures\n- --enable-memory-tagging enable memory tagging if supported by the\n- architecture [default=no]\n --enable-systemtap enable systemtap static probe points [default=no]\n --disable-build-nscd disable building and installing the nscd daemon\n --disable-nscd library functions will not contact the nscd daemon\n@@ -4690,26 +4686,6 @@ esac\n fi\n \n \n-# Check whether --enable-memory-tagging was given.\n-if test ${enable_memory_tagging+y}\n-then :\n- enableval=$enable_memory_tagging; memory_tagging=$enableval\n-else case e in #(\n- e) memory_tagging=no ;;\n-esac\n-fi\n-\n-if test \"$memory_tagging\" = yes; then\n- # Only enable this on architectures that support it.\n- case $host_cpu in\n- aarch64)\n- printf \"%s\\n\" \"#define USE_MTAG 1\" >>confdefs.h\n-\n- ;;\n- esac\n-fi\n-\n-\n # Check whether --enable-systemtap was given.\n if test ${enable_systemtap+y}\n then :\ndiff --git a/configure.ac b/configure.ac\nindex 280ec8e5b3..7fd10db618 100644\n--- a/configure.ac\n+++ b/configure.ac\n@@ -328,21 +328,6 @@ AC_ARG_ENABLE([multi-arch],\n \t [multi_arch=$enableval],\n \t [multi_arch=default])\n \n-AC_ARG_ENABLE([memory-tagging],\n-\t AS_HELP_STRING([--enable-memory-tagging],\n-\t\t\t [enable memory tagging if supported by the architecture @<:@default=no@:>@]),\n-\t [memory_tagging=$enableval],\n-\t [memory_tagging=no])\n-if test \"$memory_tagging\" = yes; then\n- # Only enable this on architectures that support it.\n- case $host_cpu in\n- aarch64)\n- AC_DEFINE(USE_MTAG)\n- ;;\n- esac\n-fi\n-AC_SUBST(memory_tagging)\n-\n AC_ARG_ENABLE([systemtap],\n [AS_HELP_STRING([--enable-systemtap],\n \t [enable systemtap static probe points @<:@default=no@:>@])],\ndiff --git a/elf/dl-tunables.list b/elf/dl-tunables.list\nindex 1bbf70d36f..111649f145 100644\n--- a/elf/dl-tunables.list\n+++ b/elf/dl-tunables.list\n@@ -116,11 +116,6 @@ glibc {\n }\n \n mem {\n- tagging {\n- type: INT_32\n- minval: 0\n- maxval: 255\n- }\n decorate_maps {\n type: INT_32\n minval: 0\ndiff --git a/manual/install.texi b/manual/install.texi\nindex 073cda0530..4094baa259 100644\n--- a/manual/install.texi\n+++ b/manual/install.texi\n@@ -185,19 +185,6 @@ non CET enabled shared library in CET enabled application.\n \n NOTE: @option{--enable-cet} is only supported on x86_64 and x32.\n \n-@item --enable-memory-tagging\n-Enable memory tagging support if the architecture supports it. When\n-@theglibc{} is built with this option then the resulting library will\n-be able to control the use of tagged memory when hardware support is\n-present by use of the tunable @samp{glibc.mem.tagging}. This includes\n-the generation of tagged memory when using the @code{malloc} APIs.\n-\n-At present only AArch64 platforms with MTE provide this functionality,\n-although the library will still operate (without memory tagging) on\n-older versions of the architecture.\n-\n-The default is to disable support for memory tagging.\n-\n @item --disable-profile\n Don't build libraries with profiling information. You may want to use\n this option if you don't plan to do profiling.\ndiff --git a/manual/tunables.texi b/manual/tunables.texi\nindex 12b515c628..95b7075ae7 100644\n--- a/manual/tunables.texi\n+++ b/manual/tunables.texi\n@@ -40,7 +40,6 @@ glibc.malloc.perturb: 0 (min: 0, max: 255)\n glibc.cpu.x86_shared_cache_size: 0x100000 (min: 0x0, max: 0xffffffffffffffff)\n glibc.pthread.rseq: 1 (min: 0, max: 1)\n glibc.cpu.prefer_map_32bit_exec: 0 (min: 0, max: 1)\n-glibc.mem.tagging: 0 (min: 0, max: 255)\n glibc.malloc.hugetlb: 0x0 (min: 0x0, max: 0xffffffffffffffff)\n glibc.cpu.x86_rep_movsb_threshold: 0x2000 (min: 0x100, max: 0xffffffffffffffff)\n glibc.malloc.mxfast: 0x0 (min: 0x0, max: 0xffffffffffffffff)\n@@ -666,34 +665,6 @@ This tunable namespace supports operations that affect the way @theglibc{}\n and the process manage memory.\n @end deftp\n \n-@deftp Tunable glibc.mem.tagging\n-If the hardware supports memory tagging, this tunable can be used to\n-control the way @theglibc{} uses this feature. At present this is only\n-supported on AArch64 systems with the MTE extension; it is ignored for\n-all other systems.\n-\n-This tunable takes a value between 0 and 255 and acts as a bitmask\n-that enables various capabilities.\n-\n-Bit 0 (the least significant bit) causes the @code{malloc}\n-subsystem to allocate\n-tagged memory, with each allocation being assigned a random tag.\n-\n-Bit 1 enables precise faulting mode for tag violations on systems that\n-support deferred tag violation reporting. This may cause programs\n-to run more slowly.\n-\n-Bit 2 enables either precise or deferred faulting mode for tag violations\n-whichever is preferred by the system.\n-\n-Other bits are currently reserved.\n-\n-@Theglibc{} startup code will automatically enable memory tagging\n-support in the kernel if this tunable has any non-zero value.\n-\n-The default value is @samp{0}, which disables all memory tagging.\n-@end deftp\n-\n @deftp Tunable glibc.mem.decorate_maps\n If the kernel supports naming anonymous virtual memory areas (since\n Linux version 5.17, although not always enabled by some kernel\ndiff --git a/sysdeps/aarch64/dl-diagnostics-cpu.c b/sysdeps/aarch64/dl-diagnostics-cpu.c\nindex 697868cb25..4bf244ec71 100644\n--- a/sysdeps/aarch64/dl-diagnostics-cpu.c\n+++ b/sysdeps/aarch64/dl-diagnostics-cpu.c\n@@ -45,8 +45,6 @@ _dl_diagnostics_cpu (void)\n print_cpu_features_value (\"midr_el1\",\n GLRO (dl_aarch64_cpu_features).midr_el1);\n print_cpu_features_value (\"mops\", GLRO (dl_aarch64_cpu_features).mops);\n- print_cpu_features_value (\"mte_state\",\n- GLRO (dl_aarch64_cpu_features).mte_state);\n print_cpu_features_value (\"sve\", GLRO (dl_aarch64_cpu_features).sve);\n print_cpu_features_value (\"zva_size\",\n GLRO (dl_aarch64_cpu_features).zva_size);\n", "prefixes": [ "1/3" ] }