aMule Forum

Please login or register.

Login with username, password and session length
Advanced search  

News:

We're back! (IN POG FORM)

Author Topic: aMule 2.2.6 crashes on hashing completed files, Solaris 10 u8  (Read 5654 times)

vdb

  • Full Member
  • ***
  • Karma: 1
  • Offline Offline
  • Posts: 215
aMule 2.2.6 crashes on hashing completed files, Solaris 10 u8
« on: November 22, 2009, 01:25:14 PM »

After lots of hair pulling I managed to get a working Solaris version of aMule, with lots of help from Skolnick, thanks for that.

However, after a few hours of running the first file was complete and should be hashed and moved. With an oops.

Code: [Select]
[New LWP 3]
[New LWP 4]

Program received signal SIGSEGV, Segmentation fault.
[Switching to LWP 3]
0xfe499206 in convert_mntent () from /usr/lib/libc.so.1

Backtrace shows:
Code: [Select]
(gdb) bt
#0  0xfe499206 in convert_mntent () from /usr/lib/libc.so.1
#1  0xfe499031 in getmntent () from /usr/lib/libc.so.1
#2  0x085718cc in doGetFilesystemType (path=@0xfa0ffe20) at PlatformSpecific.cpp:255
#3  0x08571ce4 in PlatformSpecific::GetFilesystemType (path=@0xfa0ffe20) at PlatformSpecific.cpp:309
#4  0x087408a1 in PlatformSpecific::CanFSHandleSpecialChars (path=@0xfa0ffe20) at PlatformSpecific.h:101
#5  0x084017ac in CCompletionTask::Entry (this=0x9825310) at ThreadTasks.cpp:421
#6  0x0857ef14 in CThreadScheduler::Entry (this=0x9859bc0) at ThreadScheduler.cpp:291
#7  0x08871ea2 in CTaskThread::Entry (this=0x9e66550) at ThreadScheduler.cpp:61
#8  0xfe76cd81 in wxThreadInternal::PthreadStart () from /usr/local/lib/libwx_baseu-2.8.so.0.6.0
#9  0xfe76cddf in wxPthreadStart () from /usr/local/lib/libwx_baseu-2.8.so.0.6.0
#10 0xfe5071d0 in _thr_setup () from /usr/lib/libc.so.1
#11 0xfe5074c0 in L3_doit () from /usr/lib/libc.so.1
#12 0xfc621200 in ?? ()
#13 0x00000000 in ?? ()

Code: [Select]
(gdb) bt full
#0  0xfe499206 in convert_mntent () from /usr/lib/libc.so.1
No symbol table info available.
#1  0xfe499031 in getmntent () from /usr/lib/libc.so.1
No symbol table info available.
#2  0x085718cc in doGetFilesystemType (path=@0xfa0ffe20) at PlatformSpecific.cpp:255
        entry = (mnttab *) 0x0
        retval = PlatformSpecific::fsOther
        mnttab = (FILE *) 0x8d4d8d8
        bestPrefixLen = 0
#3  0x08571ce4 in PlatformSpecific::GetFilesystemType (path=@0xfa0ffe20) at PlatformSpecific.cpp:309
        s_fscache = {<__gnu_norm::map<wxString,PlatformSpecific::EFSType,std::less<wxString>,std::allocator<std::pair<const wxString, PlatformSpecific::EFSType> > >> = {_M_t = {
      _M_impl = {<std::allocator<std::_Rb_tree_node<std::pair<const wxString, PlatformSpecific::EFSType> > >> = {<__gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<const wxString, PlatformSpecific::EFSType> > >> = {<No data fields>}, <No data fields>},
        _M_key_compare = {<std::binary_function<wxString,wxString,bool>> = {<No data fields>}, <No data fields>}, _M_header = {
          _M_color = std::_S_red, _M_parent = 0x0, _M_left = 0x8d4c7c4, _M_right = 0x8d4c7c4},
        _M_node_count = 0}}}, <__gnu_debug::_Safe_sequence<__gnu_debug_def::map<wxString, PlatformSpecific::EFSType, std::less<wxString>, std::allocator<std::pair<const wxString, PlatformSpecific::EFSType> > > >> = {<__gnu_debug::_Safe_sequence_base> = {_M_iterators = 0xfa0ffcc0,
      _M_const_iterators = 0x0, _M_version = 1}, <No data fields>}, <No data fields>}
        locker = {m_isOk = true, m_mutex = @0x8d4c7e4}
        s_lock = {m_internal = 0xa7ede08}
        it = {<__gnu_debug::_Safe_iterator_base> = {_M_sequence = 0x8d4c7d8, _M_version = 1, _M_prior = 0x0, _M_next = 0x0}, _M_current = {
    _M_node = 0x8d4c7c4}}
