Lines Matching full:hi

56 	int hi;  in badblocks_check()  local
75 hi = bb->count; in badblocks_check()
77 /* Binary search between lo and hi for 'target' in badblocks_check()
80 /* INVARIANT: ranges before 'lo' and at-or-after 'hi' in badblocks_check()
82 * VARIANT: hi-lo is the number of possible in badblocks_check()
85 while (hi - lo > 1) { in badblocks_check()
86 int mid = (lo + hi) / 2; in badblocks_check()
96 hi = mid; in badblocks_check()
98 /* 'lo' might be the last that started before target, but 'hi' isn't */ in badblocks_check()
99 if (hi > lo) { in badblocks_check()
166 int lo, hi; in badblocks_set() local
188 hi = bb->count; in badblocks_set()
190 while (hi - lo > 1) { in badblocks_set()
191 int mid = (lo + hi) / 2; in badblocks_set()
197 hi = mid; in badblocks_set()
199 if (hi > lo && BB_OFFSET(p[lo]) > s) in badblocks_set()
200 hi = lo; in badblocks_set()
202 if (hi > lo) { in badblocks_set()
234 if (sectors && hi < bb->count) { in badblocks_set()
235 /* 'hi' points to the first range that starts after 's'. in badblocks_set()
238 sector_t a = BB_OFFSET(p[hi]); in badblocks_set()
239 sector_t e = a + BB_LEN(p[hi]); in badblocks_set()
240 int ack = BB_ACK(p[hi]); in badblocks_set()
253 p[hi] = BB_MAKE(a, e-a, ack); in badblocks_set()
256 p[hi] = BB_MAKE(a, BB_MAX_LEN, ack); in badblocks_set()
260 lo = hi; in badblocks_set()
261 hi++; in badblocks_set()
264 if (sectors == 0 && hi < bb->count) { in badblocks_set()
265 /* we might be able to combine lo and hi */ in badblocks_set()
267 sector_t a = BB_OFFSET(p[hi]); in badblocks_set()
269 int hilen = BB_LEN(p[hi]); in badblocks_set()
274 int ack = BB_ACK(p[lo]) && BB_ACK(p[hi]); in badblocks_set()
277 memmove(p + hi, p + hi + 1, in badblocks_set()
278 (bb->count - hi - 1) * 8); in badblocks_set()
284 * Need to add a range just before 'hi' in badblocks_set()
293 memmove(p + hi + 1, p + hi, in badblocks_set()
294 (bb->count - hi) * 8); in badblocks_set()
299 p[hi] = BB_MAKE(s, this_sectors, acknowledged); in badblocks_set()
333 int lo, hi; in badblocks_clear() local
353 hi = bb->count; in badblocks_clear()
355 while (hi - lo > 1) { in badblocks_clear()
356 int mid = (lo + hi) / 2; in badblocks_clear()
362 hi = mid; in badblocks_clear()
364 if (hi > lo) { in badblocks_clear()
389 hi = lo; in badblocks_clear()
407 /* 'lo' is strictly before, 'hi' is strictly after, in badblocks_clear()
410 if (hi - lo > 1) { in badblocks_clear()
411 memmove(p+lo+1, p+hi, (bb->count - hi) * 8); in badblocks_clear()
412 bb->count -= (hi - lo - 1); in badblocks_clear()