aboutsummaryrefslogtreecommitdiffstats
path: root/litmus/ctrldev.c
diff options
context:
space:
mode:
authorBjoern Brandenburg <bbb@mpi-sws.org>2012-09-03 07:58:18 -0400
committerBjoern Brandenburg <bbb@mpi-sws.org>2012-10-18 16:14:03 -0400
commit173e46b1ea0305ab74ab8e6a4b4461e296b83922 (patch)
tree6245c6f340a896d20196ee92ec826572ca0ce285 /litmus/ctrldev.c
parent80e2d84533265a8231534f10c56d9eba01cec99a (diff)
Export IRQ count to control page
Also add some compile-time checks to detect unexpected offsets.
Diffstat (limited to 'litmus/ctrldev.c')
-rw-r--r--litmus/ctrldev.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/litmus/ctrldev.c b/litmus/ctrldev.c
index 9969ab17c190..41919b2714cb 100644
--- a/litmus/ctrldev.c
+++ b/litmus/ctrldev.c
@@ -133,6 +133,17 @@ static int __init init_litmus_ctrl_dev(void)
133 133
134 BUILD_BUG_ON(sizeof(struct control_page) > PAGE_SIZE); 134 BUILD_BUG_ON(sizeof(struct control_page) > PAGE_SIZE);
135 135
136 BUILD_BUG_ON(sizeof(union np_flag) != sizeof(uint64_t));
137
138 BUILD_BUG_ON(offsetof(struct control_page, sched.raw)
139 != LITMUS_CP_OFFSET_SCHED);
140 BUILD_BUG_ON(offsetof(struct control_page, irq_count)
141 != LITMUS_CP_OFFSET_IRQ_COUNT);
142 BUILD_BUG_ON(offsetof(struct control_page, ts_syscall_start)
143 != LITMUS_CP_OFFSET_TS_SC_START);
144 BUILD_BUG_ON(offsetof(struct control_page, irq_syscall_start)
145 != LITMUS_CP_OFFSET_IRQ_SC_START);
146
136 printk("Initializing LITMUS^RT control device.\n"); 147 printk("Initializing LITMUS^RT control device.\n");
137 err = misc_register(&litmus_ctrl_dev); 148 err = misc_register(&litmus_ctrl_dev);
138 if (err) 149 if (err)