Date: Wed, 04 Jun 2003 18:57:39 -0500 From: Jeremy Messenger <mezz7@cox.net> To: freebsd-threads@freebsd.org Cc: gnome@freebsd.org Subject: libthr or libgthread (devel/glib20) bug? Message-ID: <oprp9oudzq8ckrg5@smtp.central.cox.net>
next in thread | raw e-mail | index | archive | help
Any apps that are depending on libgthread-2.0.so.200 always will crash if it's linking to libthr (using libmap.conf). My previous email about gst- register, it will not crash anymore if I set libgthread links to libc_r instead libthr. All ports that I have installed have been compiled with the debug (-g). Anyway, here's gdb info of ggv: =============================== % gdb ggv (gdb) r Starting program: /usr/X11R6/bin/ggv GThread-ERROR **: file gthread-posix.c: line 135 (): error 'Invalid argument' during 'pthread_getschedparam (pthread_self(), &policy, &sched)' aborting... Program received signal SIGABRT, Aborted. 0x28ab3313 in kill () at {standard input}:15 15 {standard input}: No such file or directory. in {standard input} Current language: auto; currently asm (gdb) bt #0 0x28ab3313 in kill () at {standard input}:15 #1 0x28b1eecc in abort () at /usr/src/lib/libc/stdlib/abort.c:72 #2 0x288824fb in g_logv (log_domain=0x288571c1 "GThread", log_level=G_LOG_LEVEL_ERROR, format=0x0, args1=0x0) at gmessages.c:508 #3 0x288825c4 in g_log (log_domain=0x0, log_level=0, format=0x0) at gmessages.c:527 #4 0x2885542e in g_thread_impl_init () at gthread-posix.c:135 #5 0x28856692 in g_thread_init (init=0x0) at gthread-impl.c:330 #6 0x282b382b in bonobo_activation_pre_args_parse (program=0x0, mod_info=0x0) at gnome-init.c:117 #7 0x282af903 in gnome_program_preinit (program=0x8057af0, app_id=0x8057be4 "", app_version=0x0, argc=1, argv=0xbfbffbc4) at gnome-program.c:1322 #8 0x282b0698 in gnome_program_initv (type=134595648, app_id=0x0, app_version=0x0, module_info=0x8057af0, argc=1, argv=0xbfbffbc4, first_property_name=0x0, args=0x0) at gnome-program.c:1871 #9 0x282b031a in gnome_program_init ( app_id=0x2f6 <Error reading address 0x2f6: Bad address>, app_version=0x2f6 <Error reading address 0x2f6: Bad address>, module_info=0x2f6, argc=758, argv=0x2f6, first_property_name=0x2f6 <Error reading address 0x2f6: Bad address>) at gnome-program.c:1679 #10 0x0804f9e7 in main (argc=1, argv=0xbfbffbc4) at main.c:202 ---Type <return> to continue, or q <return> to quit--- #11 0x0804c979 in _start () =============================== Here's gthread-posix.c source codes look like.. I don't know if it helps, but at least I am trying.. 100 to 146 line: =============================== #if defined (POSIX_MIN_PRIORITY) && defined (POSIX_MAX_PRIORITY) # define HAVE_PRIORITIES 1 static gint priority_normal_value; # ifdef __FreeBSD__ /* FreeBSD threads use different priority values from the POSIX_ * defines so we just set them here. The corresponding macros * PTHREAD_MIN_PRIORITY and PTHREAD_MAX_PRIORITY are implied to be * exported by the docs, but they aren't. */ # define PRIORITY_LOW_VALUE 0 # define PRIORITY_URGENT_VALUE 31 # else /* !__FreeBSD__ */ # define PRIORITY_LOW_VALUE POSIX_MIN_PRIORITY # define PRIORITY_URGENT_VALUE POSIX_MAX_PRIORITY # endif /* !__FreeBSD__ */ # define PRIORITY_NORMAL_VALUE priority_normal_value #endif /* POSIX_MIN_PRIORITY && POSIX_MAX_PRIORITY */ static gulong g_thread_min_stack_size = 0; #define G_MUTEX_SIZE (sizeof (pthread_mutex_t)) #if defined(_SC_THREAD_STACK_MIN) || defined (HAVE_PRIORITIES) #define HAVE_G_THREAD_IMPL_INIT static void g_thread_impl_init() { #ifdef _SC_THREAD_STACK_MIN g_thread_min_stack_size = MAX (sysconf (_SC_THREAD_STACK_MIN), 0); #endif /* _SC_THREAD_STACK_MIN */ #ifdef HAVE_PRIORITIES # ifdef G_THREADS_IMPL_POSIX { struct sched_param sched; int policy; posix_check_cmd (pthread_getschedparam (pthread_self(), &policy, &sched)); <-- 135 line priority_normal_value = sched.sched_priority; } # else /* G_THREADS_IMPL_DCE */ posix_check_cmd (priority_normal_value = pthread_getprio (*(pthread_t*)thread, g_thread_priority_map [priority])); # endif #endif /* HAVE_PRIORITIES */ } #endif /* _SC_THREAD_STACK_MIN || HAVE_PRIORITIES */ =============================== CVSup'ed around 30 - 45 minutes ago and buildworld/recompile kernel.. =============================== # uname -a FreeBSD personal.mezzweb.com 5.1-CURRENT FreeBSD 5.1-CURRENT #0: Wed Jun 4 18:30:22 CDT 2003 mezz@personal.mezzweb.com:/usr/obj/usr/src/sys/BSDRULZ i386 =============================== Cheers, Mezz -- bsdforums.org 's moderator, mezz.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?oprp9oudzq8ckrg5>