Do anyone here have the experience with 64bits compiled Samba on SPARC?

Jiri Sasek - Solaris Prague jiri.sasek at oracle.com
Thu Nov 26 14:49:49 UTC 2015


Hi Ralph,

Your guessing was more accurate than my (exact :-) ) looking into mdb 
and your patch eliminated the core-dumps  ...seems finally.

Thank you very much,
Jiri

On 11/26/15 11:21, Ralph Boehme wrote:
> Hi,
>
> On Thu, Nov 26, 2015 at 06:20:40AM +0100, Jiri Sasek - Solaris Prague wrote:
>> Hi geeks,
>>
>> I have built 64bits Samba and winbindd is receiving the SIGBUS(*)
>>
>> ...on:
>>
>> libsmbconf.so.0`talloc_dict_traverse_fn+0xf0:   ldx [%l2], %l3
>>
>>
>> where l2 is equal to 2b50c7275c as can be seen from stackregs trace:
>> ...
>> fffffdfa7f4001a1
>> libsmbconf.so.0`talloc_dict_traverse_fn+0xf0(fffffdfa7f400be0,
>> fffffdfa7f401190, fffffdfa7f400bf8, fffffdfa7f400bd8, 1, fffffdfa7f400c20)
>>    %l0-%l3:    7ffc619014800               44 2b50c7275c               44
>>    %l4-%l7:       2b50c72718               44 2b50c72718               44
>>    libdbwrap.so`db_rbt_traverse_internal+0x198:jmpl %l3, %o7
>> ...
>>
>> and:
>>> 2b50c7275c,10::dump
>>                0 1 2 3  4 5 6 7  8 9 a b \/ d e f 0123456789abvdef
>> 2b50c72750:  00000000 00000000 00000000 0000002b ...............+
>> 2b50c72760:  50c73170 000a8750 0000002b 50c72500 P.1p...P...+P.%.
>>
>> So I suppose the problem is the 0x2b50c7275c address is not the 64bits
>> alligned.
>>
>> I have also localized the problem is (with some [RISC optimized code]
>> uncertainty :-) ) in samba-4.1.17/source3/lib/talloc_dict.c
>> (talloc_dict_traverse_fn) line:
>>
>> 148	return state->fn(data_blob_const(key.dptr, key.dsize),
>> 149			 *(void **)value.dptr, state->private_data);
>>
>> 3-rd parameter eveluation:
>>
>> state->private_data  ...dereferencing.
> I don't think it's state->private_date, I guess it's value.dptr. Can
> you please test attached patch?
>
> -Ralph
>




More information about the samba-technical mailing list