summaryrefslogtreecommitdiffstats
path: root/cpukit/score/include/rtems/score/object.h
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2015-02-28 18:06:37 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2015-03-05 11:36:40 +0100
commit43e1573c1f02194a4fa754dfbff51862130742a5 (patch)
treefa7aed77417ebfc87cf9cb00c81c5a1533db7aa8 /cpukit/score/include/rtems/score/object.h
parentscore: Thread dispatch dis/enable without Giant (diff)
downloadrtems-43e1573c1f02194a4fa754dfbff51862130742a5.tar.bz2
score: Add ISR lock to Objects_Control
This enables per-object SMP locks on SMP configurations and is the first step to support fine-grained locking. On uni-processor configuration there will be no overhead. The _Objects_Acquire() is intended to replace _Objects_Get_isr_disable(). Update #2273.
Diffstat (limited to 'cpukit/score/include/rtems/score/object.h')
-rw-r--r--cpukit/score/include/rtems/score/object.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/cpukit/score/include/rtems/score/object.h b/cpukit/score/include/rtems/score/object.h
index 70e5fe630c..36449431d4 100644
--- a/cpukit/score/include/rtems/score/object.h
+++ b/cpukit/score/include/rtems/score/object.h
@@ -23,6 +23,7 @@
#include <rtems/score/basedefs.h>
#include <rtems/score/cpu.h>
#include <rtems/score/chain.h>
+#include <rtems/score/isrlock.h>
#ifdef __cplusplus
extern "C" {
@@ -236,6 +237,8 @@ typedef struct {
Objects_Id id;
/** This is the object's name. */
Objects_Name name;
+ /** This is the object's ISR lock. */
+ ISR_LOCK_MEMBER( Lock )
} Objects_Control;
#if defined( RTEMS_MULTIPROCESSING )