svn commit: r214334 - head/lib/libthr/thread
David Xu
davidxu at freebsd.org
Tue Oct 26 13:35:37 UTC 2010
Anonymous wrote:
> David Xu <davidxu at FreeBSD.org> writes:
>
>
>> Author: davidxu
>> Date: Mon Oct 25 09:16:04 2010
>> New Revision: 214334
>> URL: http://svn.freebsd.org/changeset/base/214334
>>
>> Log:
>> Get cpuset in pthread_attr_get_np() and free it in pthread_attr_destroy().
>>
>> MFC after: 7 days
>>
>
> After this change firefox 4.0b8pre built from mozilla trunk crashes with
> SIGBUS while starting, on /head at r214363M amd64. It may be related to
>
> $ js
> Assertion failure: stackBase, at jsnativestack.cpp:217
>
> and the calls preceding it
>
> pthread_attr_get_np(thread, &sattr);
> pthread_attr_getstack(&sattr, &stackBase, &stackSize);
>
> java/openjdk6 doesn't start, too
>
> $ java
> #
> # A fatal error has been detected by the Java Runtime Environment:
> #
> # Internal Error (os_bsd_x86.cpp:876), pid=10495, tid=34389128704
> # Error: pthread_attr_get_np failed with err = 34
>
>
It is difficult to know which cpuset size kernel is using,
for example, cpuset_getaffinity has following code:
if (uap->cpusetsize < sizeof(cpuset_t) ||
uap->cpusetsize > CPU_MAXSIZE / NBBY)
return (ERANGE);
So if I provide a buffer, who can tell me what size I should use?
too large or too small ? where can I get the size ?
Regards,
David Xu
More information about the svn-src-head
mailing list