X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Fkern%2Fproc_p.h;h=2b6855497da888086d113da6569ff19a7c61b0af;hb=e8b0472be10fba4ca6baa62d8d483db90e28c06e;hp=975f9b8a0b0e5620da3935868795b35b5170efaf;hpb=b46f64914c62fbb0297728280478681659469654;p=bertos.git diff --git a/bertos/kern/proc_p.h b/bertos/kern/proc_p.h index 975f9b8a..2b685549 100644 --- a/bertos/kern/proc_p.h +++ b/bertos/kern/proc_p.h @@ -78,6 +78,13 @@ extern REGISTER Process *current_process; extern REGISTER List proc_ready_list; #if CONFIG_KERN_PRI +# if CONFIG_KERN_PRI_INHERIT + #define __prio_orig(proc) (proc->orig_pri) + #define __prio_inh(proc) (LIST_EMPTY(&(proc)->inh_list) ? INT_MIN : \ + ((PriNode *)LIST_HEAD(&proc->inh_list))->pri) + #define __prio_proc(proc) (__prio_inh(proc) > __prio_orig(proc) ? \ + __prio_inh(proc) : __prio_orig(proc)) +# endif #define prio_next() (LIST_EMPTY(&proc_ready_list) ? INT_MIN : \ ((PriNode *)LIST_HEAD(&proc_ready_list))->pri) #define prio_proc(proc) (proc->link.pri)