Lines Matching refs:ni

244 		struct ntfs_inode *ni = NTFS_I(dent_inode);  in ntfs_lookup()  local
262 ni = NTFS_I(dent_inode); in ntfs_lookup()
263 m = map_mft_record(ni); in ntfs_lookup()
270 ctx = ntfs_attr_get_search_ctx(ni, m); in ntfs_lookup()
301 unmap_mft_record(ni); in ntfs_lookup()
324 unmap_mft_record(ni); in ntfs_lookup()
331 static int ntfs_sd_add_everyone(struct ntfs_inode *ni) in ntfs_sd_add_everyone() argument
386 ret = ntfs_attr_add(ni, AT_SECURITY_DESCRIPTOR, AT_UNNAMED, 0, (u8 *)sd, in ntfs_sd_add_everyone()
389 ntfs_error(ni->vol->sb, "Failed to add SECURITY_DESCRIPTOR\n"); in ntfs_sd_add_everyone()
401 struct ntfs_inode *ni; in __ntfs_create() local
418 ni = NTFS_I(vi); in __ntfs_create()
419 ni->vol = dir_ni->vol; in __ntfs_create()
420 ni->name_len = 0; in __ntfs_create()
421 ni->name = NULL; in __ntfs_create()
430 NInoSetMstProtected(ni); in __ntfs_create()
431 ni->itype.index.block_size = 4096; in __ntfs_create()
432 ni->itype.index.block_size_bits = ntfs_ffs(4096) - 1; in __ntfs_create()
433 ni->itype.index.collation_rule = COLLATION_FILE_NAME; in __ntfs_create()
434 if (vol->cluster_size <= ni->itype.index.block_size) { in __ntfs_create()
435 ni->itype.index.vcn_size = vol->cluster_size; in __ntfs_create()
436 ni->itype.index.vcn_size_bits = in __ntfs_create()
439 ni->itype.index.vcn_size = vol->sector_size; in __ntfs_create()
440 ni->itype.index.vcn_size_bits = in __ntfs_create()
481 ni->i_crtime = inode_get_ctime(vi); in __ntfs_create()
483 inode_set_mtime_to_ts(dir, ni->i_crtime); in __ntfs_create()
484 inode_set_ctime_to_ts(dir, ni->i_crtime); in __ntfs_create()
487 err = ntfs_mft_record_alloc(dir_ni->vol, mode, &ni, NULL, in __ntfs_create()
503 vi->i_ino = (unsigned long)ni->mft_no; in __ntfs_create()
507 mutex_lock_nested(&ni->mrec_lock, NTFS_INODE_MUTEX_NORMAL); in __ntfs_create()
537 si->creation_time = si->last_data_change_time = utc2ntfs(ni->i_crtime); in __ntfs_create()
544 err = ntfs_attr_add(ni, AT_STANDARD_INFORMATION, AT_UNNAMED, 0, (u8 *)si, in __ntfs_create()
551 err = ntfs_sd_add_everyone(ni); in __ntfs_create()
571 ir->index_block_size = cpu_to_le32(ni->vol->index_record_size); in __ntfs_create()
572 if (ni->vol->cluster_size <= ni->vol->index_record_size) in __ntfs_create()
574 NTFS_B_TO_CLU(vol, ni->vol->index_record_size); in __ntfs_create()
577 ni->vol->index_record_size >> ni->vol->sector_size_bits; in __ntfs_create()
587 err = ntfs_attr_add(ni, AT_INDEX_ROOT, I30, 4, (u8 *)ir, ir_len); in __ntfs_create()
594 err = ntfs_attr_open(ni, AT_INDEX_ROOT, I30, 4); in __ntfs_create()
599 err = ntfs_attr_add(ni, AT_DATA, AT_UNNAMED, 0, NULL, 0); in __ntfs_create()
606 err = ntfs_attr_open(ni, AT_DATA, AT_UNNAMED, 0); in __ntfs_create()
611 err = ntfs_reparse_set_wsl_symlink(ni, target, target_len); in __ntfs_create()
617 ni->flags = FILE_ATTRIBUTE_RECALL_ON_OPEN; in __ntfs_create()
618 err = ntfs_reparse_set_wsl_not_symlink(ni, mode); in __ntfs_create()
639 fn->file_attributes |= ni->flags; in __ntfs_create()
648 fn->data_size = cpu_to_le64(ni->data_size); in __ntfs_create()
649 fn->allocated_size = cpu_to_le64(ni->allocated_size); in __ntfs_create()
658 fn->creation_time = fn->last_data_change_time = utc2ntfs(ni->i_crtime); in __ntfs_create()
663 err = ntfs_attr_add(ni, AT_FILE_NAME, AT_UNNAMED, 0, (u8 *)fn, fn_len); in __ntfs_create()
669 child_mft_ref = MK_MREF(ni->mft_no, in __ntfs_create()
673 mark_mft_record_dirty(ni); in __ntfs_create()
682 unmap_mft_record(ni); in __ntfs_create()
684 mutex_unlock(&ni->mrec_lock); in __ntfs_create()
686 ni->flags = fn->file_attributes; in __ntfs_create()
688 vi->i_generation = ni->seq_no; in __ntfs_create()
696 return ni; in __ntfs_create()
700 ntfs_attr_remove(ni, AT_SECURITY_DESCRIPTOR, AT_UNNAMED, 0); in __ntfs_create()
703 ntfs_attr_remove(ni, AT_DATA, AT_UNNAMED, 0); in __ntfs_create()
706 ntfs_delete_reparse_index(ni); in __ntfs_create()
712 while (ni->nr_extents != 0) { in __ntfs_create()
715 err2 = ntfs_mft_record_free(ni->vol, *(ni->ext.extent_ntfs_inos)); in __ntfs_create()
719 ntfs_inode_close(*(ni->ext.extent_ntfs_inos)); in __ntfs_create()
721 if (ntfs_mft_record_free(ni->vol, ni)) in __ntfs_create()
724 unmap_mft_record(ni); in __ntfs_create()
729 mutex_unlock(&ni->mrec_lock); in __ntfs_create()
740 struct ntfs_inode *ni; in ntfs_create() local
764 ni = __ntfs_create(idmap, dir, uname, uname_len, S_IFREG | mode, 0, NULL, 0); in ntfs_create()
766 if (IS_ERR(ni)) in ntfs_create()
767 return PTR_ERR(ni); in ntfs_create()
769 d_instantiate_new(dentry, VFS_I(ni)); in ntfs_create()
778 struct ntfs_inode *ni = ctx->base_ntfs_ino ? ctx->base_ntfs_ino : ctx->ntfs_ino; in ntfs_check_unlinkable_dir() local
781 ret = ntfs_check_empty_dir(ni, ni_mrec); in ntfs_check_unlinkable_dir()
804 struct ntfs_inode *ni = NTFS_I(vi); in ntfs_test_inode_attr() local
807 if (ni->mft_no != mft_no) in ntfs_test_inode_attr()
809 if (NInoAttr(ni) || ni->nr_extents == -1) in ntfs_test_inode_attr()
828 static int ntfs_delete(struct ntfs_inode *ni, struct ntfs_inode *dir_ni, in ntfs_delete() argument
843 mutex_lock_nested(&ni->mrec_lock, NTFS_INODE_MUTEX_NORMAL); in ntfs_delete()
849 if (ni->nr_extents == -1) in ntfs_delete()
850 ni = ni->ext.base_ntfs_ino; in ntfs_delete()
859 actx = ntfs_attr_get_search_ctx(ni, NULL); in ntfs_delete()
864 mutex_unlock(&ni->mrec_lock); in ntfs_delete()
879 s = ntfs_attr_name_get(ni->vol, fn->file_name, fn->file_name_length); in ntfs_delete()
910 ni->vol->upcase, ni->vol->upcase_len)) { in ntfs_delete()
948 if (!S_ISDIR(VFS_I(ni)->i_mode)) in ntfs_delete()
949 drop_nlink(VFS_I(ni)); in ntfs_delete()
951 mark_mft_record_dirty(ni); in ntfs_delete()
963 if (S_ISDIR(VFS_I(ni)->i_mode) && !le16_to_cpu(ni_mrec->link_count)) in ntfs_delete()
964 drop_nlink(VFS_I(ni)); in ntfs_delete()
972 NInoSetBeingDeleted(ni); in ntfs_delete()
973 ntfs_delete_reparse_index(ni); in ntfs_delete()
974 ntfs_delete_object_id_index(ni); in ntfs_delete()
981 mutex_unlock(&ni->mrec_lock); in ntfs_delete()
992 while ((attr_vi = ilookup5(sb, ni->mft_no, ntfs_test_inode_attr, in ntfs_delete()
993 (void *)(uintptr_t)ni->mft_no)) != NULL) { in ntfs_delete()
1004 mutex_unlock(&ni->mrec_lock); in ntfs_delete()
1015 struct ntfs_inode *ni = NTFS_I(vi); in ntfs_unlink() local
1039 err = ntfs_delete(ni, NTFS_I(dir), uname, uname_len, true); in ntfs_unlink()
1059 struct ntfs_inode *ni; in ntfs_mkdir() local
1083 ni = __ntfs_create(idmap, dir, uname, uname_len, S_IFDIR | mode, 0, NULL, 0); in ntfs_mkdir()
1085 if (IS_ERR(ni)) { in ntfs_mkdir()
1086 err = PTR_ERR(ni); in ntfs_mkdir()
1090 d_instantiate_new(dentry, VFS_I(ni)); in ntfs_mkdir()
1100 struct ntfs_inode *ni; in ntfs_rmdir() local
1107 ni = NTFS_I(vi); in ntfs_rmdir()
1125 err = ntfs_delete(ni, NTFS_I(dir), uname, uname_len, true); in ntfs_rmdir()
1147 static int __ntfs_link(struct ntfs_inode *ni, struct ntfs_inode *dir_ni, in __ntfs_link() argument
1151 struct inode *vi = VFS_I(ni); in __ntfs_link()
1159 if (NInoBeingDeleted(dir_ni) || NInoBeingDeleted(ni)) in __ntfs_link()
1162 ni_mrec = map_mft_record(ni); in __ntfs_link()
1193 fn->file_attributes = ni->flags; in __ntfs_link()
1198 if (NInoSparse(ni) || NInoCompressed(ni)) in __ntfs_link()
1200 cpu_to_le64(ni->itype.compressed.size); in __ntfs_link()
1202 fn->allocated_size = cpu_to_le64(ni->allocated_size); in __ntfs_link()
1203 fn->data_size = cpu_to_le64(ni->data_size); in __ntfs_link()
1208 fn->creation_time = utc2ntfs(ni->i_crtime); in __ntfs_link()
1215 err = ntfs_index_add_filename(dir_ni, fn, MK_MREF(ni->mft_no, in __ntfs_link()
1222 err = ntfs_attr_add(ni, AT_FILE_NAME, AT_UNNAMED, 0, (u8 *)fn, fn_len); in __ntfs_link()
1233 inc_nlink(VFS_I(ni)); in __ntfs_link()
1236 mark_mft_record_dirty(ni); in __ntfs_link()
1238 unmap_mft_record(ni); in __ntfs_link()
1248 unmap_mft_record(ni); in __ntfs_link()
1410 struct ntfs_inode *ni; in ntfs_symlink() local
1448 ni = __ntfs_create(idmap, dir, usrc, usrc_len, S_IFLNK | 0777, 0, in ntfs_symlink()
1452 if (IS_ERR(ni)) { in ntfs_symlink()
1453 err = PTR_ERR(ni); in ntfs_symlink()
1457 vi = VFS_I(ni); in ntfs_symlink()
1470 struct ntfs_inode *ni; in ntfs_mknod() local
1497 ni = __ntfs_create(idmap, dir, uname, uname_len, in ntfs_mknod()
1501 ni = __ntfs_create(idmap, dir, uname, uname_len, in ntfs_mknod()
1506 if (IS_ERR(ni)) { in ntfs_mknod()
1507 err = PTR_ERR(ni); in ntfs_mknod()
1511 d_instantiate_new(dentry, VFS_I(ni)); in ntfs_mknod()
1525 struct ntfs_inode *ni = NTFS_I(vi), *dir_ni = NTFS_I(dir); in ntfs_link() local
1543 mutex_lock_nested(&ni->mrec_lock, NTFS_INODE_MUTEX_NORMAL); in ntfs_link()
1548 mutex_unlock(&ni->mrec_lock); in ntfs_link()
1563 mutex_unlock(&ni->mrec_lock); in ntfs_link()
1607 struct ntfs_inode *ni = NTFS_I(vi); in ntfs_get_parent() local
1615 ntfs_debug("Entering for inode 0x%llx.", ni->mft_no); in ntfs_get_parent()
1617 mrec = map_mft_record(ni); in ntfs_get_parent()
1621 ctx = ntfs_attr_get_search_ctx(ni, mrec); in ntfs_get_parent()
1623 unmap_mft_record(ni); in ntfs_get_parent()
1631 unmap_mft_record(ni); in ntfs_get_parent()
1635 ni->mft_no); in ntfs_get_parent()
1650 unmap_mft_record(ni); in ntfs_get_parent()