Lines Matching full:file
6 * Regular file handling primitives for NTFS-based filesystems.
55 long ntfs_ioctl(struct file *filp, u32 cmd, unsigned long arg)
72 long ntfs_compat_ioctl(struct file *filp, u32 cmd, unsigned long arg)
116 static int ntfs_extend_initialized_size(struct file *file,
276 struct file *file = desc->file;
277 struct inode *inode = file_inode(file);
330 err = ntfs_extend_initialized_size(file, ni,
344 struct file *file)
349 bool extend_init = file && pos > ni->i_valid;
365 err = ntfs_extend_initialized_size(file, ni, ni->i_valid, pos);
372 if (file && is_sparsed(ni)) {
374 * This code optimizes large writes to sparse file.
455 down_write(&ni->file.run_lock);
456 err = attr_set_size(ni, ATTR_DATA, NULL, 0, &ni->file.run, new_size,
458 up_write(&ni->file.run_lock);
486 * Preallocate space for a file. This implements ntfs's fallocate file
492 static long ntfs_fallocate(struct file *file, int mode, loff_t vbo, loff_t len)
494 struct inode *inode = file_inode(file);
643 /* Be sure file is non resident. */
714 &ni->file.run, i_size, &ni->i_valid,
725 err = file_modified(file);
852 struct file *file = iocb->ki_filp;
853 struct inode *inode = file_inode(file);
872 static ssize_t ntfs_file_splice_read(struct file *in, loff_t *ppos,
931 struct file *file = iocb->ki_filp;
934 struct inode *inode = file_inode(file);
965 err = file_remove_privs(file);
969 err = file_update_time(file);
1182 struct file *file = iocb->ki_filp;
1183 struct inode *inode = file_inode(file);
1220 ret = ntfs_extend(inode, iocb->ki_pos, ret, file);
1239 int ntfs_file_open(struct inode *inode, struct file *file)
1251 (file->f_flags & O_DIRECT))) {
1255 /* Decompress "external compressed" file if opened for rw. */
1257 (file->f_flags & (O_WRONLY | O_RDWR | O_TRUNC))) {
1271 return generic_file_open(inode, file);
1277 static int ntfs_file_release(struct inode *inode, struct file *file)
1285 ((file->f_mode & FMODE_WRITE) &&
1288 * The only file when inode->i_fop = &ntfs_file_operations and
1289 * init_rwsem(&ni->file.run_lock) is not called explicitly is MFT.
1295 down_write(&ni->file.run_lock);
1297 err = attr_set_size(ni, ATTR_DATA, NULL, 0, &ni->file.run,
1301 up_write(&ni->file.run_lock);
1337 struct file *file, loff_t *ppos,
1341 struct inode *inode = file_inode(file);
1347 return iter_file_splice_write(pipe, file, ppos, len, flags);