diff --git a/sys/dev/random/yarrow.c b/sys/dev/random/yarrow.c index d882480f8a8..46c1a2cff30 100644 --- a/sys/dev/random/yarrow.c +++ b/sys/dev/random/yarrow.c @@ -43,6 +43,7 @@ #include #include #include +#include #include #include @@ -130,7 +131,7 @@ random_kthread(void *status) #ifdef DEBUG1 queuecount = 0; #endif - TAILQ_FOREACH(event, &harvestqueue, harvest) { + while (!TAILQ_EMPTY(&harvestqueue)) { #ifdef DEBUG1 queuecount++; #endif @@ -227,7 +228,7 @@ random_init(void) /* Start the hash/reseed thread */ error = kthread_create(random_kthread, &random_kthread_status, - &random_kthread_proc, 0, "random"); + &random_kthread_proc, RFHIGHPID, "random"); if (error != 0) return error; diff --git a/sys/dev/randomdev/yarrow.c b/sys/dev/randomdev/yarrow.c index d882480f8a8..46c1a2cff30 100644 --- a/sys/dev/randomdev/yarrow.c +++ b/sys/dev/randomdev/yarrow.c @@ -43,6 +43,7 @@ #include #include #include +#include #include #include @@ -130,7 +131,7 @@ random_kthread(void *status) #ifdef DEBUG1 queuecount = 0; #endif - TAILQ_FOREACH(event, &harvestqueue, harvest) { + while (!TAILQ_EMPTY(&harvestqueue)) { #ifdef DEBUG1 queuecount++; #endif @@ -227,7 +228,7 @@ random_init(void) /* Start the hash/reseed thread */ error = kthread_create(random_kthread, &random_kthread_status, - &random_kthread_proc, 0, "random"); + &random_kthread_proc, RFHIGHPID, "random"); if (error != 0) return error;