Prev: device.h drivers/base/core.c Convert dev_<level> macros to functions
Next: Upstream first policy
From: dev nath on 4 Mar 2010 20:30 Hi *, I am facing a seg fault with the backtrace as below. Not sure if this is a kernel problem or glibc problem or something in the application. This problem is similar to the one listed in the below URL http://lkml.indiana.edu/hypermail/linux/kernel/9908.0/0486.html Explanation of the scenario: ---------------------------- A multiple threaded process tries to fork another process and the application crashes at fork () api. glibc-2.3.3 is used. I have ensured that the application is not doing anything between fork() and exec() api. In the pthread_mutex_init call the mutex variable seems NULL and not sure if this is something related to streams. Please help me with the problem. Loaded symbols for /opt/montavista/pro/devkit/ppc/7xx/target/lib/libnss_files.so.2 #0 *__GI___pthread_mutex_init (mutex=0x0, mutex_attr=0x257ffe78) at spinlock.h:102 102 spinlock.h: No such file or directory. in spinlock.h (gdb) bt #0 *__GI___pthread_mutex_init (mutex=0x0, mutex_attr=0x257ffe78) at spinlock.h:102 #1 0x0f9af820 in __fresetlockfiles () at lockfile.c:77 #2 0x0f9ad59c in __pthread_fork (b=0xfb4eef8) at ptfork.c:51 #3 0x0faaaa20 in __libc_fork () at ../linuxthreads/sysdeps/unix/sysv/linux/fork.c:39 #4 0x100e8f80 in pn_exec_XXXX () at XXXX_pim_msgq_YYY_thread.c:714 #5 0x100131bc in PN_PI_ThreadStarter (theArg=0x0) at pn_pi.c:377 #6 0x0f9abd48 in pthread_start_thread (arg=0x0) at manager.c:310 #7 0x0fadc228 in ?? () at ../sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S:94 from /opt/montavista/pro/devkit/ppc/777/target/lib/libc.so.6 warning: Previous frame inner to this frame (corrupt stack?) (gdb) frame 0 #0 *__GI___pthread_mutex_init (mutex=0x0, mutex_attr=0x257ffe78) at spinlock.h:102 102 in spinlock.h (gdb) frame 1 #1 0x0f9af820 in __fresetlockfiles () at lockfile.c:77 77 lockfile.c: No such file or directory. in lockfile.c (gdb) list 72 in lockfile.c (gdb) p *attr Structure has no component named operator*. (gdb) p attr $1 = {__mutexkind = 1} (gdb) p i $2 = 0x224ee690 (gdb) p *i $3 = {_flags = -72503612, _IO_read_ptr = 0x238f1000 "", _IO_read_end = 0x238f1000 "", _IO_read_base = 0x238f1000 "", _IO_write_base = 0x238f1000 "", _IO_write_ptr = 0x238f1000 "", _IO_write_end = 0x238f1000 "", _IO_buf_base = 0x238f1000 "", _IO_buf_end = 0x238f2000 <Address 0x238f2000 out of bounds>, _IO_save_base = 0x0, _IO_backup_base = 0x0, _IO_save_end = 0x0, _markers = 0x0, _chain = 0x10270708, _fileno = 48, _flags2 = 0, _old_offset = 0, _cur_column = 0, _vtable_offset = 0 '\0', _shortbuf = "", _lock = 0x0, _offset = -1, _codecvt = 0x0, _wide_data = 0x224ee730, _mode = -1, _unused2 = '\0' <repeats 40 times>, "\"N�\000\000\000\001\020\000\000"} -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|
Pages: 1 Prev: device.h drivers/base/core.c Convert dev_<level> macros to functions Next: Upstream first policy |