should_yield: protect from td_swvoltick being uninitialized or too stale
The distance between ticks and td_swvoltick should be calculated as an unsigned number. Previously we could end up comparing a negative number with hogticks in which case should_yield() would give incorrect answer. We should probably ensure that td_swvoltick is properly initialized. Sponsored by: HybridCluster MFC after: 5 days
This commit is contained in:
parent
22e327d005
commit
44c288e149
@ -581,7 +581,7 @@ int
|
|||||||
should_yield(void)
|
should_yield(void)
|
||||||
{
|
{
|
||||||
|
|
||||||
return (ticks - curthread->td_swvoltick >= hogticks);
|
return ((unsigned int)(ticks - curthread->td_swvoltick) >= hogticks);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
Loading…
x
Reference in New Issue
Block a user