From 5b172333786f6a0dab2d31225bb0b51456571a64 Mon Sep 17 00:00:00 2001 From: Siddhesh Poyarekar Date: Thu, 22 Aug 2013 11:07:15 +0530 Subject: [PATCH] Avoid inlining of cleanup function for kaio_suspend Inlining of the function seems to be responsible for the unwind function not adjusting the GOT pointer before calling the cleanup function. --- glibc-rh731833-rtkaio-2.patch | 11 +++++++++++ glibc.spec | 3 +++ 2 files changed, 14 insertions(+) create mode 100644 glibc-rh731833-rtkaio-2.patch diff --git a/glibc-rh731833-rtkaio-2.patch b/glibc-rh731833-rtkaio-2.patch new file mode 100644 index 0000000..e3f4eca --- /dev/null +++ b/glibc-rh731833-rtkaio-2.patch @@ -0,0 +1,11 @@ +diff -pruN glibc-2.17-c758a686/rtkaio/sysdeps/unix/sysv/linux/kaio_suspend.c glibc-2.17-c758a686.new/rtkaio/sysdeps/unix/sysv/linux/kaio_suspend.c +--- glibc-2.17-c758a686/rtkaio/sysdeps/unix/sysv/linux/kaio_suspend.c 2011-10-19 16:34:41.000000000 +0530 ++++ glibc-2.17-c758a686.new/rtkaio/sysdeps/unix/sysv/linux/kaio_suspend.c 2013-08-16 10:22:30.457609558 +0530 +@@ -59,6 +59,7 @@ struct clparam + + + static void ++__attribute__ ((noinline)) + cleanup (void *arg) + { + #ifdef DONT_NEED_AIO_MISC_COND diff --git a/glibc.spec b/glibc.spec index a4849c2..ba8576f 100644 --- a/glibc.spec +++ b/glibc.spec @@ -112,6 +112,7 @@ Patch0038: %{name}-rh959034.patch # Remove non-ELF support in rtkaio Patch0040: %{name}-rh731833-rtkaio.patch +Patch0041: %{name}-rh731833-rtkaio-2.patch # # Patches from upstream @@ -441,6 +442,7 @@ package or when debugging this package. %patch1009 -p1 %patch1010 -p1 %patch0040 -p1 +%patch0041 -p1 # On powerpc32, hp timing is only available in power4/power6 # libs, not in base, so pre-power4 dynamic linker is incompatible @@ -1235,6 +1237,7 @@ rm -f *.filelist* - Add systemd to BuildRequires (#999924). - Expand sizes of some types in strcoll (#855399, CVE-2012-4424). - Remove non-ELF support in rtkaio. +- Avoid inlining of cleanup function for kaio_suspend. * Mon Aug 19 2013 Siddhesh Poyarekar - 2.17-13 - Fix stack overflow in getaddrinfo with many results (#947892, CVE-2013-1914).