+ int count = len;
+ for (size_t page = 0; page <= len / 8; page++)
+ {
+ if (count < 8)
+ {
+ for (size_t i = page * 8; i <= len; i++)
+ if (!bitarray_check(i, bit_array, len))
+ return 0;
+ count--;
+ }
+ else
+ {
+ if (!(bit_array[page] == 0xff))
+ return 0;
+ }
+ count -= 8;
+ }
+
+ return 1;
+}
+
+/*
+ * Ugly!.. reformat it.
+ */
+INLINE bool bitarray_blockFull(int idx, int offset, uint8_t *bit_array, size_t len)
+{
+ ASSERT((size_t)(idx + offset) <= len);
+
+ for (int i = idx; i <= idx + offset; i++)
+ if (!bitarray_check(i, bit_array, len))
+ return 0;