#4  0x087408a1 in PlatformSpecific::CanFSHandleSpecialChars (path=@0xfa0ffe20) at PlatformSpecific.h:101
No locals.
---Type <return> to continue, or q <return> to quit---
#5  0x084017ac in CCompletionTask::Entry (this=0x9825310) at ThreadTasks.cpp:421
        targetPath = {<CPrintable> = {_vptr.CPrintable = 0x894ae70}, m_printable = {<wxStringBase> = {static npos = 4294967295,
      m_pchData = 0x8ddb644}, <No data fields>}, m_filesystem = {<wxStringBase> = {static npos = 4294967295,
      m_pchData = 0x9f9e524}, <No data fields>}}
        newName = {<CPrintable> = {_vptr.CPrintable = 0xfe7b299c}, m_printable = {<wxStringBase> = {static npos = 4294967295,
      m_pchData = 0xfc621200}, <No data fields>}, m_filesystem = {<wxStringBase> = {static npos = 4294967295,
      m_pchData = 0xfa0ffdf8}, <No data fields>}}
        partfilename = {<CPrintable> = {_vptr.CPrintable = 0x8d55710}, m_printable = {<wxStringBase> = {static npos = 4294967295,
      m_pchData = 0x9859bc8}, <No data fields>}, m_filesystem = {<wxStringBase> = {static npos = 4294967295,
      m_pchData = 0xfa0ffe08}, <No data fields>}}
        otherMetExt = {0x9e66558, 0xfe7b299c, 0xfa0ffe18, 0xfe76b785}
        dstName = {<CPrintable> = {_vptr.CPrintable = 0xfa0ffef0}, m_printable = {<wxStringBase> = {static npos = 4294967295,
      m_pchData = 0xfa0ffe38}, <No data fields>}, m_filesystem = {<wxStringBase> = {static npos = 4294967295,
      m_pchData = 0x84b8607}, <No data fields>}}
#6  0x0857ef14 in CThreadScheduler::Entry (this=0x9859bc0) at ThreadScheduler.cpp:291
        task = {m_ptr = 0x9825310}
        isLastTask = false
#7  0x08871ea2 in CTaskThread::Entry (this=0x9e66550) at ThreadScheduler.cpp:61
No locals.
#8  0xfe76cd81 in wxThreadInternal::PthreadStart () from /usr/local/lib/libwx_baseu-2.8.so.0.6.0
No symbol table info available.
#9  0xfe76cddf in wxPthreadStart () from /usr/local/lib/libwx_baseu-2.8.so.0.6.0
No symbol table info available.
#10 0xfe5071d0 in _thr_setup () from /usr/lib/libc.so.1
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#11 0xfe5074c0 in L3_doit () from /usr/lib/libc.so.1
No symbol table info available.
#12 0xfc621200 in ?? ()
No symbol table info available.
#13 0x00000000 in ?? ()
No symbol table info available.

Code: [Select]
(gdb) thread apply all bt

