Lines Matching refs:file
2 /* * This file is part of UBIFS.
13 * This file implements directory operations.
15 * All FS operations in this file allocate budget before writing anything to the
22 * All operations in this file write all inodes which they change straight
25 * target inode. This was done to simplify file-system recovery which would
68 * @c: UBIFS file-system description object
91 * marking them dirty in file write path (see 'file_update_time()').
248 * This should not happen. Probably the file-system needs
347 ubifs_err(c, "cannot create regular file, error %d", err);
395 ubifs_err(c, "cannot create whiteout file, error %d", err);
505 ubifs_err(c, "cannot create temporary file, error %d", err);
551 * of the file description object.
556 static int ubifs_readdir(struct file *file, struct dir_context *ctx)
563 struct inode *dir = file_inode(file);
588 if (file->f_version == 0) {
590 * The file was seek'ed, which means that @file->private_data
593 * @file->private_data is NULL, and the below code is
596 kfree(file->private_data);
597 file->private_data = NULL;
601 * 'generic_file_llseek()' unconditionally sets @file->f_version to
602 * zero, and we use this for detecting whether the file was seek'ed.
604 file->f_version = 1;
608 ubifs_assert(c, !file->private_data);
609 if (!dir_emit_dots(file, ctx)) {
625 file->private_data = dent;
628 dent = file->private_data;
642 file->private_data = dent;
685 kfree(file->private_data);
687 file->private_data = dent;
692 kfree(file->private_data);
693 file->private_data = NULL;
715 static int ubifs_dir_release(struct inode *dir, struct file *file)
717 kfree(file->private_data);
718 file->private_data = NULL;
1668 * device based file systems, and it is not appropriate for UBIFS,
1693 static int ubifs_dir_open(struct inode *dir, struct file *file)