aboutsummaryrefslogtreecommitdiffstats
path: root/include/litmus.h
diff options
context:
space:
mode:
authorSven Dziadek <s9svdzia@stud.uni-saarland.de>2012-04-16 15:37:40 -0400
committerSven Dziadek <s9svdzia@stud.uni-saarland.de>2012-05-31 16:23:38 -0400
commit6e1ceb5ab56005fd343f52bbb8d2879e2c1493bd (patch)
tree7747fe454511e842c273dca77359a1f473cb3c7c /include/litmus.h
parentaae25e0770ade4083937c7443448cb3f0023b10a (diff)
P-FP: make PCP available to user space
PCP was only used for DPCP before tests: add some basic tests for PCP under P-FP
Diffstat (limited to 'include/litmus.h')
-rw-r--r--include/litmus.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/include/litmus.h b/include/litmus.h
index 2357da9..232dcf5 100644
--- a/include/litmus.h
+++ b/include/litmus.h
@@ -58,6 +58,7 @@ typedef enum {
58 MPCP_SEM = 2, 58 MPCP_SEM = 2,
59 MPCP_VS_SEM = 3, 59 MPCP_VS_SEM = 3,
60 DPCP_SEM = 4, 60 DPCP_SEM = 4,
61 PCP_SEM = 5,
61} obj_type_t; 62} obj_type_t;
62 63
63int lock_protocol_for_name(const char* name); 64int lock_protocol_for_name(const char* name);
@@ -106,7 +107,6 @@ task_class_t str2class(const char* str);
106/* non-preemptive section support */ 107/* non-preemptive section support */
107void enter_np(void); 108void enter_np(void);
108void exit_np(void); 109void exit_np(void);
109int exit_np_trace(void);
110int requested_to_preempt(void); 110int requested_to_preempt(void);
111 111
112/* task system support */ 112/* task system support */
@@ -138,6 +138,11 @@ static inline int open_srp_sem(int fd, int name)
138 return od_open(fd, SRP_SEM, name); 138 return od_open(fd, SRP_SEM, name);
139} 139}
140 140
141static inline int open_pcp_sem(int fd, int name, int cpu)
142{
143 return od_openx(fd, PCP_SEM, name, &cpu);
144}
145
141 146
142/* syscall overhead measuring */ 147/* syscall overhead measuring */
143int null_call(cycles_t *timestamp); 148int null_call(cycles_t *timestamp);