Lines Matching full:ifp

38 	struct xfs_ifork	*ifp = xfs_ifork_ptr(ip, whichfork);  in xfs_init_local_fork()  local
53 ifp->if_u1.if_data = kmem_alloc(mem_size, KM_NOFS); in xfs_init_local_fork()
54 memcpy(ifp->if_u1.if_data, data, size); in xfs_init_local_fork()
56 ifp->if_u1.if_data[size] = '\0'; in xfs_init_local_fork()
58 ifp->if_u1.if_data = NULL; in xfs_init_local_fork()
61 ifp->if_bytes = size; in xfs_init_local_fork()
105 struct xfs_ifork *ifp = xfs_ifork_ptr(ip, whichfork); in xfs_iformat_extents() local
127 ifp->if_bytes = 0; in xfs_iformat_extents()
128 ifp->if_u1.if_root = NULL; in xfs_iformat_extents()
129 ifp->if_height = 0; in xfs_iformat_extents()
133 xfs_iext_first(ifp, &icur); in xfs_iformat_extents()
149 xfs_iext_next(ifp, &icur); in xfs_iformat_extents()
171 struct xfs_ifork *ifp; in xfs_iformat_btree() local
177 ifp = xfs_ifork_ptr(ip, whichfork); in xfs_iformat_btree()
190 if (unlikely(ifp->if_nextents <= XFS_IFORK_MAXEXT(ip, whichfork) || in xfs_iformat_btree()
194 ifp->if_nextents > ip->i_nblocks) || in xfs_iformat_btree()
204 ifp->if_broot_bytes = size; in xfs_iformat_btree()
205 ifp->if_broot = kmem_alloc(size, KM_NOFS); in xfs_iformat_btree()
206 ASSERT(ifp->if_broot != NULL); in xfs_iformat_btree()
212 ifp->if_broot, size); in xfs_iformat_btree()
214 ifp->if_bytes = 0; in xfs_iformat_btree()
215 ifp->if_u1.if_root = NULL; in xfs_iformat_btree()
216 ifp->if_height = 0; in xfs_iformat_btree()
378 struct xfs_ifork *ifp; in xfs_iroot_realloc() local
392 ifp = xfs_ifork_ptr(ip, whichfork); in xfs_iroot_realloc()
398 if (ifp->if_broot_bytes == 0) { in xfs_iroot_realloc()
400 ifp->if_broot = kmem_alloc(new_size, KM_NOFS); in xfs_iroot_realloc()
401 ifp->if_broot_bytes = (int)new_size; in xfs_iroot_realloc()
411 cur_max = xfs_bmbt_maxrecs(mp, ifp->if_broot_bytes, 0); in xfs_iroot_realloc()
414 ifp->if_broot = krealloc(ifp->if_broot, new_size, in xfs_iroot_realloc()
416 op = (char *)XFS_BMAP_BROOT_PTR_ADDR(mp, ifp->if_broot, 1, in xfs_iroot_realloc()
417 ifp->if_broot_bytes); in xfs_iroot_realloc()
418 np = (char *)XFS_BMAP_BROOT_PTR_ADDR(mp, ifp->if_broot, 1, in xfs_iroot_realloc()
420 ifp->if_broot_bytes = (int)new_size; in xfs_iroot_realloc()
421 ASSERT(XFS_BMAP_BMDR_SPACE(ifp->if_broot) <= in xfs_iroot_realloc()
432 ASSERT((ifp->if_broot != NULL) && (ifp->if_broot_bytes > 0)); in xfs_iroot_realloc()
433 cur_max = xfs_bmbt_maxrecs(mp, ifp->if_broot_bytes, 0); in xfs_iroot_realloc()
445 memcpy(new_broot, ifp->if_broot, in xfs_iroot_realloc()
458 op = (char *)XFS_BMBT_KEY_ADDR(mp, ifp->if_broot, 1); in xfs_iroot_realloc()
465 op = (char *)XFS_BMAP_BROOT_PTR_ADDR(mp, ifp->if_broot, 1, in xfs_iroot_realloc()
466 ifp->if_broot_bytes); in xfs_iroot_realloc()
471 kmem_free(ifp->if_broot); in xfs_iroot_realloc()
472 ifp->if_broot = new_broot; in xfs_iroot_realloc()
473 ifp->if_broot_bytes = (int)new_size; in xfs_iroot_realloc()
474 if (ifp->if_broot) in xfs_iroot_realloc()
475 ASSERT(XFS_BMAP_BMDR_SPACE(ifp->if_broot) <= in xfs_iroot_realloc()
502 struct xfs_ifork *ifp = xfs_ifork_ptr(ip, whichfork); in xfs_idata_realloc() local
503 int64_t new_size = ifp->if_bytes + byte_diff; in xfs_idata_realloc()
512 kmem_free(ifp->if_u1.if_data); in xfs_idata_realloc()
513 ifp->if_u1.if_data = NULL; in xfs_idata_realloc()
514 ifp->if_bytes = 0; in xfs_idata_realloc()
518 ifp->if_u1.if_data = krealloc(ifp->if_u1.if_data, new_size, in xfs_idata_realloc()
520 ifp->if_bytes = new_size; in xfs_idata_realloc()
525 struct xfs_ifork *ifp) in xfs_idestroy_fork() argument
527 if (ifp->if_broot != NULL) { in xfs_idestroy_fork()
528 kmem_free(ifp->if_broot); in xfs_idestroy_fork()
529 ifp->if_broot = NULL; in xfs_idestroy_fork()
532 switch (ifp->if_format) { in xfs_idestroy_fork()
534 kmem_free(ifp->if_u1.if_data); in xfs_idestroy_fork()
535 ifp->if_u1.if_data = NULL; in xfs_idestroy_fork()
539 if (ifp->if_height) in xfs_idestroy_fork()
540 xfs_iext_destroy(ifp); in xfs_idestroy_fork()
561 struct xfs_ifork *ifp = xfs_ifork_ptr(ip, whichfork); in xfs_iextents_copy() local
567 ASSERT(ifp->if_bytes > 0); in xfs_iextents_copy()
569 for_each_xfs_iext(ifp, &icur, &rec) { in xfs_iextents_copy()
580 ASSERT(copied <= ifp->if_bytes); in xfs_iextents_copy()
602 struct xfs_ifork *ifp; in xfs_iflush_fork() local
613 ifp = xfs_ifork_ptr(ip, whichfork); in xfs_iflush_fork()
618 if (!ifp) { in xfs_iflush_fork()
624 switch (ifp->if_format) { in xfs_iflush_fork()
627 (ifp->if_bytes > 0)) { in xfs_iflush_fork()
628 ASSERT(ifp->if_u1.if_data != NULL); in xfs_iflush_fork()
629 ASSERT(ifp->if_bytes <= xfs_inode_fork_size(ip, whichfork)); in xfs_iflush_fork()
630 memcpy(cp, ifp->if_u1.if_data, ifp->if_bytes); in xfs_iflush_fork()
636 (ifp->if_bytes > 0)) { in xfs_iflush_fork()
637 ASSERT(ifp->if_nextents > 0); in xfs_iflush_fork()
645 (ifp->if_broot_bytes > 0)) { in xfs_iflush_fork()
646 ASSERT(ifp->if_broot != NULL); in xfs_iflush_fork()
647 ASSERT(XFS_BMAP_BMDR_SPACE(ifp->if_broot) <= in xfs_iflush_fork()
649 xfs_bmbt_to_bmdr(mp, ifp->if_broot, ifp->if_broot_bytes, in xfs_iflush_fork()
729 struct xfs_ifork *ifp = &ip->i_af; in xfs_ifork_verify_local_attr() local
739 ifp->if_u1.if_data, ifp->if_bytes, fa); in xfs_ifork_verify_local_attr()
752 struct xfs_ifork *ifp = xfs_ifork_ptr(ip, whichfork); in xfs_iext_count_may_overflow() local
765 nr_exts = ifp->if_nextents + nr_to_add; in xfs_iext_count_may_overflow()
766 if (nr_exts < ifp->if_nextents || nr_exts > max_exts) in xfs_iext_count_may_overflow()