[PING^5] PR 54805: __gthread_tsd* in vxlib-tls.c

Maxim Kuvyrkov maxim.kuvyrkov@gmail.com
Fri Jan 18 02:15:00 GMT 2013


On 18/01/2013, at 2:18 PM, Mike Stump wrote:

> On Jan 17, 2013, at 5:05 PM, rbmj <rbmj@verizon.net> wrote:
>> On 05-Jan-13 23:18, rbmj wrote:
>>> On 06-Dec-12 10:14, rbmj wrote:
>>>> On 26-Nov-12 13:27, rbmj wrote:
>>>>> On 11/13/2012 10:22 PM, rbmj wrote:
>>>>>> On 11/5/2012 12:57 PM, rbmj wrote:
>>>>>>> This removes warnings about implicit declarations and fixes one of the
>>>>>>> function calls in vxlib-tls.c for vxworks targets.
>>>>>>> 
>>>>>>> I got the old prototypes from
>>>>>>> http://gcc.gnu.org/ml/gcc-patches/2005-08/msg01314.html
>>>>>>> 
>>>>>>> See bug for further details.
>>>>>>> 
>>>>>>> Someone please comment or commit :)
>>>>>>> 
>>>>>> 
>>>>>> Ping: http://gcc.gnu.org/ml/gcc-patches/2012-11/msg00406.html
>>>>>> 
>>>>>> Robert Mason
>>>>>> 
>>>>>> 
>>>>> 
>>>>> Ping^2
>>>>> 
>>>> Ping^3?
>>>> 
>>> 
>>> Ping^4?
>>> 
>> Dare I ping^5?
> 
> You are now entered into the most ignored and most trivial gcc patch contest.  You presently are behind the leader, but, if you can get another 10 pings in before approval, you can win!  Good luck.

Thanks for hanging out for so long.  A couple of tips to increase your luck with getting a patch reviewed.  First, address your submission to specific people, use your best-guess to choose a maintainer who can review this patch.  Otherwise diffusion of responsibility will kill your patch (everyone will think that someone else will review it).

Second -- present the full problem statement in the patch submission, don't just reference a PR  .  To make a click we (reviewers and maintainers) need to move our hand from keyboard to mouse, and that's so hard when we are just scanning the mailing list.

Lastly, your patch is OK with the following nitpicks.  I will check in your [updated] patch once GCC 4.8 branches and trunk opens for development.  [Strictly, I'm not a maintainer, but this is a trivial cleanup.]

> diff --git a/libgcc/config/vxlib-tls.c b/libgcc/config/vxlib-tls.c
> index c469676..a2f5e34 100644
> --- a/libgcc/config/vxlib-tls.c
> +++ b/libgcc/config/vxlib-tls.c
> @@ -102,6 +102,14 @@ extern void __gthread_set_tls_data (void
>  extern void __gthread_enter_tls_dtor_context (void);
>  extern void __gthread_leave_tls_dtor_context (void);
> 
> +#ifndef __
> RTP
> __
> +
> +extern void *__gthread_get_tsd_data(WIND_TCB *tcb);
> +extern void __gthread_set_tsd_data(WIND_TCB *tcb, void *data);
> +extern void __gthread_enter_tsd_dtor_context(WIND_TCB *tcb);
> +extern void __gthread_leave_tsd_dtor_context(WIND_TCB *tcb);

Follow GNU coding standard: add <space> before '('.  Better yet, just copy declarations from contrib/gthr_supp_vxw_5x.c

> +
> +#endif /* __
> RTP
> __ */
> 
>  /* This is a global structure which records all of the active keys.
> 
> @@ -150,7 +158,7 @@ static __gthread_once_t tls_init_guard =
>     need to read tls_keys.dtor[key] atomically.  */
> 
>  static void
> -tls_delete_hook (void *tcb ATTRIBUTE_UNUSED)
> +tls_delete_hook (void *tcb)

Don't remove ATTRIBUTE_UNUSED.  TCB was and will remain unused #ifdef __RTP__.

>  {
>    struct tls_data *data;
>    __gthread_key_t key;
> @@ -185,7 +193,7 @@ tls_delete_hook (void *tcb ATTRIBUTE_UNU
>  #ifdef __
> RTP
> __
>        __gthread_leave_tls_dtor_context ();
>  #else
> -      __gthread_leave_tsd_dtor_context ();
> +      __gthread_leave_tsd_dtor_context (tcb);
>  #endif

OK.

Thanks,

--
Maxim Kuvyrkov




More information about the Gcc-patches mailing list