support: Add check for TID zero in support_wait_for_thread_exit
This commit is contained in:
parent
3e354e4554
commit
2fe3fe9429
@ -66,7 +66,7 @@
|
|||||||
##############################################################################
|
##############################################################################
|
||||||
Name: glibc
|
Name: glibc
|
||||||
Version: 2.34
|
Version: 2.34
|
||||||
Release: 43
|
Release: 44
|
||||||
Summary: The GNU libc libraries
|
Summary: The GNU libc libraries
|
||||||
License: %{all_license}
|
License: %{all_license}
|
||||||
URL: http://www.gnu.org/software/glibc/
|
URL: http://www.gnu.org/software/glibc/
|
||||||
@ -163,6 +163,7 @@ Patch75: socket-Add-the-__sockaddr_un_set-function.patch
|
|||||||
Patch76: CVE-2022-23219-Buffer-overflow-in-sunrpc-clnt_create.patch
|
Patch76: CVE-2022-23219-Buffer-overflow-in-sunrpc-clnt_create.patch
|
||||||
Patch77: sunrpc-Test-case-for-clnt_create-unix-buffer-overflo.patch
|
Patch77: sunrpc-Test-case-for-clnt_create-unix-buffer-overflo.patch
|
||||||
Patch78: CVE-2022-23218-Buffer-overflow-in-sunrpc-svcunix_cre.patch
|
Patch78: CVE-2022-23218-Buffer-overflow-in-sunrpc-svcunix_cre.patch
|
||||||
|
Patch79: support-Add-check-for-TID-zero-in-support_wait_for_t.patch
|
||||||
|
|
||||||
Patch9000: turn-default-value-of-x86_rep_stosb_threshold_form_2K_to_1M.patch
|
Patch9000: turn-default-value-of-x86_rep_stosb_threshold_form_2K_to_1M.patch
|
||||||
Patch9001: delete-no-hard-link-to-avoid-all_language-package-to.patch
|
Patch9001: delete-no-hard-link-to-avoid-all_language-package-to.patch
|
||||||
@ -1365,6 +1366,9 @@ fi
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Fri Jan 21 Qingqing Li <liqingqing3@huawei.com> - 2.34-44
|
||||||
|
- support: Add check for TID zero in support_wait_for_thread_exit
|
||||||
|
|
||||||
* Tue Jan 18 Qingqing Li <liqingqing3@huawei.com> - 2.34-43
|
* Tue Jan 18 Qingqing Li <liqingqing3@huawei.com> - 2.34-43
|
||||||
- fix CVE-2022-23218 and CVE-2022-23219
|
- fix CVE-2022-23218 and CVE-2022-23219
|
||||||
|
|
||||||
|
|||||||
42
support-Add-check-for-TID-zero-in-support_wait_for_t.patch
Normal file
42
support-Add-check-for-TID-zero-in-support_wait_for_t.patch
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
From 176c88f5214d8107d330971cbbfbbba5186a111f Mon Sep 17 00:00:00 2001
|
||||||
|
From: Florian Weimer <fweimer@redhat.com>
|
||||||
|
Date: Fri, 1 Oct 2021 18:16:41 +0200
|
||||||
|
Subject: [PATCH] support: Add check for TID zero in
|
||||||
|
support_wait_for_thread_exit
|
||||||
|
|
||||||
|
Some kernel versions (observed with kernel 5.14 and earlier) can list
|
||||||
|
"0" entries in /proc/self/task. This happens when a thread exits
|
||||||
|
while the task list is being constructed. Treat this entry as not
|
||||||
|
present, like the proposed kernel patch does:
|
||||||
|
|
||||||
|
[PATCH] procfs: Do not list TID 0 in /proc/<pid>/task
|
||||||
|
<https://lore.kernel.org/all/8735pn5dx7.fsf@oldenburg.str.redhat.com/>
|
||||||
|
|
||||||
|
Fixes commit 032d74eaf6179100048a5bf0ce942e97dc8b9a60 ("support: Add
|
||||||
|
support_wait_for_thread_exit").
|
||||||
|
|
||||||
|
Reviewed-by: Carlos O'Donell <carlos@redhat.com>
|
||||||
|
Tested-by: Carlos O'Donell <carlos@redhat.com>
|
||||||
|
---
|
||||||
|
support/support_wait_for_thread_exit.c | 5 ++++-
|
||||||
|
1 file changed, 4 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/support/support_wait_for_thread_exit.c b/support/support_wait_for_thread_exit.c
|
||||||
|
index 658a813..5e3be42 100644
|
||||||
|
--- a/support/support_wait_for_thread_exit.c
|
||||||
|
+++ b/support/support_wait_for_thread_exit.c
|
||||||
|
@@ -43,7 +43,10 @@ support_wait_for_thread_exit (void)
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
- if (strcmp (e->d_name, ".") == 0 || strcmp (e->d_name, "..") == 0)
|
||||||
|
+ /* In some kernels, "0" entries denote a thread that has just
|
||||||
|
+ exited. */
|
||||||
|
+ if (strcmp (e->d_name, ".") == 0 || strcmp (e->d_name, "..") == 0
|
||||||
|
+ || strcmp (e->d_name, "0") == 0)
|
||||||
|
continue;
|
||||||
|
|
||||||
|
int task_tid = atoi (e->d_name);
|
||||||
|
--
|
||||||
|
1.8.3.1
|
||||||
|
|
||||||
Loading…
x
Reference in New Issue
Block a user