diff --git a/meta/recipes-core/glibc/glibc-version.inc b/meta/recipes-core/glibc/glibc-version.inc
index ea13d8d558..9573f5daef 100644
--- a/meta/recipes-core/glibc/glibc-version.inc
+++ b/meta/recipes-core/glibc/glibc-version.inc
@@ -1,6 +1,6 @@
 SRCBRANCH ?= "release/2.44/master"
 PV = "2.44+git"
-SRCREV_glibc ?= "7cba77790f3279bec3ac20e9c7632b021cd53f95"
+SRCREV_glibc ?= "afd131806b25715a7617ab757db43f0bb610acbf"
 SRCREV_localedef ?= "cba02c503d7c853a38ccfb83c57e343ca5ecd7e5"
 
 GLIBC_GIT_URI ?= "git://sourceware.org/git/glibc.git;protocol=https"
diff --git a/meta/recipes-core/glibc/glibc/dependencies.patch b/meta/recipes-core/glibc/glibc/dependencies.patch
deleted file mode 100644
index ff77408b03..0000000000
--- a/meta/recipes-core/glibc/glibc/dependencies.patch
+++ /dev/null
@@ -1,420 +0,0 @@
-From 43a9fe3338d41eac0607f82802a17928ac3d6a6d Mon Sep 17 00:00:00 2001
-From: Adhemerval Zanella <adhemerval.zanella@linaro.org>
-Date: Thu, 6 Aug 2026 14:07:55 -0300
-Subject: [PATCH 1/6] Fix gen-as-const-headers races with the parallel subdir
- recursion (BZ 34438)
-
-The parallel subdirectory recursion (commit 7cac99621e96) only orders
-csu (and mach/hurd on Hurd) before the parallel fan-out plus the edges
-the Depend files request.  A header generated from gen-as-const-headers
-is only ordered before the compilations of the subdirectory that
-adds the .sym (through before-compile), so a header consumed by a
-different subdirectory may not exist yet when its consumer is
-compiled.
-
-That is the case for <sigaltstack-offsets.h>: it is generated when
-building misc, while its only consumer, ____longjmp_chk.S (x86_64 and
-sh), is built in debug.  The serial recursion always ran misc before
-debug in the sorted order, hiding the missing dependency.
-
-Move the generate the header to 'debug' instead.
-
-The same class of problem exists on Hurd: jmp_buf-ssp.h that is used
-by ____longjmp_chk.S in debug, and signal-defines.h that is sued
-by debug and setjmp.
-
-Deterministically reproduced with 'make debug/subdir_lib' from a clean
-build tree (which orders only csu before debug), and verified with
-builds for x86_64-linux-gnu, sh4-linux-gnu, i686-gnu, and x86_64-gnu.
-
-Upstream-Status: Submitted [https://inbox.sourceware.org/libc-alpha/20260806170830.126994-1-adhemerval.zanella@linaro.org/]
-Signed-off-by: Ross Burton <ross.burton@arm.com>
----
- Makerules                               | 12 +++++++++++-
- sysdeps/mach/hurd/x86/Makefile          |  6 +-----
- sysdeps/unix/sysv/linux/sh/Makefile     |  4 +++-
- sysdeps/unix/sysv/linux/x86_64/Makefile |  4 +++-
- sysdeps/x86/Makefile                    | 10 ++++++++--
- 5 files changed, 26 insertions(+), 10 deletions(-)
-
-diff --git a/Makerules b/Makerules
-index 6bef57ece9..cef30974f1 100644
---- a/Makerules
-+++ b/Makerules
-@@ -259,7 +259,17 @@ endif  # gen-py-const-headers
- ifdef gen-as-const-headers
- # Generating headers for assembly constants.
- # We need this defined early to get into before-compile before
--# it's used in sysd-rules, below.
-+# it's used in sysd-rules, below.  The gen-as-const-headers is evaluated
-+# per subdirectory, so the before-compile dependency below only orders
-+# the generated header before the compiles of the subdirectory whose
-+# Makefile adds the .sym directive.
-+# The parallel subdirectory recursion does not order sibling subdirectories,
-+# so a .sym must be added in the subdirectory that compiles its consumers,
-+# or in csu (which runs before the parallel) when it has consumers in
-+# several subdirectories.
-+# It must not add the same .sym in several subdirectories though: their
-+# concurrent sub-makes would race generating the header through the fixed
-+# temporary files below.
- # Define GEN_AS_CONST_HEADERS to avoid circular dependency [BZ #22792].
- # NB: <tcb-offsets.h> is generated from tcb-offsets.sym to define
- # offsets and sizes of types in <tls.h> and maybe <pthread.h> which
-diff --git a/sysdeps/mach/hurd/x86/Makefile b/sysdeps/mach/hurd/x86/Makefile
-index 97e3287c87..1d94f3a1c1 100644
---- a/sysdeps/mach/hurd/x86/Makefile
-+++ b/sysdeps/mach/hurd/x86/Makefile
-@@ -3,11 +3,7 @@ sysdep_routines += ioperm
- sysdep_headers += sys/io.h
- endif
- 
--ifeq ($(subdir),debug)
--gen-as-const-headers += signal-defines.sym
--endif
--
--ifeq ($(subdir),setjmp)
-+ifeq ($(subdir),csu)
- gen-as-const-headers += signal-defines.sym
- endif
- 
-diff --git a/sysdeps/unix/sysv/linux/sh/Makefile b/sysdeps/unix/sysv/linux/sh/Makefile
-index dd3b382ac1..8c4cb73824 100644
---- a/sysdeps/unix/sysv/linux/sh/Makefile
-+++ b/sysdeps/unix/sysv/linux/sh/Makefile
-@@ -6,7 +6,9 @@ ifeq ($(subdir),stdlib)
- gen-as-const-headers += ucontext_i.sym
- endif
- 
--ifeq ($(subdir),misc)
-+# <sigaltstack-offsets.h> is only used by ____longjmp_chk.S, which is
-+# built in the debug subdirectory.
-+ifeq ($(subdir),debug)
- gen-as-const-headers += sigaltstack-offsets.sym
- endif
- 
-diff --git a/sysdeps/unix/sysv/linux/x86_64/Makefile b/sysdeps/unix/sysv/linux/x86_64/Makefile
-index 6938382801..528fd951b2 100644
---- a/sysdeps/unix/sysv/linux/x86_64/Makefile
-+++ b/sysdeps/unix/sysv/linux/x86_64/Makefile
-@@ -10,7 +10,9 @@ ifeq ($(subdir),csu)
- gen-as-const-headers += ucontext_i.sym
- endif
- 
--ifeq ($(subdir),misc)
-+# <sigaltstack-offsets.h> is only used by ____longjmp_chk.S, which is
-+# built in the debug subdirectory.
-+ifeq ($(subdir),debug)
- gen-as-const-headers += sigaltstack-offsets.sym
- endif
- 
-diff --git a/sysdeps/x86/Makefile b/sysdeps/x86/Makefile
-index 232e388d32..b4434deb0c 100644
---- a/sysdeps/x86/Makefile
-+++ b/sysdeps/x86/Makefile
-@@ -1,5 +1,12 @@
- ifeq ($(subdir),csu)
--gen-as-const-headers += cpu-features-offsets.sym features-offsets.sym
-+# <jmp_buf-ssp.h> is used by the setjmp/longjmp implementations in the
-+# setjmp subdirectory and also by ____longjmp_chk.S in the debug
-+# subdirectory.
-+gen-as-const-headers += \
-+  cpu-features-offsets.sym \
-+  features-offsets.sym \
-+  jmp_buf-ssp.sym \
-+  # gen-as-const-headers
- endif
- 
- ifeq ($(subdir),elf)
-@@ -171,7 +178,6 @@ tests += \
- endif # $(subdir) == math
- 
- ifeq ($(subdir),setjmp)
--gen-as-const-headers += jmp_buf-ssp.sym
- sysdep_routines += __longjmp_cancel
- endif
- 
--- 
-2.43.0
-
-
-From f88dc9ea5403ed103aad1aa7ca613af058ba99f9 Mon Sep 17 00:00:00 2001
-From: Rudi Heitbaum <rudi@heitbaum.com>
-Date: Thu, 6 Aug 2026 14:07:56 -0300
-Subject: [PATCH 2/6] Makerules: Only install the ABI lib-names header from the
- top level (BZ 34439)
-
-The $(inst_includedir)/%.h install rules exist only where $(headers) is
-non-empty, so in a subdir without headers (e.g. csu) the prerequisite
-added on install-others-nosubdir has no rule.
-
-It only worked because .NOTPARALLEL made the top level install the header
-first, which the parallel subdir recursion no longer guarantees.
----
- Makerules | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/Makerules b/Makerules
-index cef30974f1..dfe66b7fa6 100644
---- a/Makerules
-+++ b/Makerules
-@@ -312,7 +312,12 @@ lib-names-h-abi = gnu/lib-names-$(default-abi).h
- lib-names-stmp-abi = gnu/lib-names-$(default-abi).stmp
- before-compile += $(common-objpfx)$(lib-names-h-abi)
- common-generated += gnu/lib-names.h
-+# The $(inst_includedir)/%.h install rules are defined only where $(headers)
-+# is non-empty, and with parallel subdir recursion a subdir without headers
-+# (e.g. csu) may run before the top level has installed the header.
-+ifndef subdir
- install-others-nosubdir: $(inst_includedir)/$(lib-names-h-abi)
-+endif
- $(common-objpfx)gnu/lib-names.h:
- 	$(make-target-directory)
- 	{ \
--- 
-2.43.0
-
-
-From abd98b39bc4a16a2c8afa43919b86d2a48de8155 Mon Sep 17 00:00:00 2001
-From: Adhemerval Zanella <adhemerval.zanella@linaro.org>
-Date: Thu, 6 Aug 2026 14:07:57 -0300
-Subject: [PATCH 3/6] Makefile: Only print the test summary in the second pass
- of 'make check'
-
-The build-only first pass of the two-pass 'make check' still runs the
-static checks (abi, conformtest, installed headers, etc.), and the
-top-level tests recipe merged and summarized their results.
-
-An unexpected FAIL there (e.g. check-abi) aborted 'check' before the
-second pass ran any built test, and even a clean run printed a misleading
-partial summary.
-
-Pass tests-summary=no in the first pass to skip the merge and summary;
-the .test-result files persist, so the second pass folds those results
-into the one complete summary at the end, restoring the single-pass
-reporting behavior.
----
- Makefile  |  7 +++++++
- Makerules | 11 +++++++++--
- 2 files changed, 16 insertions(+), 2 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index a6aabca691..b9fac6f47c 100644
---- a/Makefile
-+++ b/Makefile
-@@ -869,7 +869,11 @@ endif
- 	touch $(objpfx)testroot.pristine/install.stamp
- 
- tests-special-notdir = $(patsubst $(objpfx)%, %, $(tests-special))
-+# The build-only first pass of the two-pass 'make check' (see Makerules)
-+# passes tests-summary=no: the merge and summary are left to the second
-+# pass, which folds in this pass's $(tests-special) results.
- tests: $(tests-special)
-+ifneq ($(tests-summary),no)
- 	$(..)scripts/merge-test-results.sh -s $(objpfx) "" \
- 	  $(sort $(tests-special-notdir:.out=)) \
- 	  > $(objpfx)subdir-tests.sum
-@@ -877,11 +881,14 @@ tests: $(tests-special)
- 	  $(sort $(subdirs) .) \
- 	  > $(objpfx)tests.sum
- 	$(call summarize-tests,tests.sum)
-+endif
- xtests:
-+ifneq ($(tests-summary),no)
- 	$(..)scripts/merge-test-results.sh -t $(objpfx) subdir-xtests.sum \
- 	  $(sort $(subdirs)) \
- 	  > $(objpfx)xtests.sum
- 	$(call summarize-tests,xtests.sum, for extra tests)
-+endif
- 
- # The realclean target is just like distclean for the parent, but we want
- # the subdirs to know the difference in case they care.
-diff --git a/Makerules b/Makerules
-index dfe66b7fa6..5f65f3ab9e 100644
---- a/Makerules
-+++ b/Makerules
-@@ -1211,6 +1211,13 @@ ALL_BUILD_CFLAGS = $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) -D_GNU_SOURCE \
- # therefore builds the test programs (run-built-tests=no, recursion fully
- # parallel) and then runs them (run-built-tests=yes).  'make tests' and a
- # subdirectory's own 'check' stay single-pass.
-+# The first pass still runs the static checks ($(tests-special): abi,
-+# conformtest, installed headers, ...), so tests-summary=no makes it skip
-+# the results merge and summary: an unexpected FAIL there would otherwise
-+# abort 'check' before the second pass runs any built test, and even a
-+# clean run would print a misleading partial summary.  The .test-result
-+# files persist, so the second pass folds those results into the one
-+# complete summary at the end.
- check-twopass :=
- ifndef subdir
- ifeq (yes,$(run-built-tests))
-@@ -1219,10 +1226,10 @@ endif
- endif
- ifeq (yes,$(check-twopass))
- check:
--	$(MAKE) run-built-tests=no  tests
-+	$(MAKE) run-built-tests=no  tests-summary=no tests
- 	$(MAKE) run-built-tests=yes tests
- xcheck:
--	$(MAKE) run-built-tests=no  xtests
-+	$(MAKE) run-built-tests=no  tests-summary=no xtests
- 	$(MAKE) run-built-tests=yes xtests
- else
- check: tests
--- 
-2.43.0
-
-
-From 8d04483c7dc5366cc1f2d7d444f1eee65ee45071 Mon Sep 17 00:00:00 2001
-From: Adhemerval Zanella <adhemerval.zanella@linaro.org>
-Date: Thu, 6 Aug 2026 14:07:58 -0300
-Subject: [PATCH 4/6] Makerules: Make the .dt to .d conversion safe against
- concurrent sub-makes
-
-The %.d: %.dt rule seds its input into a fixed temporary name, renames
-it into place and removes the input.  Two makes converting the same
-file trip over each other:
-
-  mv: cannot stat '.../test-double-libmvec-sincos-avx512f.o.T': No such file or directory
-  sed: can't read .../test-float-libmvec-acosf-avx512f.o.dt: No such file or directory
-
-That happens because the elf rtld-Rules recursion runs a sub-make over
-every $(rtld-subdirs) directory, which converts that directory's .dt
-files, and the parallel subdirectory recursion (commit 7cac99621e96)
-runs it concurrently with those subdirectories' own sub-makes.
-
-Add the PID of the shell to the temporary name and claim the input with
-a rename: only the run that wins converts and installs the target.
----
- Makerules | 18 ++++++++++++++----
- 1 file changed, 14 insertions(+), 4 deletions(-)
-
-diff --git a/Makerules b/Makerules
-index 5f65f3ab9e..be51154bae 100644
---- a/Makerules
-+++ b/Makerules
-@@ -758,10 +758,20 @@ all-dt-files := $(foreach o,$(object-suffixes-for-libc),$(+depfiles:.d=$o.dt))
- 	     $(wildcard $(all-dt-files:.dt=.d))
- 
- # This is a funny rule in that it removes its input file.
-+#
-+# More than one make can convert the .dt files of a single object
-+# directory: the elf rtld-Rules recursion runs a sub-make over every
-+# $(rtld-subdirs) directory, concurrently with that directory's own
-+# sub-make under the parallel subdir recursion.  Add the PID of the
-+# shell to the temporary name and claim the input with a rename: only
-+# the run that wins converts and installs the target.
- %.d: %.dt
--	@sed $(sed-remove-objpfx) $< > $(@:.d=.T) && \
--	 mv -f $(@:.d=.T) $@ && \
--	 rm -f $<
-+	@dt=$(@:.d=.T)$$$$; \
-+	 if mv -f $< $$dt 2>/dev/null; then \
-+	   sed $(sed-remove-objpfx) $$dt > $$dt.new && \
-+	   mv -f $$dt.new $@ && \
-+	   rm -f $$dt; \
-+	 fi
- 
- # Avoid the .h.d files for any .sym files whose .h files don't exist yet.
- # They will be generated when they're needed, and trying too early won't work.
-@@ -1433,7 +1443,7 @@ endef
- # Also remove the dependencies and generated source files.
- common-clean: common-mostlyclean
- 	-rm -f $(addprefix $(objpfx),$(generated))
--	-rm -f $(objpfx)*.d $(objpfx)*.dt
-+	-rm -f $(objpfx)*.d $(objpfx)*.dt $(objpfx)*.T[0-9]*
- 	-rm -fr $(addprefix $(objpfx),$(generated-dirs))
- 	-rm -f $(addprefix $(common-objpfx),$(common-generated))
- 	-rm -f $(gen-as-const-headers:%.sym=$(common-objpfx)%.h)
--- 
-2.43.0
-
-
-From fc18d62479fc57fdcf1d1bf14685ec4be4041bd0 Mon Sep 17 00:00:00 2001
-From: Adhemerval Zanella <adhemerval.zanella@linaro.org>
-Date: Thu, 6 Aug 2026 14:07:59 -0300
-Subject: [PATCH 5/6] Makefile: Order the top-level stamp files before the
- subdirectory fan-out
-
-The archive rules in Makerules list every stamp file as a prerequisite,
-including the top level's own, and the elf sub-make evaluates them to
-build libc_pic.a for the librtld.map link.  A sub-make can only create
-the stamp files of its own directory, so when the top-level ones do not
-exist yet it fails with:
-
-  make[2]: *** No rule to make target '.../stamp.os', needed by
-  '.../libc_pic.a'.  Stop.
-
-The serial recursion created them before the subdirectories through the
-prerequisite order of subdir_lib; the parallel recursion (commit
-7cac99621e96) does not.  Add them as prerequisites of the object-building
-per-subdirectory targets.
----
- Makefile | 8 ++++++++
- 1 file changed, 8 insertions(+)
-
-diff --git a/Makefile b/Makefile
-index b9fac6f47c..d559c42873 100644
---- a/Makefile
-+++ b/Makefile
-@@ -575,6 +575,14 @@ $(foreach t,$(+elf_last_subdir_targets),$(eval \
-   elf/$(t): $(addsuffix /$(t),$(filter-out elf,$(subdirs)))))
- endif
- 
-+# The archive rules in Makerules list every stamp file as a
-+# prerequisite of libc_pic.a, which the elf sub-make evaluates for the
-+# librtld.map link, but a sub-make can only create its own directory's
-+# stamps.  Create the top-level ones before the fan-out.
-+$(foreach t,$(+elf_last_subdir_targets),$(eval \
-+  $(addsuffix /$(t),$(subdirs)): \
-+    $(foreach o,$(object-suffixes-for-libc),$(common-objpfx)stamp$(o))))
-+
- # Pass barriers: a subdirectory 'others' build links programs against
- # the libraries, so the 'lib' pass (including the top-level libc.so
- # link) must have completed.
--- 
-2.43.0
-
-
-From a310022b8d6d40f38100800edacce08afd6e309a Mon Sep 17 00:00:00 2001
-From: Adhemerval Zanella <adhemerval.zanella@linaro.org>
-Date: Thu, 6 Aug 2026 14:08:00 -0300
-Subject: [PATCH 6/6] arm: Order the rtld link after libgcc-stubs.a
-
-The librtld.map and librtld.os link recipes use $(gnulib), which on arm
-contains libgcc-stubs.a through gnulib-arch.  But the archive is only a
-prerequisite of lib-noranlib so the rtld link can run before the archive
-exists:
-
-  ld.bfd: cannot find .../elf/libgcc-stubs.a: No such file or directory
-
-The race seems to predates the parallel subdirectory recursion, which
-only made it observable.
-
-Add the order-only dependency in sysdeps/arm/Makefile rather than in
-elf/Makefile.  Theprerequisite lists expand when the rule is parsed,
-and gnulib-arch is only defined once Makerules includes the sysdeps
-makefiles.
-
-Verified with a build for arm-linux-gnueabihf.
----
- sysdeps/arm/Makefile | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/sysdeps/arm/Makefile b/sysdeps/arm/Makefile
-index 0bb1b6e05b..9042315492 100644
---- a/sysdeps/arm/Makefile
-+++ b/sysdeps/arm/Makefile
-@@ -10,6 +10,11 @@ shared-only-routines += aeabi_unwind_cpp_pr1
- $(objpfx)libgcc-stubs.a: $(objpfx)aeabi_unwind_cpp_pr1.os
- 	$(build-extra-lib)
- 
-+# The rtld link recipes in elf/Makefile use $(gnulib), which here
-+# includes libgcc-stubs.a, but they cannot name it as a prerequisite:
-+# gnulib-arch is only defined once this file is included from Makerules.
-+$(objpfx)librtld.map $(objpfx)librtld.os: | $(objpfx)libgcc-stubs.a
-+
- lib-noranlib: $(objpfx)libgcc-stubs.a
- 
- ifeq ($(build-shared),yes)
--- 
-2.43.0
-
diff --git a/meta/recipes-core/glibc/glibc_2.44.bb b/meta/recipes-core/glibc/glibc_2.44.bb
index 5aa67b027d..b4a5fbf8c3 100644
--- a/meta/recipes-core/glibc/glibc_2.44.bb
+++ b/meta/recipes-core/glibc/glibc_2.44.bb
@@ -57,7 +57,6 @@ SRC_URI =  "${GLIBC_GIT_URI};branch=${SRCBRANCH};name=glibc \
            file://0020-fix-create-thread-failed-in-unprivileged-process-BZ-.patch \
            file://0021-tests-Skip-2-qemu-tests-that-can-hang-in-oe-selftest.patch \
            file://0022-Propagate-ffile-prefix-map-from-CFLAGS-to-ASFLAGS.patch \
-           file://dependencies.patch \
 "
 B = "${WORKDIR}/build-${TARGET_SYS}"
 
