-#define pset_hint_low(ps, p) \
-MACRO_BEGIN \
- if ((ps)->low_hint != PROCESSOR_NULL) { \
- if ((p) != (ps)->low_hint) { \
- if ((p)->runq.count < (ps)->low_hint->runq.count) \
- (ps)->low_hint = (p); \
- } \
- } \
- else \
- (ps)->low_hint = (p); \
-MACRO_END
-
-#define pset_hint_high(ps, p) \
-MACRO_BEGIN \
- if ((ps)->high_hint != PROCESSOR_NULL) { \
- if ((p) != (ps)->high_hint) { \
- if ((p)->runq.count > (ps)->high_hint->runq.count) \
- (ps)->high_hint = (p); \
- } \
- } \
- else \
- (ps)->high_hint = (p); \
+#define pset_pri_hint(ps, p, pri) \
+MACRO_BEGIN \
+ if ((p) != (ps)->low_pri) { \
+ if ((pri) < (ps)->low_pri->current_pri) \
+ (ps)->low_pri = (p); \
+ } \