Re: What is the difference "z_reschedule_irqlock" and "z_reschedule“? why two implementations?
Andy Ross
Traditional locking in Zephyr is done with a single global "irq lock" (implemented on single processor systems with a straightforward interrupt mask). SMP allows for finer grained spinlocks, which have different semantics (though when !SMP the implementation is the same). It wasn't feasible to port the entirety of the Zephyr kernel to use the new scheme, though there are very few spots that need z_reschedule while holding a legacy lock (vs. just using an IPC primitive) and I'd expect this particular API to go away at some point in the future.
Andy
On 1/21/2020 12:28 AM, "曹子龙 wrote:
|
|