I can't immediately see how that could happen;
it looks like app_client_shm (the pointer to shared mem)
is 0 when this crash happens.
However, timer_handler() checks for app_client_shm being nonzero
before calling handle_heartbeat_msg().

And, as far as I can tell,
app_client_shm isn't being reset to zero anywhere.

Is this reproducible?
We could try to debug it with printf()s.

-- David

On 19-Feb-2013 8:07 AM, Bernd Machenschalk wrote:
> This might or might not be related:
>
> When a (Mac OS X in this case, output is from an attached gdb) program
> terminates after a short time, presumably before it received the first
> hearbeat, apparently the timer thread crashes:
>
> 2013-02-19 16:58:53.3629 (10894) [normal]: done. calling boinc_finish(0).
> 16:58:53 (10894): called boinc_finish
>
> Program received signal EXC_BAD_ACCESS, Could not access memory.
> Reason: KERN_PROTECTION_FAILURE at address: 0x00001000
> [Switching to process 10894 thread 0x1603]
> 0x000f156b in MSG_CHANNEL::get_msg ()
> $1 = <unknown type>
> #0  0x000f156b in MSG_CHANNEL::get_msg ()
> #1  0x000ef2a7 in handle_heartbeat_msg ()
> #2  0x000f02a6 in timer_thread ()
> #3  0x98886ed9 in _pthread_start ()
> #4  0x9888a6de in thread_start ()
> (gdb) SIGBUS: bus error
>
> Could that be that something in handle_heartbeat_msg() needs to be
> protected?
>
> Best,
> Bernd
>
> _______________________________________________
> boinc_dev mailing list
> [email protected]
> http://lists.ssl.berkeley.edu/mailman/listinfo/boinc_dev
> To unsubscribe, visit the above URL and
> (near bottom of page) enter your email address.
>
_______________________________________________
boinc_dev mailing list
[email protected]
http://lists.ssl.berkeley.edu/mailman/listinfo/boinc_dev
To unsubscribe, visit the above URL and
(near bottom of page) enter your email address.

Reply via email to