Hi Adam,

I don't have any guesses as to what's going wrong, but you might want to try running your application through valgrind to see if it gives you any further information. That segfault that you listed below might not be the original source of the problem.

-Phil

On 10/04/2011 07:25 AM, Adam Yee wrote:
Dear OrangeFS developers,

I'm using the native API to write an interface to the file system. I've been experiencing problems with PVFS_sys_lookup. I've pasted a couple of call stacks below. As I'm "stress-testing" functionality, for example the equivalent of pvfs2-rm or pvfs2-ls, I run into these runtime memory errors. What I mean by stress-testing is running the program repeatedly. Errors occur after a few consecutive tests. Really the only difference in my code is I call PVFS_util_init_defaults once at the beginning and PVFS_sys_finalize once at the end, while making multiple calls to the file system in between (as opposed to each admintool utility calling both functions upon each execution). I tested initializing and finalizing each time I access the file system, but that produced errors immediately. Last piece of info you need to know is that I'm calling my API functions via TCP sockets. But since I'm just passing ascii characters over the network and parsing them for commands (which function to run, ie rm, ls, mkdir), I don't see how that could be a source of error.

Anyone have an idea for a solution? Ideas where the problem is coming from?

Thanks,
Adam

orangefs API Server [C/C++ Application]
/home/adam/[...] [23913] [cores: 1]
Thread [1] 23913 [core: 1] (Suspended : Signal : SIGSEGV:Segmentation fault)
0xb7ec57ae
0xb7ec6ced
free() at 0xb7ec9e5d
BMI_tcp_memfree() at bmi-tcp.c:682 0x80b0a71
PINT_serv_free_msgpair_resources() at msgpairarray.sm:815 <http://msgpairarray.sm:815> 0x808d998 msgpairarray_completion_fn() at msgpairarray.sm:606 <http://msgpairarray.sm:606> 0x808dcc2
PINT_state_machine_invoke() at state-machine-fns.c:140 0x808fc19
PINT_state_machine_next() at state-machine-fns.c:317 0x809018d
PINT_state_machine_continue() at state-machine-fns.c:335 0x8090331
PINT_client_state_machine_test() at client-state-machine.c:735 0x8057a52
PINT_client_wait_internal() at client-state-machine.c:871 0x8057c56
PVFS_sys_wait() at client-state-machine.c:1,036 0x8057d3e
PVFS_sys_ref_lookup() at sys-lookup.sm:541 <http://sys-lookup.sm:541> 0x8062315 PVFS_sys_lookup() at sys-lookup.sm:597 <http://sys-lookup.sm:597> 0x8062492
api_delete() at api-delete.h:101 0x805361b
main() at api-server.c:600 0x8053fde
gdb


*** glibc detected *** /home/adam/[...] : malloc(): memory corruption: 0x080e8210 ***

orangefs API Server [C/C++ Application]
/home/adam/[...] [24167] [cores: 0]
Thread [1] 24167 [core: 0] (Suspended : Signal : SIGABRT:Aborted)
__kernel_vsyscall() at 0xb7fe1424
raise() at 0xb7e83941
abort() at 0xb7e86e42
0xb7ebb305
0xb7ec5501
0xb7ec82fc
malloc() at 0xb7ec9f33
PINT_smcb_alloc() at state-machine-fns.c:523 0x808f897
PVFS_isys_ref_lookup() at sys-lookup.sm:472 <http://sys-lookup.sm:472> 0x8061fde PVFS_sys_ref_lookup() at sys-lookup.sm:528 <http://sys-lookup.sm:528> 0x80622e3 PVFS_sys_lookup() at sys-lookup.sm:597 <http://sys-lookup.sm:597> 0x8062492
api_lookup() at api-lookup.h:29 0x8052d3e
main() at api-server.c:506 0x8054337
gdb




_______________________________________________
Pvfs2-developers mailing list
Pvfs2-developers@beowulf-underground.org
http://www.beowulf-underground.org/mailman/listinfo/pvfs2-developers

_______________________________________________
Pvfs2-developers mailing list
Pvfs2-developers@beowulf-underground.org
http://www.beowulf-underground.org/mailman/listinfo/pvfs2-developers

Reply via email to