summaryrefslogtreecommitdiff
path: root/kernel
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@home.transmeta.com>2002-11-08 17:38:27 -0800
committerLinus Torvalds <torvalds@home.transmeta.com>2002-11-08 17:38:27 -0800
commit6159963695d024ae2eba96f98df68264992b6d24 (patch)
tree625b79501fc192dbe4898b2c910a238f2dc260f2 /kernel
parentc0454a9f1b1357961e99c9d11b60356c1a1a0fb0 (diff)
Bit find operations return past the end on failure.
Diffstat (limited to 'kernel')
-rw-r--r--kernel/pid.c2
-rw-r--r--kernel/sched.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/kernel/pid.c b/kernel/pid.c
index 0005a8cc36cb..ed6adbba677b 100644
--- a/kernel/pid.c
+++ b/kernel/pid.c
@@ -131,7 +131,7 @@ next_map:
*/
scan_more:
offset = find_next_zero_bit(map->page, BITS_PER_PAGE, offset);
- if (offset == BITS_PER_PAGE)
+ if (offset >= BITS_PER_PAGE)
goto next_map;
if (test_and_set_bit(offset, map->page))
goto scan_more;
diff --git a/kernel/sched.c b/kernel/sched.c
index aa62ce0df85f..6821d73ff10b 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
@@ -770,7 +770,7 @@ skip_bitmap:
idx = sched_find_first_bit(array->bitmap);
else
idx = find_next_bit(array->bitmap, MAX_PRIO, idx);
- if (idx == MAX_PRIO) {
+ if (idx >= MAX_PRIO) {
if (array == busiest->expired) {
array = busiest->active;
goto new_array;