• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/src/router/busybox-1.x/e2fsprogs/old_e2fsprogs/ext2fs/

Lines Matching defs:bb

36 	ext2_u32_list	bb;
39 retval = ext2fs_get_mem(sizeof(struct ext2_struct_u32_list), &bb);
42 memset(bb, 0, sizeof(struct ext2_struct_u32_list));
43 bb->magic = EXT2_ET_MAGIC_BADBLOCKS_LIST;
44 bb->size = size ? size : 10;
45 bb->num = num;
46 retval = ext2fs_get_mem(bb->size * sizeof(blk_t), &bb->list);
47 if (!bb->list) {
48 ext2fs_free_mem(&bb);
52 memcpy(bb->list, list, bb->size * sizeof(blk_t));
54 memset(bb->list, 0, bb->size * sizeof(blk_t));
55 *ret = bb;
108 errcode_t ext2fs_u32_list_add(ext2_u32_list bb, __u32 blk)
114 EXT2_CHECK_MAGIC(bb, EXT2_ET_MAGIC_BADBLOCKS_LIST);
116 if (bb->num >= bb->size) {
117 old_size = bb->size * sizeof(__u32);
118 bb->size += 100;
119 retval = ext2fs_resize_mem(old_size, bb->size * sizeof(__u32),
120 &bb->list);
122 bb->size -= 100;
130 i = bb->num-1;
131 if ((bb->num != 0) && (bb->list[i] == blk))
133 if ((bb->num == 0) || (bb->list[i] < blk)) {
134 bb->list[bb->num++] = blk;
138 j = bb->num;
139 for (i=0; i < bb->num; i++) {
140 if (bb->list[i] == blk)
142 if (bb->list[i] > blk) {
147 for (i=bb->num; i > j; i--)
148 bb->list[i] = bb->list[i-1];
149 bb->list[j] = blk;
150 bb->num++;
154 errcode_t ext2fs_badblocks_list_add(ext2_badblocks_list bb, blk_t blk)
156 return ext2fs_u32_list_add((ext2_u32_list) bb, (__u32) blk);
163 int ext2fs_u32_list_find(ext2_u32_list bb, __u32 blk)
167 if (bb->magic != EXT2_ET_MAGIC_BADBLOCKS_LIST)
170 if (bb->num == 0)
174 high = bb->num-1;
175 if (blk == bb->list[low])
177 if (blk == bb->list[high])
184 if (blk == bb->list[mid])
186 if (blk < bb->list[mid])
198 int ext2fs_u32_list_test(ext2_u32_list bb, __u32 blk)
200 if (ext2fs_u32_list_find(bb, blk) < 0)
206 int ext2fs_badblocks_list_test(ext2_badblocks_list bb, blk_t blk)
208 return ext2fs_u32_list_test((ext2_u32_list) bb, (__u32) blk);
215 int ext2fs_u32_list_del(ext2_u32_list bb, __u32 blk)
219 if (bb->num == 0)
222 remloc = ext2fs_u32_list_find(bb, blk);
226 for (i = remloc; i < bb->num - 1; i++)
227 bb->list[i] = bb->list[i+1];
228 bb->num--;
232 void ext2fs_badblocks_list_del(ext2_u32_list bb, __u32 blk)
234 ext2fs_u32_list_del(bb, blk);
237 errcode_t ext2fs_u32_list_iterate_begin(ext2_u32_list bb,
243 EXT2_CHECK_MAGIC(bb, EXT2_ET_MAGIC_BADBLOCKS_LIST);
250 iter->bb = bb;
256 errcode_t ext2fs_badblocks_list_iterate_begin(ext2_badblocks_list bb,
259 return ext2fs_u32_list_iterate_begin((ext2_u32_list) bb,
266 ext2_u32_list bb;
271 bb = iter->bb;
273 if (bb->magic != EXT2_ET_MAGIC_BADBLOCKS_LIST)
276 if (iter->ptr < bb->num) {
277 *blk = bb->list[iter->ptr++];
296 iter->bb = 0;
325 int ext2fs_u32_list_count(ext2_u32_list bb)
327 return bb->num;