Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 18 Nov 2000 12:52:36 -0500 (EST)
From:      Daniel Eischen <eischen@vigrid.com>
To:        Andrew Gallatin <gallatin@cs.duke.edu>
Cc:        Rich Bud <rbud@fortean.com>, freebsd-alpha@FreeBSD.ORG, deischen@FreeBSD.ORG, obrien@FreeBSD.ORG, jasone@FreeBSD.ORG
Subject:   Re: pthread_create under stable
Message-ID:  <Pine.SUN.3.91.1001118124638.29370A-100000@pcnet1.pcnet.com>
In-Reply-To: <14870.45447.43597.701639@grasshopper.cs.duke.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 18 Nov 2000, Andrew Gallatin wrote:
> 
> I don't have a -stable alpha handy, but I think I'm seeing the same
> problem under -current:
> 
> Starting program: /usr/src/lib/libc_r/test/hello_d 
> 
> Program received signal SIGSEGV, Segmentation fault.
> 0x1600c1ff0 in _thread_kern_scheduler ()
>     at /usr/src/lib/libc_r/uthread/uthread_kern.c:177
> 177             if ((_thread_run->flags & PTHREAD_FLAGS_PRIVATE) == 0)

This isn't really enough to go on...

> I don't know enough about how to debug threads to be very helpful
> here.   I did notice one rather disturbing warning though:
> 
> /usr/src/lib/libc_r/uthread/uthread_sig.c: In function `_thread_sig_wrapper':
> /usr/src/lib/libc_r/uthread/uthread_sig.c:1003: warning: cast to pointer from integer of different size
> 
> 			(*(sigfunc))(psf->signo,
> 			    (siginfo_t *)psf->siginfo.si_code, &psf->uc);
> 
> si_code is a 32-bit int; you can't cast that to a 64-bit pointer on an
> alpha and expect to have a useful pointer..

It's trying to call a traditional BSD style signal handler of the form:

  sighandler(int, int, struct sigcontext *)

but there is no predefined prototype for this like there is for __sa_handler
or __sa_sigaction.  I guess we can add one or just omit the (siginfo_t *) 
typecast.

-- 
Dan Eischen
eischen@vigrid.com


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-alpha" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.SUN.3.91.1001118124638.29370A-100000>