[strace:code] Merge request: Wrap sa_restorer variables with #ifdef SA_RESTORER

Vicente Olivert Riera Vincent.Riera at imgtec.com
Thu Sep 18 09:59:29 UTC 2014


On 09/17/2014 10:23 PM, Dmitry V. Levin wrote:
> On Fri, Sep 12, 2014 at 09:47:41AM +0100, Vicente Olivert Riera wrote:
>> On 09/11/2014 08:37 PM, Dmitry V. Levin wrote:
>>> On Thu, Sep 11, 2014 at 07:13:19PM +0000, Vicente Olivert Riera wrote:
>>>> Merge request: Wrap sa_restorer variables with #ifdef SA_RESTORER
>>>>
>>>> ---
>>>>
>>>> Vicente Olivert Riera has requested that you merge changes from git://git.code.sf.net/u/vriera/strace (dece41de0a005a322a1b8b78226abb8c1ed3a4dc) into the branch master
>>>>
>>>> Since we define a SA_RESTORER symbol if our toolchain has sa_restorer support, then we can use it to wrap the declaration and access to the sa_restorer variables. This will fix compilation failures like this one:
>>>
>>> If you can state that you have SA_RESTORER macro defined if and only if
>>> your sigaction structures in kernel have sa_restorer member, then you are
>>> lucky, because some architectures like ia64 and hppa seem to have no
>>> sa_restorer in their kernel structures but still define SA_RESTORER.  We
>>> workaround this inconsistency with explicit #undef SA_RESTORER on these
>>> architectures.
>>>
>>> Minor corrections:
>>> - sa_restorer is a structure member, not a variable;
>>> - SA_RESTORER is a macro, not a symbol;
>>> - "definition and use" rather than "declaration and access".
>>
>> No problem, make all the corrections you consider.
>>
>>>> http://autobuild.buildroot.org/results/04d/04de887fd501e1a1b9f811dacdf17596256097e6/build-end.log
>>>
>>> Is this URL is going to remain valid forever?
>>
>> Yes, it should remain valid forever.
>>
>>> Anyway, let's quote the
>>> relevant part of this build log instead:
>>>
>>> signal.c: In function 'decode_old_sigaction':
>>> signal.c:631:21: error: 'struct old_sigaction' has no member named 'sa_restorer'
>>> signal.c: In function 'decode_new_sigaction':
>>> signal.c:1224:21: error: 'struct new_sigaction' has no member named 'sa_restorer'
>>
>> Perfect. Could you please let me know when you commit this fix upstream?
>
> I've merged and pushed this commit.  I wouldn't be very surprised if it
> introduced a regression on some architecture, but we have sigaction.test
> to detect it.

Thank you very much!

>
>
>
>
> ------------------------------------------------------------------------------
> Want excitement?
> Manually upgrade your production database.
> When you want reliability, choose Perforce
> Perforce version control. Predictably reliable.
> http://pubads.g.doubleclick.net/gampad/clk?id=157508191&iu=/4140/ostg.clktrk
>
>
>
> _______________________________________________
> Strace-devel mailing list
> Strace-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/strace-devel
>


-- 
Vincent




More information about the Strace-devel mailing list