Thread 4 (LWP 4):
#0  0xfe507539 in __lwp_park () from /usr/lib/libc.so.1
#1  0xfe501b5e in cond_sleep_queue () from /usr/lib/libc.so.1
#2  0xfe501d17 in cond_wait_queue () from /usr/lib/libc.so.1
#3  0xfe502094 in cond_wait_common () from /usr/lib/libc.so.1
#4  0xfe5022c6 in _cond_timedwait () from /usr/lib/libc.so.1
#5  0xfe502331 in cond_timedwait () from /usr/lib/libc.so.1
#6  0xfe50236d in pthread_cond_timedwait () from /usr/lib/libc.so.1
#7  0xfe76b981 in wxConditionInternal::WaitTimeout () from /usr/local/lib/libwx_baseu-2.8.so.0.6.0
#8  0xfe76b9d5 in wxCondition::WaitTimeout () from /usr/local/lib/libwx_baseu-2.8.so.0.6.0
#9  0xfe76be87 in wxSemaphoreInternal::WaitTimeout () from /usr/local/lib/libwx_baseu-2.8.so.0.6.0
#10 0xfe76ddc5 in wxSemaphore::WaitTimeout () from /usr/local/lib/libwx_baseu-2.8.so.0.6.0
#11 0x087ed951 in CTimerThread::Entry (this=0x9e5eca8) at Timer.cpp:64
#12 0xfe76cd81 in wxThreadInternal::PthreadStart () from /usr/local/lib/libwx_baseu-2.8.so.0.6.0
#13 0xfe76cddf in wxPthreadStart () from /usr/local/lib/libwx_baseu-2.8.so.0.6.0
#14 0xfe5071d0 in _thr_setup () from /usr/lib/libc.so.1
#15 0xfe5074c0 in L3_doit () from /usr/lib/libc.so.1
#16 0xfc621a00 in ?? ()
#17 0x00000000 in ?? ()

Thread 3 (LWP 3):
#0  0xfe499206 in convert_mntent () from /usr/lib/libc.so.1
#1  0xfe499031 in getmntent () from /usr/lib/libc.so.1
#2  0x085718cc in doGetFilesystemType (path=@0xfa0ffe20) at PlatformSpecific.cpp:255
---Type <return> to continue, or q <return> to quit---
#3  0x08571ce4 in PlatformSpecific::GetFilesystemType (path=@0xfa0ffe20) at PlatformSpecific.cpp:309
#4  0x087408a1 in PlatformSpecific::CanFSHandleSpecialChars (path=@0xfa0ffe20) at PlatformSpecific.h:101
#5  0x084017ac in CCompletionTask::Entry (this=0x9825310) at ThreadTasks.cpp:421
#6  0x0857ef14 in CThreadScheduler::Entry (this=0x9859bc0) at ThreadScheduler.cpp:291
#7  0x08871ea2 in CTaskThread::Entry (this=0x9e66550) at ThreadScheduler.cpp:61
#8  0xfe76cd81 in wxThreadInternal::PthreadStart () from /usr/local/lib/libwx_baseu-2.8.so.0.6.0
#9  0xfe76cddf in wxPthreadStart () from /usr/local/lib/libwx_baseu-2.8.so.0.6.0
#10 0xfe5071d0 in _thr_setup () from /usr/lib/libc.so.1
#11 0xfe5074c0 in L3_doit () from /usr/lib/libc.so.1
#12 0xfc621200 in ?? ()
#13 0x00000000 in ?? ()

