Hi,
I agree that this will fix the CPU load problem, but it doesn't really fix
the original cause which is the segment violation. I would rather fix that.
Thanks,
Andy

On 12/13/02 8:49, "Andreas Richter" <[EMAIL PROTECTED]> wrote:

> My bad, I was looking at the wrong line. I will recompile.
> Thanks,
> Andy
> 
> On 12/13/02 6:18, "Roel Rozendaal - IC&S" <[EMAIL PROTECTED]> wrote:
> 
>> I'm referring to the exit() on line 122 in serverchild.c - i've changed
>> the call to _exit(); the adding of this function resolved our problem
>> of the imap daemon taking up all cpu time.
>> 
>> Andreas Richter heeft op donderdag, 12 dec 2002 om 16:19
>> (Europe/Amsterdam) het volgende geschreven:
>> 
>>> Hi Roel,
>>> Sorry, but the CVS file does not have the exit anymore. I though you
>>> got rid of it. Also maybe we should just remove the signal handler
>>> before trying to shut down.
>>> Thanks,
>>> Andy
>>> 
>>> Roel Rozendaal - IC&S wrote:
>>> 
>>>> where are those function calls in the ChildSigHandler() originating
>>>> from? The only function the ChildSigHandler() is calling is exit();
>>>> but as i recall exit() isn't reentrant for every unix implementation
>>>> - could you check the effect of replacing the exit() call by a call
>>>> to _exit()? _exit() is POSIX reentrant.
>>>> 
>>>> Andreas Richter heeft op donderdag, 12 dec 2002 om 12:31
>>>> (Europe/Amsterdam) het volgende geschreven:
>>>> 
>>>>> Hi,
>>>>> Here is where the process is stuck:
>>>>> #0  0x40101591 in chunk_free (ar_ptr=0x401b5300, p=0x8090e18) at
>>>>> malloc.c:3252
>>>>> #1  0x401013f4 in __libc_free (mem=0x8090e20) at malloc.c:3154
>>>>> #2  0x400f1775 in _IO_new_fclose (fp=0x8090e20) at iofclose.c:85
>>>>> #3  0x08051f7e in ChildSigHandler ()
>>>>> #4  <signal handler called>
>>>>> #5  chunk_alloc (ar_ptr=0x401b5300, nb=368) at malloc.c:3001
>>>>> #6  0x40100828 in __libc_malloc (bytes=360) at malloc.c:2811
>>>>> #7  0x0804f94b in db_getmailbox ()
>>>>> #8  0x0804a9cb in IMAPClientHandler ()
>>>>> #9  0x08052355 in PerformChildTask ()
>>>>> #10 0x080520df in CreateChild ()
>>>>> #11 0x080525c4 in StartServer ()
>>>>> #12 0x08049cfe in main ()
>>>>> #13 0x4009c657 in __libc_start_main (main=0x8049b30 <main>, argc=1,
>>>>>     ubp_av=0xbffffaf4, init=0x8049418 <_init>, fini=0x80638b0
>>>>> <_fini>,
>>>>>     rtld_fini=0x4000dcd4 <_dl_fini>, stack_end=0xbffffaec)
>>>>>     at ../sysdeps/generic/libc-start.c:129
>>>>> 
>>>>> I may be wrong, but freeing whatever this is if probably causing
>>>>> another
>>>>> SEGV and restarting the sig handler?! Because it seems that the
>>>>> malloc fails
>>>>> due to a memory overwrite?! And it is the same ar_ptr.
>>>>> Thanks,
>>>>> Andy
>>>>> 
>>>>> On 12/12/02 5:44, "Roel Rozendaal - IC&S" <[EMAIL PROTECTED]> wrote:
>>>>> 
>>>>>> That's curious - we've had exactly this problem with the 1.0 imapd -
>>>>>> after a nasty signal (sigseg/sigbus) the process being signaled just
>>>>>> didn't exit but got stuck somewhere closing the database connection.
>>>>>> That's why I added the exit() to the serverchild.c signalhandler
>>>>>> code.
>>>>>> Since then the problem has no longer occurred. Could you check the
>>>>>> maillog to see if the process taking up all cpu time has had a
>>>>>> signal?
>>>>>> If the last output from that particular process was in fact
>>>>>> something
>>>>>> like 'got signal [..]' there's still something wrong in the signal
>>>>>> handler.
>>>>>> Are you able to reproduce this cpu-time consuming behaviour? If so,
>>>>>> you
>>>>>> could attach to a process using gdb a set a break in the signal
>>>>>> handler
>>>>>> and then continue the program - in fact thinking it over you could
>>>>>> set
>>>>>> up gdb sessions for all your processes in this way.
>>>>>> 
>>>>>> regards roel
>>>>>> 
>>>>>> Andreas Richter heeft op woensdag, 11 dec 2002 om 23:48
>>>>>> (Europe/Amsterdam) het volgende geschreven:
>>>>>> 
>>>>>>> The first problem still seems to exist. In fact I think it's worse.
>>>>>>> Now I
>>>>>>> got 98% of usage for just one process. It's one of the child
>>>>>>> processes
>>>>>>> that
>>>>>>> uses all of the CPU. Doing an strace on it shows no system calls
>>>>>>> so the
>>>>>>> process seems to be in a tight loop or just doing some internal
>>>>>>> calls.
>>>>>>> When
>>>>>>> I attached with dbg it was stuck in malloc.c, but I didn't get the
>>>>>>> stack
>>>>>>> trace due to hitting the wrong key :-( sorry! I typed n first
>>>>>>> before
>>>>>>> doing
>>>>>>> the stack trace. I'll send you the info next time.
>>>>>>> Thanks,
>>>>>>> Andy
>>>>>>> 
>>>>>>> 
>>>>>>> On 12/10/02 5:24, "Roel Rozendaal - IC&S" <[EMAIL PROTECTED]> wrote:
>>>>>>> 
>>>>>>>> Hi andreas,
>>>>>>>> 
>>>>>>>> Your first problem has been fixed - cvs has been updated, i'll
>>>>>>>> update
>>>>>>>> the 1.0 release today. The 2nd and 3rd problem you describe are
>>>>>>>> currently being looked into but all the information you (or anyone
>>>>>>>> else
>>>>>>>> on this list) can send is very welcome. For instance, could you be
>>>>>>>> more
>>>>>>>> specific on which commands are failing? Thanks!
>>>>>>>> 
>>>>>>>> regards roel
>>>>>>>> 
>>>>>>>> 
>>>>>>>> Andreas Richter heeft op maandag, 9 dec 2002 om 12:49
>>>>>>>> (Europe/Amsterdam) het volgende geschreven:
>>>>>>>> 
>>>>>>>>> Hi,
>>>>>>>>> I am having problems with the 1.0 version.
>>>>>>>>> 1. IMAPD takes up all of the CPU after a while of being used.
>>>>>>>>> 2. POP3D crashes quite often and I had to revert to the rc4
>>>>>>>>> version.
>>>>>>>>> 3. IMAPD sometimes doesn't let my client retrieve messages I get
>>>>>>>>> weird
>>>>>>>>> errors in the client saying that commands are invalid or the
>>>>>>>>> like,
>>>>>>>>> but
>>>>>>>>> the
>>>>>>>>> next retrieve works fine.
>>>>>>>>> I don't have any problems debugging this stuff, but I was unable
>>>>>>>>> to
>>>>>>>>> run the
>>>>>>>>> processes under gdb and would like some info on how to do that.
>>>>>>>>> Thanks,
>>>>>>>>> Andy
>>>>>>>>> 
>>>>>>>>> _______________________________________________
>>>>>>>>> Dbmail mailing list
>>>>>>>>> Dbmail@dbmail.org
>>>>>>>>> https://mailman.fastxs.nl/mailman/listinfo/dbmail
>>>>>>>> 
>>>>>>>> 
>>>>>>>> _______________________________________________
>>>>>>>> Dbmail mailing list
>>>>>>>> Dbmail@dbmail.org
>>>>>>>> https://mailman.fastxs.nl/mailman/listinfo/dbmail
>>>>>>>> 
>>>>>>>> 
>>>>>>> 
>>>>>>> _______________________________________________
>>>>>>> Dbmail mailing list
>>>>>>> Dbmail@dbmail.org
>>>>>>> https://mailman.fastxs.nl/mailman/listinfo/dbmail
>>>>>> 
>>>>>> 
>>>>>> _______________________________________________
>>>>>> Dbmail mailing list
>>>>>> Dbmail@dbmail.org
>>>>>> https://mailman.fastxs.nl/mailman/listinfo/dbmail
>>>>>> 
>>>>>> 
>>>>> 
>>>>> _______________________________________________
>>>>> Dbmail mailing list
>>>>> Dbmail@dbmail.org
>>>>> https://mailman.fastxs.nl/mailman/listinfo/dbmail
>>>> 
>>>> 
>>>> _______________________________________________
>>>> Dbmail mailing list
>>>> Dbmail@dbmail.org
>>>> https://mailman.fastxs.nl/mailman/listinfo/dbmail
>>>> 
>>> 
>>> 
>>> _______________________________________________
>>> Dbmail mailing list
>>> Dbmail@dbmail.org
>>> https://mailman.fastxs.nl/mailman/listinfo/dbmail
>> 
>> _______________________________________________
>> Dbmail mailing list
>> Dbmail@dbmail.org
>> https://mailman.fastxs.nl/mailman/listinfo/dbmail
>> 
>> 
> 
> _______________________________________________
> Dbmail mailing list
> Dbmail@dbmail.org
> https://mailman.fastxs.nl/mailman/listinfo/dbmail
> 
> 

Reply via email to