https://bugzilla.novell.com/show_bug.cgi?id=467184
User mszeredi@novell.com added comment
https://bugzilla.novell.com/show_bug.cgi?id=467184#c5
--- Comment #5 from Miklos Szeredi 2009-01-22 06:20:02 MST ---
Found the cause: talloc_stack.c in libsmbclient is not thread safe. This is
the valgrind trace I get:
==26767== Invalid read of size 4
==26767== at 0x5F77B98: talloc_chunk_from_ptr (talloc.c:158)
==26767== by 0x5F78809: _talloc_free (talloc.c:487)
==26767== by 0x5F78A45: talloc_free (talloc.c:925)
==26767== by 0x529804C: SMBC_getatr (libsmb_file.c:558)
==26767== by 0x529C103: SMBC_stat_ctx (libsmb_stat.c:176)
==26767== by 0x40204D: fusesmb_getattr (fusesmb.c:325)
==26767== by 0x4E33772: lookup_path (fuse.c:1216)
==26767== by 0x4E369CF: fuse_lib_lookup (fuse.c:1380)
==26767== by 0x4E3A7EE: fuse_do_work (fuse_loop_mt.c:100)
==26767== by 0x505206F: start_thread (in /lib64/libpthread-2.8.90.so)
==26767== by 0x58E2D3C: clone (in /lib64/libc-2.8.90.so)
==26767== Address 0xb611f88 is 64 bytes inside a block of size 80 free'd
==26767== at 0x4C243AF: free (in
/usr/lib64/valgrind/amd64-linux/vgpreload_memcheck.so)
==26767== by 0x5F789EA: _talloc_free (talloc.c:579)
==26767== by 0x5F78A45: talloc_free (talloc.c:925)
==26767== by 0x52C1BC7: talloc_pop (talloc_stack.c:53)
==26767== by 0x5F7887A: _talloc_free (talloc.c:517)
==26767== by 0x5F78A45: talloc_free (talloc.c:925)
==26767== by 0x529857C: SMBC_close_ctx (libsmb_file.c:490)
==26767== by 0x402E12: fusesmb_release (fusesmb.c:697)
==26767== by 0x4E33A12: fuse_do_release (fuse.c:1777)
==26767== by 0x4E35D4F: fuse_lib_release (fuse.c:2630)
==26767== by 0x4E3CD11: do_release (fuse_lowlevel.c:678)
==26767== by 0x4E3A7EE: fuse_do_work (fuse_loop_mt.c:100)
The reason it worked in 10.3 is that it had libsmbclient-3.0.X which didn't yet
have talloc_stack. Probably neither version is perfectly thread safe as they
don't seem to have that as a goal, but libsmbclient-3.2.X is more obviously
broken WRT multithreading.
I'm going to fix this by disabling multithreading in fusesmb, as a fix in
libsmbclient is probably not feasible at this stage. But we should probably
open a bug report for libsmbclient regardless, so this issue is not lost.
--
Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.