Thread 2 (LWP 2):
#0  0xfe5098b5 in ___nanosleep () from /usr/lib/libc.so.1
#1  0xfe4fb2fe in __nanosleep () from /usr/lib/libc.so.1
#2  0xfec42b67 in nanosleep () from /usr/lib/librt.so.1
#3  0xfe772c02 in wxMicroSleep () from /usr/local/lib/libwx_baseu-2.8.so.0.6.0
#4  0xfe772c34 in wxMilliSleep () from /usr/local/lib/libwx_baseu-2.8.so.0.6.0
#5  0xfe76c2f3 in wxThread::Sleep () from /usr/local/lib/libwx_baseu-2.8.so.0.6.0
#6  0x0840401b in UploadBandwidthThrottler::Entry (this=0x9712a00) at UploadBandwidthThrottler.cpp:324
#7  0xfe76cd81 in wxThreadInternal::PthreadStart () from /usr/local/lib/libwx_baseu-2.8.so.0.6.0
#8  0xfe76cddf in wxPthreadStart () from /usr/local/lib/libwx_baseu-2.8.so.0.6.0
#9  0xfe5071d0 in _thr_setup () from /usr/lib/libc.so.1
#10 0xfe5074c0 in L3_doit () from /usr/lib/libc.so.1
#11 0xfc620a00 in ?? ()
---Type <return> to continue, or q <return> to quit---
#12 0x00000000 in ?? ()

Thread 1 (LWP 1):
#0  0xfe50a715 in _read () from /usr/lib/libc.so.1
#1  0xfe4fae55 in read () from /usr/lib/libc.so.1
#2  0xfe41900f in _xcb_in_read () from /opt/csw/lib/libxcb.so.1
#3  0xfe418d3d in xcb_poll_for_event () from /opt/csw/lib/libxcb.so.1
#4  0xfedce588 in ?? () from /opt/csw/lib/libX11.so.6
#5  0x08d7c760 in ?? ()
#6  0x08d7b700 in ?? ()
#7  0x00000000 in ?? ()
#0  0xfe499206 in convert_mntent () from /usr/lib/libc.so.1

Any ideas?

Logged
A waste is a terrible thing to mind.

Stu Redman

  • Administrator
  • Hero Member
  • *****
  • Karma: 214
  • Offline Offline
  • Posts: 3739
  • Engines screaming
Re: aMule 2.2.6 crashes on hashing completed files, Solaris 10 u8
« Reply #1 on: November 22, 2009, 02:06:24 PM »

Hmm - I'd say this piece of code has never been run. It can't work.
Try the one I attached.
Logged
The image of mother goddess, lying dormant in the eyes of the dead, the sheaf of the corn is broken, end the harvest, throw the dead on the pyre -- Iron Maiden, Isle of Avalon

vdb

  • Full Member
  • ***
  • Karma: 1
  • Offline Offline
  • Posts: 215
Re: aMule 2.2.6 crashes on hashing completed files, Solaris 10 u8
« Reply #2 on: November 22, 2009, 03:47:23 PM »

Coffee first, re-compile later  :)

Yep, that works. At least the amuled happily completes the file and moves it to Incoming. And interestingly it seems that this patch also fixes the crash of amule itself, that starts and continues to run now as well.

Now I'll install it and have amuled run for a couple of days, see what happens.

Update: It seems the patch is stable. aMuled is now running for a 5 hours and has downloaded and completed 2 files without a problem.
« Last Edit: November 22, 2009, 09:33:37 PM by vdb »
Logged
A waste is a terrible thing to mind.

vdb

  • Full Member
  • ***
  • Karma: 1
  • Offline Offline
  • Posts: 215
Re: aMule 2.2.6 crashes on hashing completed files, Solaris 10 u8
« Reply #3 on: November 25, 2009, 10:27:40 PM »

It seems aMule, at least the daemon, is very stable now with the provided patch. Running for a few days now without a hitch.

However, I just found that amulecmd crashes when I ask for a "show ul". Will post backtrace in separate threat.
Logged
A waste is a terrible thing to mind.

peerstudio

  • Approved Newbie
  • *
  • Karma: 1
  • Offline Offline
  • Posts: 17
Re: aMule 2.2.6 crashes on hashing completed files, Solaris 10 u8
« Reply #4 on: December 30, 2011, 11:04:50 PM »

hey how you managed to compile amule correctly?

what compiler and what options have you used?

solaris has kept this version of STL for all their recent versions and amule code has not changed al lot in the last years.....so why i am stuck trying to compile amule?
Logged