[PATCH 1/2] RTEMS: Adjust layout of struct _Thread_queue_Queue

Sebastian Huber sebastian.huber at embedded-brains.de
Mon May 2 12:56:36 UTC 2016


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



More information about the devel mailing list