Commit 8cb37040 authored by Philippe Gerum's avatar Philippe Gerum
Browse files

drivers/evl: hectic: stop disabling preemption manually



Given the semantics of an evl_flag, disabling preemption manually
around the evl_raise_flag(to_flag) -> evl_wait_flag(from_flag)
sequence does not make sense.
Signed-off-by: default avatarPhilippe Gerum <rpm@xenomai.org>
parent 0121deae
......@@ -173,18 +173,15 @@ static int rtswitch_to_rt(struct rtswitch_context *ctx,
evl_abs_timeout(&ctx->wake_up_delay,
ctx->pause_us * 1000),
EVL_INFINITE);
evl_disable_preempt();
} else
switch (to->base.flags & HECTIC_OOB_WAIT) {
case HECTIC_INBAND_WAIT:
ctx->utask = to;
barrier();
irq_work_queue(&ctx->wake_utask);
evl_disable_preempt();
break;
case HECTIC_OOB_WAIT:
evl_disable_preempt();
evl_raise_flag(&to->rt_synch);
break;
......@@ -193,8 +190,6 @@ static int rtswitch_to_rt(struct rtswitch_context *ctx,
}
rc = evl_wait_flag(&from->rt_synch);
evl_enable_preempt();
if (rc < 0)
return rc;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment