Lines Matching refs:new_zhdr

681 	struct z3fold_header *new_zhdr = NULL;  in compact_single_buddy()  local
713 new_zhdr = __z3fold_alloc(pool, sz, false); in compact_single_buddy()
714 if (!new_zhdr) in compact_single_buddy()
717 if (WARN_ON(new_zhdr == zhdr)) in compact_single_buddy()
720 new_bud = get_free_buddy(new_zhdr, chunks); in compact_single_buddy()
721 q = new_zhdr; in compact_single_buddy()
724 new_zhdr->first_chunks = chunks; in compact_single_buddy()
728 new_zhdr->middle_chunks = chunks; in compact_single_buddy()
729 new_zhdr->start_middle = in compact_single_buddy()
730 new_zhdr->first_chunks + ZHDR_CHUNKS; in compact_single_buddy()
731 q += new_zhdr->start_middle << CHUNK_SHIFT; in compact_single_buddy()
734 new_zhdr->last_chunks = chunks; in compact_single_buddy()
735 q += PAGE_SIZE - (new_zhdr->last_chunks << CHUNK_SHIFT); in compact_single_buddy()
740 new_zhdr->foreign_handles++; in compact_single_buddy()
743 *(unsigned long *)old_handle = (unsigned long)new_zhdr + in compact_single_buddy()
744 __idx(new_zhdr, new_bud); in compact_single_buddy()
747 (new_zhdr->last_chunks << BUDDY_SHIFT); in compact_single_buddy()
749 add_to_unbuddied(pool, new_zhdr); in compact_single_buddy()
750 z3fold_page_unlock(new_zhdr); in compact_single_buddy()
755 return new_zhdr; in compact_single_buddy()
758 if (new_zhdr) { in compact_single_buddy()
759 if (kref_put(&new_zhdr->refcount, release_z3fold_page_locked)) in compact_single_buddy()
762 add_to_unbuddied(pool, new_zhdr); in compact_single_buddy()
763 z3fold_page_unlock(new_zhdr); in compact_single_buddy()
1619 struct z3fold_header *zhdr, *new_zhdr; in z3fold_page_migrate() local
1642 new_zhdr = page_address(newpage); in z3fold_page_migrate()
1643 memcpy(new_zhdr, zhdr, PAGE_SIZE); in z3fold_page_migrate()
1647 spin_lock_init(&new_zhdr->page_lock); in z3fold_page_migrate()
1648 INIT_WORK(&new_zhdr->work, compact_page_work); in z3fold_page_migrate()
1653 INIT_LIST_HEAD(&new_zhdr->buddy); in z3fold_page_migrate()
1659 z3fold_page_lock(new_zhdr); in z3fold_page_migrate()
1660 if (new_zhdr->first_chunks) in z3fold_page_migrate()
1661 encode_handle(new_zhdr, FIRST); in z3fold_page_migrate()
1662 if (new_zhdr->last_chunks) in z3fold_page_migrate()
1663 encode_handle(new_zhdr, LAST); in z3fold_page_migrate()
1664 if (new_zhdr->middle_chunks) in z3fold_page_migrate()
1665 encode_handle(new_zhdr, MIDDLE); in z3fold_page_migrate()
1667 new_zhdr->cpu = smp_processor_id(); in z3fold_page_migrate()
1672 z3fold_page_unlock(new_zhdr); in z3fold_page_migrate()
1674 queue_work_on(new_zhdr->cpu, pool->compact_wq, &new_zhdr->work); in z3fold_page_migrate()