mirror of
https://sourceware.org/git/glibc.git
synced 2024-12-22 10:50:07 +00:00
Fix tst-setgetname for Linux kernels < 2.6.33.
Support for /proc/self/task/$tid/comm as added in Linux 2.6.33, therefore since the test tst-setgetname relies on this functionality to operate we must skip the test in kernels < 2.6.33. We wrap the checks with __ASSUME_PROC_PID_TASK_COMM such that in the future when we move arch_minimum_kernel to 2.6.33 we can remove this code.
This commit is contained in:
parent
cff469ca41
commit
f877c4f2bf
@ -1,3 +1,9 @@
|
||||
2014-02-05 Carlos O'Donell <carlos@rehdat.com>
|
||||
|
||||
* sysdeps/unix/sysv/linux/kernel-features.h
|
||||
[__LINUX_KERNEL_VERSION >= 0x020621]
|
||||
(__ASSUME_PROC_PID_TASK_COMM): Define.
|
||||
|
||||
2014-02-05 Siddhesh Poyarekar <siddhesh@redhat.com>
|
||||
|
||||
* manual/contrib.texi: Update entry for Ondrej Bilka, Will
|
||||
|
@ -1,3 +1,9 @@
|
||||
2014-02-05 Carlos O'Donell <carlos@redhat.com>
|
||||
|
||||
* sysdeps/unix/sysv/linux/tst-setgetname.c (do_test): Skip the
|
||||
test if !__ASSUME_PROC_PID_TASK_COMM and get_self_comm returns
|
||||
ENOENT.
|
||||
|
||||
2014-01-23 Stefan Liebler <stli@linux.vnet.ibm.com>
|
||||
|
||||
* tst-tls7.c: Adjust testcase timeout
|
||||
|
@ -23,6 +23,7 @@
|
||||
#include <unistd.h>
|
||||
#include <fcntl.h>
|
||||
#include <errno.h>
|
||||
#include <kernel-features.h>
|
||||
|
||||
/* New name of process. */
|
||||
#define NEW_NAME "setname"
|
||||
@ -99,6 +100,19 @@ do_test (int argc, char **argv)
|
||||
if (res == 0)
|
||||
{
|
||||
res = get_self_comm (gettid (), name_check, TASK_COMM_LEN);
|
||||
|
||||
#if !__ASSUME_PROC_PID_TASK_COMM
|
||||
/* On this first test we look for ENOENT to be returned from
|
||||
get_self_comm to indicate that the kernel is older than
|
||||
2.6.33 and doesn't contain comm within the proc structure.
|
||||
In that case we skip the entire test. */
|
||||
if (res == ENOENT)
|
||||
{
|
||||
printf ("SKIP: The kernel does not have /proc/self/task/%%lu/comm.\n");
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
if (res == 0)
|
||||
{
|
||||
if (strncmp (name, name_check, strlen (BIG_NAME)) == 0)
|
||||
|
@ -202,6 +202,12 @@
|
||||
# define __ASSUME_RECVMMSG 1
|
||||
#endif
|
||||
|
||||
/* Support for /proc/self/task/$tid/comm and /proc/$pid/task/$tid/comm were
|
||||
added in 2.6.33. */
|
||||
#if __LINUX_KERNEL_VERSION >= 0x020621
|
||||
# define __ASSUME_PROC_PID_TASK_COMM 1
|
||||
#endif
|
||||
|
||||
/* statfs fills in f_flags since 2.6.36. */
|
||||
#if __LINUX_KERNEL_VERSION >= 0x020624
|
||||
# define __ASSUME_STATFS_F_FLAGS 1
|
||||
|
Loading…
Reference in New Issue
Block a user