[PATCH 1/2] RTEMS: Adjust layout of struct _Thread_queue_Queue
Sebastian Huber
sebastian.huber at embedded-brains.de
Tue May 3 05:41:44 UTC 2016
Yes, we already have several changes that require an RTEMS internal
update, e.g. the recent type definition changes. Now its a good time to
incorporate such changes, since there will be a major tool update based
the recently released GCC 6.1.
On 03/05/16 00:43, Gedare Bloom wrote:
> This should be fine. It's an "internal" API so we just need to ensure
> consistency in our kernel code.
>
> On Mon, May 2, 2016 at 3:55 PM, Jeff Johnston <jjohnstn at redhat.com> wrote:
>> Do you have consensus with the RTEMS group for this change which breaks API introduced
>> last year? Otherwise, I will leave it up to the RTEMS maintainers to comment.
>>
>> -- Jeff J.
>>
>> ----- Original Message -----
>>> Move _Thread_queue_Queue::_Lock to begin of the structure. On RTEMS,
>>> the presence of a lock component in the thread queue structures actually
>>> depends on the build-time RTEMS_SMP configuration option. A move of
>>> this part to the begin of the structure allows an implementation re-use
>>> for the other parts.
>>>
>>> Signed-off-by: Sebastian Huber <sebastian.huber at embedded-brains.de>
>>> ---
>>> newlib/libc/sys/rtems/include/sys/lock.h | 6 +++---
>>> 1 file changed, 3 insertions(+), 3 deletions(-)
>>>
>>> diff --git a/newlib/libc/sys/rtems/include/sys/lock.h
>>> b/newlib/libc/sys/rtems/include/sys/lock.h
>>> index d2a7fb1..002064f 100644
>>> --- a/newlib/libc/sys/rtems/include/sys/lock.h
>>> +++ b/newlib/libc/sys/rtems/include/sys/lock.h
>>> @@ -1,5 +1,5 @@
>>> /*
>>> - * Copyright (c) 2015 embedded brains GmbH. All rights reserved.
>>> + * Copyright (c) 2015, 2016 embedded brains GmbH. All rights reserved.
>>> *
>>> * Redistribution and use in source and binary forms, with or without
>>> * modification, are permitted provided that the following conditions
>>> @@ -43,8 +43,8 @@ struct _Ticket_lock_Control {
>>> };
>>>
>>> struct _Thread_queue_Queue {
>>> - struct _Thread_queue_Heads *_heads;
>>> struct _Ticket_lock_Control _Lock;
>>> + struct _Thread_queue_Heads *_heads;
>>> };
>>>
>>> struct _Mutex_Control {
>>> @@ -70,7 +70,7 @@ struct _Futex_Control {
>>> struct _Thread_queue_Queue _Queue;
>>> };
>>>
>>> -#define _THREAD_QUEUE_INITIALIZER { 0, { 0, 0 } }
>>> +#define _THREAD_QUEUE_INITIALIZER { { 0, 0 }, 0 }
>>>
>>> #define _MUTEX_INITIALIZER { _THREAD_QUEUE_INITIALIZER, 0 }
>>>
>>> --
>>> 1.8.4.5
>>>
>>>
--
Sebastian Huber, embedded brains GmbH
Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone : +49 89 189 47 41-16
Fax : +49 89 189 47 41-09
E-Mail : sebastian.huber at embedded-brains.de
PGP : Public key available on request.
Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.
More information about the devel
mailing list