Lines Matching refs:iter

1480 	kcdata_iter_t iter;  in kcdata_iter()  local
1481 iter.item = (kcdata_item_t) buffer; in kcdata_iter()
1482 iter.end = (void*) (((uintptr_t)buffer) + size); in kcdata_iter()
1483 return iter; in kcdata_iter()
1493 kcdata_iter_t iter; in kcdata_iter_unsafe() local
1494 iter.item = (kcdata_item_t) buffer; in kcdata_iter_unsafe()
1495 iter.end = (void*) (uintptr_t) ~0; in kcdata_iter_unsafe()
1496 return iter; in kcdata_iter_unsafe()
1503 kcdata_iter_valid(kcdata_iter_t iter) in kcdata_iter_valid() argument
1506 ((uintptr_t)iter.item + sizeof(struct kcdata_item) <= (uintptr_t)iter.end) && in kcdata_iter_valid()
1507 … ((uintptr_t)iter.item + sizeof(struct kcdata_item) + iter.item->size <= (uintptr_t)iter.end); in kcdata_iter_valid()
1513 kcdata_iter_next(kcdata_iter_t iter) in kcdata_iter_next() argument
1515 …iter.item = (kcdata_item_t) (((uintptr_t)iter.item) + sizeof(struct kcdata_item) + (iter.item->siz… in kcdata_iter_next()
1516 return iter; in kcdata_iter_next()
1520 kcdata_iter_type(kcdata_iter_t iter) in kcdata_iter_type() argument
1522 if ((iter.item->type & ~0xfu) == KCDATA_TYPE_ARRAY_PAD0) { in kcdata_iter_type()
1525 return iter.item->type; in kcdata_iter_type()
1544 kcdata_iter_is_legacy_item(kcdata_iter_t iter, uint32_t legacy_size) in kcdata_iter_is_legacy_item() argument
1547 return iter.item->size == legacy_size_padded && in kcdata_iter_is_legacy_item()
1548 … (iter.item->flags & (KCDATA_FLAGS_STRUCT_PADDING_MASK | KCDATA_FLAGS_STRUCT_HAS_PADDING)) == 0; in kcdata_iter_is_legacy_item()
1552 kcdata_iter_size(kcdata_iter_t iter) in kcdata_iter_size() argument
1556 switch (kcdata_iter_type(iter)) { in kcdata_iter_size()
1559 return iter.item->size; in kcdata_iter_size()
1562 if (kcdata_iter_is_legacy_item(iter, legacy_size)) { in kcdata_iter_size()
1570 if (kcdata_iter_is_legacy_item(iter, legacy_size)) { in kcdata_iter_size()
1578 if (iter.item->size < kcdata_flags_get_padding(iter.item->flags)) { in kcdata_iter_size()
1581 return iter.item->size - kcdata_flags_get_padding(iter.item->flags); in kcdata_iter_size()
1587 kcdata_iter_flags(kcdata_iter_t iter) in kcdata_iter_flags() argument
1589 return iter.item->flags; in kcdata_iter_flags()
1594 kcdata_iter_payload(kcdata_iter_t iter) in kcdata_iter_payload() argument
1596 return &iter.item->data; in kcdata_iter_payload()
1602 kcdata_iter_array_elem_type(kcdata_iter_t iter) in kcdata_iter_array_elem_type() argument
1604 return (iter.item->flags >> 32) & UINT32_MAX; in kcdata_iter_array_elem_type()
1609 kcdata_iter_array_elem_count(kcdata_iter_t iter) in kcdata_iter_array_elem_count() argument
1611 return (iter.item->flags) & UINT32_MAX; in kcdata_iter_array_elem_count()
1624 kcdata_iter_array_size_switch(kcdata_iter_t iter) in kcdata_iter_array_size_switch() argument
1626 switch (kcdata_iter_array_elem_type(iter)) { in kcdata_iter_array_size_switch()
1652 kcdata_iter_array_valid(kcdata_iter_t iter) in kcdata_iter_array_valid() argument
1654 if (!kcdata_iter_valid(iter)) { in kcdata_iter_array_valid()
1657 if (kcdata_iter_type(iter) != KCDATA_TYPE_ARRAY) { in kcdata_iter_array_valid()
1660 if (kcdata_iter_array_elem_count(iter) == 0) { in kcdata_iter_array_valid()
1661 return iter.item->size == 0; in kcdata_iter_array_valid()
1663 if (iter.item->type == KCDATA_TYPE_ARRAY) { in kcdata_iter_array_valid()
1664 uint32_t elem_size = kcdata_iter_array_size_switch(iter); in kcdata_iter_array_valid()
1670 kcdata_iter_array_elem_count(iter) <= iter.item->size / elem_size && in kcdata_iter_array_valid()
1671 iter.item->size % kcdata_iter_array_elem_count(iter) < 16; in kcdata_iter_array_valid()
1674 (iter.item->type & 0xf) <= iter.item->size && in kcdata_iter_array_valid()
1675 kcdata_iter_array_elem_count(iter) <= iter.item->size - (iter.item->type & 0xf) && in kcdata_iter_array_valid()
1676 (iter.item->size - (iter.item->type & 0xf)) % kcdata_iter_array_elem_count(iter) == 0; in kcdata_iter_array_valid()
1683 kcdata_iter_array_elem_size(kcdata_iter_t iter) in kcdata_iter_array_elem_size() argument
1685 if (iter.item->type == KCDATA_TYPE_ARRAY) { in kcdata_iter_array_elem_size()
1686 return kcdata_iter_array_size_switch(iter); in kcdata_iter_array_elem_size()
1688 if (kcdata_iter_array_elem_count(iter) == 0) { in kcdata_iter_array_elem_size()
1691 return (iter.item->size - (iter.item->type & 0xf)) / kcdata_iter_array_elem_count(iter); in kcdata_iter_array_elem_size()
1696 kcdata_iter_container_valid(kcdata_iter_t iter) in kcdata_iter_container_valid() argument
1699 kcdata_iter_valid(iter) && in kcdata_iter_container_valid()
1700 kcdata_iter_type(iter) == KCDATA_TYPE_CONTAINER_BEGIN && in kcdata_iter_container_valid()
1701 iter.item->size >= sizeof(uint32_t); in kcdata_iter_container_valid()
1706 kcdata_iter_container_type(kcdata_iter_t iter) in kcdata_iter_container_type() argument
1708 return *(uint32_t *) kcdata_iter_payload(iter); in kcdata_iter_container_type()
1713 kcdata_iter_container_id(kcdata_iter_t iter) in kcdata_iter_container_id() argument
1715 return iter.item->flags; in kcdata_iter_container_id()
1719 … KCDATA_ITER_FOREACH(iter) for(; kcdata_iter_valid(iter) && iter.item->type != KCDATA_TYPE_BUFFER_… argument
1720 #define KCDATA_ITER_FOREACH_FAILED(iter) (!kcdata_iter_valid(iter) || (iter).item->type != KCDATA_T… argument
1724 kcdata_iter_find_type(kcdata_iter_t iter, uint32_t type) in kcdata_iter_find_type() argument
1726 KCDATA_ITER_FOREACH(iter) in kcdata_iter_find_type()
1728 if (kcdata_iter_type(iter) == type) { in kcdata_iter_find_type()
1729 return iter; in kcdata_iter_find_type()
1737 kcdata_iter_data_with_desc_valid(kcdata_iter_t iter, uint32_t minsize) in kcdata_iter_data_with_desc_valid() argument
1740 kcdata_iter_valid(iter) && in kcdata_iter_data_with_desc_valid()
1741 kcdata_iter_size(iter) >= KCDATA_DESC_MAXLEN + minsize && in kcdata_iter_data_with_desc_valid()
1742 ((char*)kcdata_iter_payload(iter))[KCDATA_DESC_MAXLEN - 1] == 0; in kcdata_iter_data_with_desc_valid()
1747 kcdata_iter_string(kcdata_iter_t iter, uint32_t offset) in kcdata_iter_string() argument
1749 if (offset > kcdata_iter_size(iter)) { in kcdata_iter_string()
1752 uint32_t maxlen = kcdata_iter_size(iter) - offset; in kcdata_iter_string()
1753 char *s = ((char*)kcdata_iter_payload(iter)) + offset; in kcdata_iter_string()
1762 kcdata_iter_get_data_with_desc(kcdata_iter_t iter, char **desc_ptr, void **data_ptr, uint32_t *size… in kcdata_iter_get_data_with_desc() argument
1765 *desc_ptr = (char *)kcdata_iter_payload(iter); in kcdata_iter_get_data_with_desc()
1768 *data_ptr = (void *)((uintptr_t)kcdata_iter_payload(iter) + KCDATA_DESC_MAXLEN); in kcdata_iter_get_data_with_desc()
1771 *size_ptr = kcdata_iter_size(iter) - KCDATA_DESC_MAXLEN; in kcdata_iter_get_data_with_desc()