Hi - I am using scratchbox2 under Ubuntu 10.04 to build postgresql for ppc. About half the time the configuration test for thread safety fails with a qemu-ppc coredump. It fails less often when QEMU_STRACE is defined but it still fails sometimes. It appears to happen in the pthread_join() call, I think. Here is the info requested on the KVM bug report webpage (http://www.linux-kvm.org/page/Bugs): CPU model: Intel(R) Core(TM) i5-2400 CPU @ 3.10GHz Host kernel: Linux florida 2.6.32-36-generic-pae #79-Ubuntu SMP Tue Nov 8 23:25:26 UTC 2011 i686 GNU/Linux Guest: via "sb2 -t powerpc-unknown-linux-gnu" Qemu command: (generated by scratchbox) "/usr/bin/qemu-ppc -U LD_PRELOAD -L / -0 ./conftest ./conftest" Whether problem happens with -no-kvm, -no-kvm-irqchip, -no-kvm-pit: Not sure, qemu-ppc does not accept these. Scratchbox2 version: 2.0-lta101 Qemu version: qemu-ppc version 0.12.3 (qemu-kvm-0.12.3), Copyright (c) 2003-2008 Fabrice Bellard Ubuntu package: qemu-kvm-extras 0.12.3+noroms-0ubuntu9.16 (latest version available for Ubuntu 10.04) The "conftest" in question is generated from conftest.c (attached) by the following command within scratchbox: sb2-ppc$ gcc -o conftest -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -fno-strict-aliasing -fwrapv -pthread -D_REENTRANT -D_THREAD_SAFE -D_POSIX_PTHREAD_SEMANTICS -DIN_CONFIGURE -D_GNU_SOURCE conftest.c -lcrypt -ldl -lm -lpthread I can run it manually outside configure by: sb2-ppc$ ./conftest 5>&1 Your errno is thread-safe. Your system has sterror_r(); it does not need strerror(). Your system has getpwuid_r(); it does not need getpwuid(). Your system has getaddrinfo(); it does not need gethostbyname() or gethostbyname_r(). Your platform is thread-safe. sb2-ppc$ ./conftest 5>&1 Your errno is thread-safe. /build/buildd/qemu-kvm-0.12.3+noroms/tcg/tcg.c:133: tcg fatal error Aborted (core dumped) sb2-ppc$ I also ran it with QEMU_STRACE=1 defined, the results are attached (strace.txt) sb2-ppc$ ./conftest 5> strace.txt 2>&5 ; ls core ls: cannot access core: No such file or directory sb2-ppc$ ./conftest 5> strace.txt 2>&5 ; ls core ls: cannot access core: No such file or directory sb2-ppc$ ./conftest 5> strace.txt 2>&5 ; ls core Aborted (core dumped) core sb2-ppc$ Gdb data on the core file: $ gdb /usr/bin/qemu-ppc --core=build/powerpc-unknown-linux-gnu/postgres/core GNU gdb (GDB) 7.1-ubuntu Copyright (C) 2010 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "i486-linux-gnu". For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>... Reading symbols from /usr/bin/qemu-ppc...(no debugging symbols found)...done. [New Thread 29280] [New Thread 29282] [New Thread 29281] warning: Can't read pathname for load map: Input/output error. Reading symbols from /usr/lib/libsb2/libsb2.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libsb2/libsb2.so.1 Reading symbols from /lib/tls/i686/cmov/librt.so.1...(no debugging symbols found)...done. Loaded symbols for /lib/tls/i686/cmov/librt.so.1 Reading symbols from /lib/tls/i686/cmov/libpthread.so.0...(no debugging symbols found)...done. Loaded symbols for /lib/tls/i686/cmov/libpthread.so.0 Reading symbols from /lib/libaio.so.1...(no debugging symbols found)...done. Loaded symbols for /lib/libaio.so.1 Reading symbols from /lib/tls/i686/cmov/libm.so.6...(no debugging symbols found)...done. Loaded symbols for /lib/tls/i686/cmov/libm.so.6 Reading symbols from /lib/tls/i686/cmov/libc.so.6...(no debugging symbols found)...done. Loaded symbols for /lib/tls/i686/cmov/libc.so.6 Reading symbols from /lib/tls/i686/cmov/libdl.so.2...(no debugging symbols found)...done. Loaded symbols for /lib/tls/i686/cmov/libdl.so.2 Reading symbols from /lib/ld-linux.so.2...(no debugging symbols found)...done. Loaded symbols for /lib/ld-linux.so.2 Core was generated by `/usr/bin/qemu-ppc -U LD_PRELOAD -L / -0 ./conftest ./conftest'. Program terminated with signal 6, Aborted. #0 0xb75d4181 in _IO_file_write () from /lib/tls/i686/cmov/libc.so.6 (gdb) bt #0 0xb75d4181 in _IO_file_write () from /lib/tls/i686/cmov/libc.so.6 #1 0xb75d3e4f in ?? () from /lib/tls/i686/cmov/libc.so.6 #2 0xb75d4116 in _IO_file_xsputn () from /lib/tls/i686/cmov/libc.so.6 #3 0xb75aef58 in ?? () from /lib/tls/i686/cmov/libc.so.6 #4 0xb75a9e13 in vfprintf () from /lib/tls/i686/cmov/libc.so.6 #5 0x60005901 in ?? () #6 0x6001466f in ?? () #7 0x6000a012 in ?? () #8 0x60003b89 in ?? () #9 0x600051da in ?? () #10 0xb7583bd6 in __libc_start_main () from /lib/tls/i686/cmov/libc.so.6 #11 0x60003311 in ?? () (gdb) info threads 3 Thread 29281 0xb76f7f5b in pthread_mutex_lock () from /lib/tls/i686/cmov/libpthread.so.0 2 Thread 29282 0xb777e430 in __kernel_vsyscall () * 1 Thread 29280 0xb75d4181 in _IO_file_write () from /lib/tls/i686/cmov/libc.so.6 (gdb) thread 1 [Switching to thread 1 (Thread 29280)]#0 0xb75d4181 in _IO_file_write () from /lib/tls/i686/cmov/libc.so.6 (gdb) bt #0 0xb75d4181 in _IO_file_write () from /lib/tls/i686/cmov/libc.so.6 #1 0xb75d3e4f in ?? () from /lib/tls/i686/cmov/libc.so.6 #2 0xb75d4116 in _IO_file_xsputn () from /lib/tls/i686/cmov/libc.so.6 #3 0xb75aef58 in ?? () from /lib/tls/i686/cmov/libc.so.6 #4 0xb75a9e13 in vfprintf () from /lib/tls/i686/cmov/libc.so.6 #5 0x60005901 in ?? () #6 0x6001466f in ?? () #7 0x6000a012 in ?? () #8 0x60003b89 in ?? () #9 0x600051da in ?? () #10 0xb7583bd6 in __libc_start_main () from /lib/tls/i686/cmov/libc.so.6 #11 0x60003311 in ?? () (gdb) thread 2 [Switching to thread 2 (Thread 29282)]#0 0xb777e430 in __kernel_vsyscall () (gdb) bt #0 0xb777e430 in __kernel_vsyscall () #1 0xb7597a5e in sigsuspend () from /lib/tls/i686/cmov/libc.so.6 #2 0x60015e90 in ?? () Backtrace stopped: previous frame inner to this frame (corrupt stack?) (gdb) thread 3 [Switching to thread 3 (Thread 29281)]#0 0xb76f7f5b in pthread_mutex_lock () from /lib/tls/i686/cmov/libpthread.so.0 (gdb) bt #0 0xb76f7f5b in pthread_mutex_lock () from /lib/tls/i686/cmov/libpthread.so.0 #1 0x6001ffb1 in ?? () Backtrace stopped: previous frame inner to this frame (corrupt stack?) (gdb)
/* confdefs.h. */ #define PACKAGE_NAME "PostgreSQL" #define PACKAGE_TARNAME "postgresql" #define PACKAGE_VERSION "9.0.5" #define PACKAGE_STRING "PostgreSQL 9.0.5" #define PACKAGE_BUGREPORT "pgsql-bugs@xxxxxxxxxxxxxx" #define PG_VERSION "9.0.5" #define PG_MAJORVERSION "9.0" #define USE_INTEGER_DATETIMES 1 #define DEF_PGPORT 5432 #define DEF_PGPORT_STR "5432" #define BLCKSZ 8192 #define RELSEG_SIZE 131072 #define XLOG_BLCKSZ 8192 #define XLOG_SEG_SIZE (16 * 1024 * 1024) #define ENABLE_THREAD_SAFETY 1 #define PG_KRB_SRVNAM "postgres" #define HAVE_LIBM 1 #define HAVE_SPINLOCKS 1 #define STDC_HEADERS 1 #define HAVE_SYS_TYPES_H 1 #define HAVE_SYS_STAT_H 1 #define HAVE_STDLIB_H 1 #define HAVE_STRING_H 1 #define HAVE_MEMORY_H 1 #define HAVE_STRINGS_H 1 #define HAVE_INTTYPES_H 1 #define HAVE_STDINT_H 1 #define HAVE_UNISTD_H 1 #define HAVE_CRYPT_H 1 #define HAVE_GETOPT_H 1 #define HAVE_IFADDRS_H 1 #define HAVE_LANGINFO_H 1 #define HAVE_POLL_H 1 #define HAVE_PWD_H 1 #define HAVE_SYS_IOCTL_H 1 #define HAVE_SYS_IPC_H 1 #define HAVE_SYS_POLL_H 1 #define HAVE_SYS_RESOURCE_H 1 #define HAVE_SYS_SELECT_H 1 #define HAVE_SYS_SEM_H 1 #define HAVE_SYS_SHM_H 1 #define HAVE_SYS_SOCKET_H 1 #define HAVE_SYS_TIME_H 1 #define HAVE_SYS_UN_H 1 #define HAVE_TERMIOS_H 1 #define HAVE_UTIME_H 1 #define HAVE_WCHAR_H 1 #define HAVE_WCTYPE_H 1 #define HAVE_NET_IF_H 1 #define HAVE_NETINET_IN_H 1 #define HAVE_NETINET_TCP_H 1 #define WORDS_BIGENDIAN 1 #define USE_INLINE 1 #define HAVE_STRINGIZE 1 #define HAVE_FUNCNAME__FUNC 1 #define HAVE_STRUCT_TM_TM_ZONE 1 #define HAVE_TM_ZONE 1 #define HAVE_TZNAME 1 #define HAVE_STRUCT_SOCKADDR_UN 1 #define HAVE_UNIX_SOCKETS 1 #define HAVE_STRUCT_SOCKADDR_STORAGE 1 #define HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY 1 #define HAVE_STRUCT_ADDRINFO 1 #define HAVE_INTPTR_T 1 #define HAVE_UINTPTR_T 1 #define HAVE_LONG_LONG_INT 1 #define HAVE_STRUCT_OPTION 1 #define _FILE_OFFSET_BITS 64 #define SIZEOF_OFF_T 8 #define HAVE_INT_TIMEZONE /**/ #define ACCEPT_TYPE_RETURN int #define ACCEPT_TYPE_ARG1 int #define ACCEPT_TYPE_ARG2 struct sockaddr * #define ACCEPT_TYPE_ARG3 size_t #define HAVE_CBRT 1 #define HAVE_DLOPEN 1 #define HAVE_FCVT 1 #define HAVE_FDATASYNC 1 #define HAVE_GETIFADDRS 1 #define HAVE_GETRLIMIT 1 #define HAVE_MEMMOVE 1 #define HAVE_POLL 1 #define HAVE_READLINK 1 #define HAVE_SCANDIR 1 #define HAVE_SETSID 1 #define HAVE_SIGPROCMASK 1 #define HAVE_SYMLINK 1 #define HAVE_SYSCONF 1 #define HAVE_TOWLOWER 1 #define HAVE_UTIME 1 #define HAVE_UTIMES 1 #define HAVE_WAITPID 1 #define HAVE_WCSTOMBS 1 #define HAVE_FSEEKO 1 #define HAVE_FSEEKO 1 #define HAVE_POSIX_FADVISE 1 #define HAVE_DECL_POSIX_FADVISE 1 #define HAVE_DECL_FDATASYNC 1 #define HAVE_DECL_STRLCAT 0 #define HAVE_DECL_STRLCPY 0 #define HAVE_DECL_F_FULLFSYNC 0 #define HAVE_IPV6 1 #define HAVE_SNPRINTF 1 #define HAVE_VSNPRINTF 1 #define HAVE_DECL_SNPRINTF 1 #define HAVE_DECL_VSNPRINTF 1 #define HAVE_ISINF 1 #define HAVE_CRYPT 1 #define HAVE_ERAND48 1 #define HAVE_GETOPT 1 #define HAVE_GETRUSAGE 1 #define HAVE_INET_ATON 1 #define HAVE_RANDOM 1 #define HAVE_RINT 1 #define HAVE_SRANDOM 1 #define HAVE_STRDUP 1 #define HAVE_STRERROR 1 #define HAVE_STRTOL 1 #define HAVE_STRTOUL 1 #define HAVE_UNSETENV 1 #define HAVE_GETADDRINFO 1 #define HAVE_GETOPT_LONG 1 #define HAVE_SIGSETJMP 1 #define HAVE_DECL_SYS_SIGLIST 1 #define HAVE_SYSLOG 1 #define HAVE_INT_OPTERR 1 #define HAVE_STRTOLL 1 #define HAVE_STRTOULL 1 #define HAVE_ATEXIT 1 #define HAVE_STRERROR_R 1 #define HAVE_GETPWUID_R 1 #define HAVE_GETHOSTBYNAME_R 1 #define GETPWUID_R_5ARG /**/ #define HAVE_LONG_LONG_INT_64 1 #define HAVE_LL_CONSTANTS 1 #define INT64_FORMAT "%lld" #define UINT64_FORMAT "%llu" #define SIZEOF_VOID_P 4 #define SIZEOF_SIZE_T 4 #define SIZEOF_LONG 4 #define USE_FLOAT4_BYVAL 1 #define FLOAT4PASSBYVAL true #define FLOAT8PASSBYVAL false #define ALIGNOF_SHORT 2 #define ALIGNOF_INT 4 #define ALIGNOF_LONG 4 #define ALIGNOF_LONG_LONG_INT 8 #define ALIGNOF_DOUBLE 8 #define MAXIMUM_ALIGNOF 8 #define HAVE_SIG_ATOMIC_T 1 #define HAVE_POSIX_SIGNALS /**/ #define USE_SYSV_SEMAPHORES 1 #define USE_SYSV_SHARED_MEMORY 1 #define MEMSET_LOOP_LIMIT 1024 /* end confdefs.h. */ /*------------------------------------------------------------------------- * * test_thread_funcs.c * libc thread test program * * Portions Copyright (c) 1996-2010, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * $PostgreSQL: pgsql/src/test/thread/thread_test.c,v 1.8 2010/01/02 16:58:16 momjian Exp $ * * This program tests to see if your standard libc functions use * pthread_setspecific()/pthread_getspecific() to be thread-safe. * See src/port/thread.c for more details. * * This program first tests to see if each function returns a constant * memory pointer within the same thread, then, assuming it does, tests * to see if the pointers are different for different threads. If they * are, the function is thread-safe. * *------------------------------------------------------------------------- */ #if !defined(IN_CONFIGURE) && !defined(WIN32) #include "postgres.h" #else /* From src/include/c.h" */ #ifndef bool typedef char bool; #endif #ifndef true #define true ((bool) 1) #endif #ifndef false #define false ((bool) 0) #endif #endif #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <netdb.h> #include <sys/types.h> #include <pwd.h> #include <string.h> #include <fcntl.h> #include <errno.h> /* CYGWIN requires this for MAXHOSTNAMELEN */ #ifdef __CYGWIN__ #include <sys/param.h> #endif /****************************************************************** * Windows Hacks *****************************************************************/ #ifdef WIN32 #define MAXHOSTNAMELEN 63 #include <winsock2.h> int mkstemp(char *template); int mkstemp(char *template) { FILE *foo; mktemp(template); foo = fopen(template, "rw"); if (!foo) return -1; else return (int) foo; } #endif /****************************************************************** * End Windows Hacks *****************************************************************/ /* Test for POSIX.1c 2-arg sigwait() and fail on single-arg version */ #include <signal.h> int sigwait(const sigset_t *set, int *sig); #if !defined(ENABLE_THREAD_SAFETY) && !defined(IN_CONFIGURE) && !(defined(WIN32)) int main(int argc, char *argv[]) { fprintf(stderr, "This PostgreSQL build does not support threads.\n"); fprintf(stderr, "Perhaps rerun 'configure' using '--enable-thread-safety'.\n"); return 1; } #else /* This must be down here because this is the code that uses threads. */ #include <pthread.h> static void func_call_1(void); static void func_call_2(void); #ifdef WIN32 #define TEMP_FILENAME_1 "thread_test.1.XXXXXX" #define TEMP_FILENAME_2 "thread_test.2.XXXXXX" #else #define TEMP_FILENAME_1 "/tmp/thread_test.1.XXXXXX" #define TEMP_FILENAME_2 "/tmp/thread_test.2.XXXXXX" #endif static char *temp_filename_1; static char *temp_filename_2; static pthread_mutex_t init_mutex = PTHREAD_MUTEX_INITIALIZER; static volatile int thread1_done = 0; static volatile int thread2_done = 0; static volatile int errno1_set = 0; static volatile int errno2_set = 0; #ifndef HAVE_STRERROR_R static char *strerror_p1; static char *strerror_p2; static bool strerror_threadsafe = false; #endif #ifndef WIN32 #ifndef HAVE_GETPWUID_R static struct passwd *passwd_p1; static struct passwd *passwd_p2; static bool getpwuid_threadsafe = false; #endif #endif #if !defined(HAVE_GETADDRINFO) && !defined(HAVE_GETHOSTBYNAME_R) static struct hostent *hostent_p1; static struct hostent *hostent_p2; static char myhostname[MAXHOSTNAMELEN]; static bool gethostbyname_threadsafe = false; #endif static bool platform_is_threadsafe = true; int main(int argc, char *argv[]) { pthread_t thread1, thread2; int fd; #ifdef WIN32 WSADATA wsaData; int err; #endif if (argc > 1) { fprintf(stderr, "Usage: %s\n", argv[0]); return 1; } #ifdef IN_CONFIGURE /* Send stdout to 'config.log' */ close(1); dup(5); #endif #ifdef WIN32 err = WSAStartup(MAKEWORD(1, 1), &wsaData); if (err != 0) { fprintf(stderr, "Cannot start the network subsystem - %d**\nexiting\n", err); exit(1); } #endif /* Make temp filenames, might not have strdup() */ temp_filename_1 = malloc(strlen(TEMP_FILENAME_1) + 1); strcpy(temp_filename_1, TEMP_FILENAME_1); fd = mkstemp(temp_filename_1); close(fd); temp_filename_2 = malloc(strlen(TEMP_FILENAME_2) + 1); strcpy(temp_filename_2, TEMP_FILENAME_2); fd = mkstemp(temp_filename_2); close(fd); #if !defined(HAVE_GETADDRINFO) && !defined(HAVE_GETHOSTBYNAME_R) if (gethostname(myhostname, MAXHOSTNAMELEN) != 0) { fprintf(stderr, "Cannot get local hostname **\nexiting\n"); exit(1); } #endif /* Hold lock until we are ready for the child threads to exit. */ pthread_mutex_lock(&init_mutex); pthread_create(&thread1, NULL, (void *(*) (void *)) func_call_1, NULL); pthread_create(&thread2, NULL, (void *(*) (void *)) func_call_2, NULL); while (thread1_done == 0 || thread2_done == 0) sched_yield(); /* if this is a portability problem, remove it */ #ifdef WIN32 printf("Your GetLastError() is thread-safe.\n"); #else printf("Your errno is thread-safe.\n"); #endif #ifndef HAVE_STRERROR_R if (strerror_p1 != strerror_p2) strerror_threadsafe = true; #endif #ifndef WIN32 #ifndef HAVE_GETPWUID_R if (passwd_p1 != passwd_p2) getpwuid_threadsafe = true; #endif #endif #if !defined(HAVE_GETADDRINFO) && !defined(HAVE_GETHOSTBYNAME_R) if (hostent_p1 != hostent_p2) gethostbyname_threadsafe = true; #endif pthread_mutex_unlock(&init_mutex); /* let children exit */ pthread_join(thread1, NULL); /* clean up children */ pthread_join(thread2, NULL); #ifdef HAVE_STRERROR_R printf("Your system has sterror_r(); it does not need strerror().\n"); #else printf("Your system uses strerror() which is "); if (strerror_threadsafe) printf("thread-safe.\n"); else { printf("not thread-safe. **\n"); platform_is_threadsafe = false; } #endif #ifndef WIN32 #ifdef HAVE_GETPWUID_R printf("Your system has getpwuid_r(); it does not need getpwuid().\n"); #else printf("Your system uses getpwuid() which is "); if (getpwuid_threadsafe) printf("thread-safe.\n"); else { printf("not thread-safe. **\n"); platform_is_threadsafe = false; } #endif #else printf("getpwuid_r()/getpwuid() are not applicable to Win32 platforms.\n"); #endif #ifdef HAVE_GETADDRINFO printf("Your system has getaddrinfo(); it does not need gethostbyname()\n" " or gethostbyname_r().\n"); #else #ifdef HAVE_GETHOSTBYNAME_R printf("Your system has gethostbyname_r(); it does not need gethostbyname().\n"); #else printf("Your system uses gethostbyname which is "); if (gethostbyname_threadsafe) printf("thread-safe.\n"); else { printf("not thread-safe. **\n"); platform_is_threadsafe = false; } #endif #endif if (platform_is_threadsafe) { printf("\nYour platform is thread-safe.\n"); return 0; } else { printf("\n** YOUR PLATFORM IS NOT THREAD-SAFE. **\n"); return 1; } } static void func_call_1(void) { #if !defined(HAVE_GETPWUID_R) || \ (!defined(HAVE_GETADDRINFO) && \ !defined(HAVE_GETHOSTBYNAME_R)) void *p; #endif #ifdef WIN32 HANDLE h1; HANDLE h2; #endif unlink(temp_filename_1); /* create, then try to fail on exclusive create open */ #ifdef WIN32 h1 = CreateFile(temp_filename_1, GENERIC_WRITE, 0, NULL, OPEN_ALWAYS, 0, NULL); h2 = CreateFile(temp_filename_1, GENERIC_WRITE, 0, NULL, CREATE_NEW, 0, NULL); if (h1 == INVALID_HANDLE_VALUE || GetLastError() != ERROR_FILE_EXISTS) #else if (open(temp_filename_1, O_RDWR | O_CREAT, 0600) < 0 || open(temp_filename_1, O_RDWR | O_CREAT | O_EXCL, 0600) >= 0) #endif { #ifdef WIN32 fprintf(stderr, "Could not create file in current directory or\n"); fprintf(stderr, "Could not generate failure for create file in current directory **\nexiting\n"); #else fprintf(stderr, "Could not create file in /tmp or\n"); fprintf(stderr, "Could not generate failure for create file in /tmp **\nexiting\n"); #endif exit(1); } /* * Wait for other thread to set errno. We can't use thread-specific * locking here because it might affect errno. */ errno1_set = 1; while (errno2_set == 0) sched_yield(); #ifdef WIN32 if (GetLastError() != ERROR_FILE_EXISTS) #else if (errno != EEXIST) #endif { #ifdef WIN32 fprintf(stderr, "GetLastError() not thread-safe **\nexiting\n"); #else fprintf(stderr, "errno not thread-safe **\nexiting\n"); #endif unlink(temp_filename_1); exit(1); } unlink(temp_filename_1); #ifndef HAVE_STRERROR_R strerror_p1 = strerror(EACCES); /* * If strerror() uses sys_errlist, the pointer might change for different * errno values, so we don't check to see if it varies within the thread. */ #endif #ifndef WIN32 #ifndef HAVE_GETPWUID_R passwd_p1 = getpwuid(0); p = getpwuid(1); if (passwd_p1 != p) { printf("Your getpwuid() changes the static memory area between calls\n"); passwd_p1 = NULL; /* force thread-safe failure report */ } #endif #endif #if !defined(HAVE_GETADDRINFO) && !defined(HAVE_GETHOSTBYNAME_R) /* threads do this in opposite order */ hostent_p1 = gethostbyname(myhostname); p = gethostbyname("localhost"); if (hostent_p1 != p) { printf("Your gethostbyname() changes the static memory area between calls\n"); hostent_p1 = NULL; /* force thread-safe failure report */ } #endif thread1_done = 1; pthread_mutex_lock(&init_mutex); /* wait for parent to test */ pthread_mutex_unlock(&init_mutex); } static void func_call_2(void) { #if !defined(HAVE_GETPWUID_R) || \ (!defined(HAVE_GETADDRINFO) && \ !defined(HAVE_GETHOSTBYNAME_R)) void *p; #endif unlink(temp_filename_2); /* open non-existant file */ #ifdef WIN32 CreateFile(temp_filename_2, GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0, NULL); if (GetLastError() != ERROR_FILE_NOT_FOUND) #else if (open(temp_filename_2, O_RDONLY, 0600) >= 0) #endif { fprintf(stderr, "Read-only open succeeded without create **\nexiting\n"); exit(1); } /* * Wait for other thread to set errno. We can't use thread-specific * locking here because it might affect errno. */ errno2_set = 1; while (errno1_set == 0) sched_yield(); #ifdef WIN32 if (GetLastError() != ENOENT) #else if (errno != ENOENT) #endif { #ifdef WIN32 fprintf(stderr, "GetLastError() not thread-safe **\nexiting\n"); #else fprintf(stderr, "errno not thread-safe **\nexiting\n"); #endif unlink(temp_filename_2); exit(1); } unlink(temp_filename_2); #ifndef HAVE_STRERROR_R strerror_p2 = strerror(EINVAL); /* * If strerror() uses sys_errlist, the pointer might change for different * errno values, so we don't check to see if it varies within the thread. */ #endif #ifndef WIN32 #ifndef HAVE_GETPWUID_R passwd_p2 = getpwuid(2); p = getpwuid(3); if (passwd_p2 != p) { printf("Your getpwuid() changes the static memory area between calls\n"); passwd_p2 = NULL; /* force thread-safe failure report */ } #endif #endif #if !defined(HAVE_GETADDRINFO) && !defined(HAVE_GETHOSTBYNAME_R) /* threads do this in opposite order */ hostent_p2 = gethostbyname("localhost"); p = gethostbyname(myhostname); if (hostent_p2 != p) { printf("Your gethostbyname() changes the static memory area between calls\n"); hostent_p2 = NULL; /* force thread-safe failure report */ } #endif thread2_done = 1; pthread_mutex_lock(&init_mutex); /* wait for parent to test */ pthread_mutex_unlock(&init_mutex); } #endif /* !ENABLE_THREAD_SAFETY && !IN_CONFIGURE */
29280 brk(NULL) = 0x10012000 29280 uname(0x4007ecc0) = 0 29280 access("/etc/ld.so.preload",0x4000000) = -1 errno=2 (No such file or directory) 29280 open("/usr/lib/libsb2/tls/libcrypt.so.1",O_RDONLY) = -1 errno=2 (No such file or directory) 29280 stat64("/usr/lib/libsb2/tls",0x4007e780) = -1 errno=2 (No such file or directory) 29280 open("/usr/lib/libsb2/libcrypt.so.1",O_RDONLY) = -1 errno=2 (No such file or directory) 29280 stat64("/usr/lib/libsb2",0x4007e780) = -1 errno=2 (No such file or directory) 29280 open("/usr/lib64/libsb2/tls/libcrypt.so.1",O_RDONLY) = -1 errno=2 (No such file or directory) 29280 stat64("/usr/lib64/libsb2/tls",0x4007e780) = -1 errno=2 (No such file or directory) 29280 open("/usr/lib64/libsb2/libcrypt.so.1",O_RDONLY) = -1 errno=2 (No such file or directory) 29280 stat64("/usr/lib64/libsb2",0x4007e780) = -1 errno=2 (No such file or directory) 29280 open("/usr/lib32/libsb2/tls/libcrypt.so.1",O_RDONLY) = -1 errno=2 (No such file or directory) 29280 stat64("/usr/lib32/libsb2/tls",0x4007e780) = -1 errno=2 (No such file or directory) 29280 open("/usr/lib32/libsb2/libcrypt.so.1",O_RDONLY) = -1 errno=2 (No such file or directory) 29280 stat64("/usr/lib32/libsb2",0x4007e780) = -1 errno=2 (No such file or directory) 29280 open("/emul/lib64/libsb2/tls/libcrypt.so.1",O_RDONLY) = -1 errno=2 (No such file or directory) 29280 stat64("/emul/lib64/libsb2/tls",0x4007e780) = -1 errno=2 (No such file or directory) 29280 open("/emul/lib64/libsb2/libcrypt.so.1",O_RDONLY) = -1 errno=2 (No such file or directory) 29280 stat64("/emul/lib64/libsb2",0x4007e780) = -1 errno=2 (No such file or directory) 29280 open("/emul/lib32/libsb2/tls/libcrypt.so.1",O_RDONLY) = -1 errno=2 (No such file or directory) 29280 stat64("/emul/lib32/libsb2/tls",0x4007e780) = -1 errno=2 (No such file or directory) 29280 open("/emul/lib32/libsb2/libcrypt.so.1",O_RDONLY) = -1 errno=2 (No such file or directory) 29280 stat64("/emul/lib32/libsb2",0x4007e780) = -1 errno=2 (No such file or directory) 29280 open("/usr/lib/libfakeroot/tls/libcrypt.so.1",O_RDONLY) = -1 errno=2 (No such file or directory) 29280 stat64("/usr/lib/libfakeroot/tls",0x4007e780) = -1 errno=2 (No such file or directory) 29280 open("/usr/lib/libfakeroot/libcrypt.so.1",O_RDONLY) = -1 errno=2 (No such file or directory) 29280 stat64("/usr/lib/libfakeroot",0x4007e780) = -1 errno=2 (No such file or directory) 29280 open("/usr/lib64/libfakeroot/tls/libcrypt.so.1",O_RDONLY) = -1 errno=2 (No such file or directory) 29280 stat64("/usr/lib64/libfakeroot/tls",0x4007e780) = -1 errno=2 (No such file or directory) 29280 open("/usr/lib64/libfakeroot/libcrypt.so.1",O_RDONLY) = -1 errno=2 (No such file or directory) 29280 stat64("/usr/lib64/libfakeroot",0x4007e780) = -1 errno=2 (No such file or directory) 29280 open("/usr/lib32/libfakeroot/tls/libcrypt.so.1",O_RDONLY) = -1 errno=2 (No such file or directory) 29280 stat64("/usr/lib32/libfakeroot/tls",0x4007e780) = -1 errno=2 (No such file or directory) 29280 open("/usr/lib32/libfakeroot/libcrypt.so.1",O_RDONLY) = -1 errno=2 (No such file or directory) 29280 stat64("/usr/lib32/libfakeroot",0x4007e780) = -1 errno=2 (No such file or directory) 29280 open("/etc/ld.so.cache",O_RDONLY) = 3 29280 fstat64(50331648,0x4007e790) = 0 29280 mmap(NULL,-734265088,0x1000000,0x2000000,50331648,0) = 0x42081000 29280 close(3) = 0 29280 open("/lib/tls/libcrypt.so.1",O_RDONLY) = -1 errno=2 (No such file or directory) 29280 stat64("/lib/tls",0x4007e780) = -1 errno=2 (No such file or directory) 29280 open("/lib/libcrypt.so.1",O_RDONLY) = 3 29280 read(3,0x4007e888,512) = 512 29280 fstat64(50331648,0x4007e778) = 0 29280 mmap(0x0ffb0000,-1460534528,0x5000000,0x2080000,50331648,0) = 0x0ffb0000 29280 mprotect(0x0ffb8000,15728640,PROT_NONE) = 0 29280 mmap(0x0ffc7000,2097152,0x7000000,0x12080000,50331648,0x700000) = 0x0ffc7000 29280 mmap(0x0ffc9000,-1469971968,0x7000000,0x32000000,-1,0) = 0x0ffc9000 29280 close(3) = 0 29280 open("/lib/libdl.so.2",O_RDONLY) = 3 29280 read(3,0x4007e868,512) = 512 29280 fstat64(50331648,0x4007e758) = 0 29280 mmap(0x0ff8c000,-332332800,0x5000000,0x2080000,50331648,0) = 0x0ff8c000 29280 mprotect(0x0ff8e000,256,PROT_NONE) = 0 29280 mmap(0x0ff9e000,2097152,0x7000000,0x12080000,50331648,0x200000) = 0x0ff9e000 29280 close(3) = 0 29280 open("/lib/libm.so.6",O_RDONLY) = 3 29280 read(3,0x4007e848,512) = 512 29280 fstat64(50331648,0x4007e738) = 0 29280 mmap(NULL,1048576,0x3000000,0x22000000,-1,0) = 0x42095000 29280 mmap(0x0fec4000,1550912256,0x5000000,0x2080000,50331648,0) = 0x0fec4000 29280 mprotect(0x0ff68000,15728640,PROT_NONE) = 0 29280 mmap(0x0ff77000,4194304,0x7000000,0x12080000,50331648,0x300a00) = 0x0ff77000 29280 mmap(0x0ff7b000,1543569408,0x7000000,0x32000000,-1,0) = 0x0ff7b000 29280 close(3) = 0 29280 open("/lib/libpthread.so.0",O_RDONLY) = 3 29280 read(3,0x4007e828,512) = 512 29280 fstat64(50331648,0x4007e718) = 0 29280 mmap(0x0fe8a000,-57277952,0x5000000,0x2080000,50331648,0) = 0x0fe8a000 29280 mprotect(0x0fea1000,15728640,PROT_NONE) = 0 29280 mmap(0x0feb0000,2097152,0x7000000,0x12080000,50331648,0x600100) = 0x0feb0000 29280 mmap(0x0feb2000,-65667072,0x7000000,0x32000000,-1,0) = 0x0feb2000 29280 close(3) = 0 29280 open("/lib/libc.so.6",O_RDONLY) = 3 29280 read(3,0x4007e808,512) = 512 29280 fstat64(50331648,0x4007e6f8) = 0 29280 mmap(0x0fd03000,-999745792,0x5000000,0x2080000,50331648,0) = 0x0fd03000 29280 mprotect(0x0fe63000,15728640,PROT_NONE) = 0 29280 mmap(0x0fe72000,5242880,0x7000000,0x12080000,50331648,0xf01500) = 0x0fe72000 29280 mmap(0x0fe77000,-1003945984,0x7000000,0x32000000,-1,0) = 0x0fe77000 29280 close(3) = 0 29280 mmap(NULL,1048576,0x3000000,0x22000000,-1,0) = 0x42096000 29280 mprotect(0x0fe72000,2097152,0x1000000) = 0 29280 mprotect(0x0feb0000,1048576,0x1000000) = 0 29280 mprotect(0x0ff77000,1048576,0x1000000) = 0 29280 mprotect(0x0ff9e000,1048576,0x1000000) = 0 29280 mprotect(0x0ffc7000,1048576,0x1000000) = 0 29280 mprotect(0x400b1000,1048576,0x1000000) = 0 29280 munmap(0x42081000,-734265088) = 0 29280 set_tid_address(1107911032,1074262716,1074262724,1074262724,1275068308,1074475212) = 29280 29280 set_robust_list(1107911040,12,1074262724,1074262724,1275068308,1074475212) = -1 errno=38 (Function not implemented) 29280 futex(0x4007f184,-2130706432,16777216,0x4007f2c4,0x4bffff94,-1795162293) = 0 29280 futex(0x4007f184,-1996423168,16777216,NULL,NULL,0) = -1 errno=38 (Function not implemented) 29280 rt_sigaction(32,1074262204,0,8,96,-64) = 0 29280 rt_sigaction(33,1074262204,0,8,96,-64) = -1 errno=22 (Invalid argument) 29280 rt_sigprocmask(1,1074262420,0,8,96,-64) = 0 29280 ugetrlimit(3,1074262408,0,8,96,-64) = 0 29280 close(1) = 0 29280 dup(5,1074262716,1074262724,1074263000,0,0) = 1 29280 brk(NULL) = 0x10012000 29280 brk(0x10033000) = 0x10033000 29280 gettimeofday(1074261864,0,6,-16843009,2139062143,8421504) = 0 29280 open("/tmp/thread_test.1.IKaJmG",O_RDONLY|O_CREAT|O_EXCL|O_LARGEFILE|0x2) = 3 29280 close(3) = 0 29280 gettimeofday(1074261864,0,6,-16843009,2139062143,8421504) = 0 29280 open("/tmp/thread_test.2.sb9svc",O_RDONLY|O_CREAT|O_EXCL|O_LARGEFILE|0x2) = 3 29280 close(3) = 0 29280 mmap(NULL,32768,0x7000000,0x22000000,-1,0) = 0x42097000 29280 mprotect(0x42097000,1048576,PROT_NONE) = 0 29280 clone(8195840,1116299248,1116300536,1116330288,1116300536,1116330288) = 29281 29280 mmap(NULL,32768,0x7000000,0x22000000,-1,0) = 0x42897000 29280 mprotect(0x42897000,1048576,PROT_NONE) = 0 29280 clone(8195840,1124687856,1124689144,1124718896,1124689144,1124718896)29280 unlink("/tmp/thread_test.1.IKaJmG") = 29282 29280 unlink("/tmp/thread_test.2.sb9svc")29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 = 0 = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0 29280 /build/buildd/qemu-kvm-0.12.3+noroms/tcg/tcg.c:133: tcg fatal error sched_yield(0,1124687856,1124689144,1124718896,1124689144,1124718896) = 0