[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [DRE-maint] Bug#642266: Bug#642266: please help with #642266

tags 642266 + pending

Hi Jurij,

Jurij Smakov escreveu isso aí:
> Right, it's a different issue. 'Illegal instruction' error is 
> generated when the test code hits 'ta 6' instruction, which 
> is generated due to the following code in libtest/NumberTest.c:
> #ifdef __sparc
>     #define fix_mem_access __asm("ta 6")
> #else
>     #define fix_mem_access
> #endif
> This instruction means 'software trap 6', which normally invokes some 
> action in the kernel from userspace (kind of like 'int' instruction 
> on x86). According to a cursory search, this trap is Solaris-specific, 
> and its effect is to turn on the unaligned trap handler. In Linux 
> userspace unaligned traps are not handled (they just cause program 
> termination), so the #ifdef should be adjusted to only trigger on 
> Solaris/sparc. This may have unintended side effects (if the tests 
> have intentional unaligned accesses, for example), but I've confirmed 
> that with the attached patch applied the package builds successfully. 
> Note that I have no way to test it on Solaris, but judging by examples 
> like
> http://www.winehq.org/pipermail/wine-patches/2011-February/098547.html 
> it should do the trick.

Brilliant! With your patch the package builds fine (including passing
the entire test suite on both Ruby 1.8 and 1.9).

Thank you very much for your help with this. :-)

Antonio Terceiro <terceiro@debian.org>

Attachment: signature.asc
Description: Digital signature

Reply to: