aboutsummaryrefslogtreecommitdiffstats
path: root/litmus/sched_psn_edf.c
diff options
context:
space:
mode:
authorBjoern B. Brandenburg <bbb@cs.unc.edu>2011-01-29 15:50:52 -0500
committerBjoern B. Brandenburg <bbb@cs.unc.edu>2011-02-01 16:53:21 -0500
commit7f0bd4c213ff8dca0eb3bdd887f5c62c8d30fab5 (patch)
tree99b45b5466dc27308e6d65751baf5e109eb37385 /litmus/sched_psn_edf.c
parentfab768a4cdc49ad7886cac0d0361f8432965a817 (diff)
fdso: pass userpsace config argument to object constructor
As Glenn pointed out, it is useful for some protocols (e.g., k-exclusion protocols) to know the userspace configuration at object creation time. This patch changes the fdso API to pass the parameter to the object constructor, which is then in turn passed to the lock allocater. The return code from the lock allocater is passed to userspace in return. This also fixes some null pointer dereferences in the FDSO code found by the test suite in liblitmus.
Diffstat (limited to 'litmus/sched_psn_edf.c')
-rw-r--r--litmus/sched_psn_edf.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/litmus/sched_psn_edf.c b/litmus/sched_psn_edf.c
index 801bc92c5835..abb06fa53e3a 100644
--- a/litmus/sched_psn_edf.c
+++ b/litmus/sched_psn_edf.c
@@ -547,7 +547,8 @@ static struct litmus_lock* psnedf_new_fmlp(void)
547/* **** lock constructor **** */ 547/* **** lock constructor **** */
548 548
549 549
550static long psnedf_allocate_lock(struct litmus_lock **lock, int type) 550static long psnedf_allocate_lock(struct litmus_lock **lock, int type,
551 void* __user unused)
551{ 552{
552 int err = -ENXIO; 553 int err = -ENXIO;
553 struct srp_semaphore* srp; 554 struct srp_semaphore* srp;