Lines Matching refs:mem2
703 struct mem *mem, *mem2;
753 mem2 = ptr_to_mem(mem->next);
754 if (mem2->used == 0) {
759 next = mem2->next;
762 if (lfree == mem2) {
765 mem2 = ptr_to_mem(ptr2);
766 mem2->used = 0;
768 mem2->next = next;
770 mem2->prev = ptr;
773 /* last thing to restore linked list: as we have moved mem2,
774 * let 'mem2->next->prev' point to mem2 again. but only if mem2->next is not
776 if (mem2->next != MEM_SIZE_ALIGNED) {
777 ptr_to_mem(mem2->next)->prev = ptr2;
791 mem2 = ptr_to_mem(ptr2);
792 if (mem2 < lfree) {
793 lfree = mem2;
795 mem2->used = 0;
796 mem2->next = mem->next;
797 mem2->prev = ptr;
799 if (mem2->next != MEM_SIZE_ALIGNED) {
800 ptr_to_mem(mem2->next)->prev = ptr2;
806 next struct mem is used but size between mem and mem2 is not big enough
834 struct mem *mem, *mem2;
897 * struct mem would fit in but no data between mem2 and mem2->next
904 /* create mem2 struct */
905 mem2 = ptr_to_mem(ptr2);
906 mem2->used = 0;
907 mem2->next = mem->next;
908 mem2->prev = ptr;
913 if (mem2->next != MEM_SIZE_ALIGNED) {
914 ptr_to_mem(mem2->next)->prev = ptr2;
918 /* (a mem2 struct does no fit into the user data space of mem and mem->next will always
921 * -> near fit or exact fit: do not split, no mem2 creation