dfi               107 fs/ceph/dir.c  static int note_last_dentry(struct ceph_dir_file_info *dfi, const char *name,
dfi               113 fs/ceph/dir.c  	kfree(dfi->last_name);
dfi               114 fs/ceph/dir.c  	dfi->last_name = buf;
dfi               115 fs/ceph/dir.c  	memcpy(dfi->last_name, name, len);
dfi               116 fs/ceph/dir.c  	dfi->last_name[len] = 0;
dfi               117 fs/ceph/dir.c  	dfi->next_offset = next_offset;
dfi               118 fs/ceph/dir.c  	dout("note_last_dentry '%s'\n", dfi->last_name);
dfi               180 fs/ceph/dir.c  	struct ceph_dir_file_info *dfi = file->private_data;
dfi               227 fs/ceph/dir.c  			dfi->file_info.flags |= CEPH_F_ATEND;
dfi               279 fs/ceph/dir.c  		ret = note_last_dentry(dfi, last->d_name.name, last->d_name.len,
dfi               285 fs/ceph/dir.c  		if (dfi->readdir_cache_idx >= 0) {
dfi               286 fs/ceph/dir.c  			dfi->readdir_cache_idx = -1;
dfi               287 fs/ceph/dir.c  			dfi->dir_release_count = 0;
dfi               293 fs/ceph/dir.c  static bool need_send_readdir(struct ceph_dir_file_info *dfi, loff_t pos)
dfi               295 fs/ceph/dir.c  	if (!dfi->last_readdir)
dfi               298 fs/ceph/dir.c  		return !ceph_frag_contains_value(dfi->frag, fpos_hash(pos));
dfi               300 fs/ceph/dir.c  		return dfi->frag != fpos_frag(pos);
dfi               305 fs/ceph/dir.c  	struct ceph_dir_file_info *dfi = file->private_data;
dfi               316 fs/ceph/dir.c  	if (dfi->file_info.flags & CEPH_F_ATEND)
dfi               357 fs/ceph/dir.c  	if (need_send_readdir(dfi, ctx->pos)) {
dfi               363 fs/ceph/dir.c  		if (dfi->last_readdir) {
dfi               364 fs/ceph/dir.c  			ceph_mdsc_put_request(dfi->last_readdir);
dfi               365 fs/ceph/dir.c  			dfi->last_readdir = NULL;
dfi               379 fs/ceph/dir.c  		     ceph_vinop(inode), frag, dfi->last_name);
dfi               395 fs/ceph/dir.c  		if (dfi->last_name) {
dfi               396 fs/ceph/dir.c  			req->r_path2 = kstrdup(dfi->last_name, GFP_KERNEL);
dfi               406 fs/ceph/dir.c  		req->r_dir_release_cnt = dfi->dir_release_count;
dfi               407 fs/ceph/dir.c  		req->r_dir_ordered_cnt = dfi->dir_ordered_count;
dfi               408 fs/ceph/dir.c  		req->r_readdir_cache_idx = dfi->readdir_cache_idx;
dfi               409 fs/ceph/dir.c  		req->r_readdir_offset = dfi->next_offset;
dfi               433 fs/ceph/dir.c  				dfi->next_offset = req->r_readdir_offset;
dfi               436 fs/ceph/dir.c  							  dfi->next_offset,
dfi               441 fs/ceph/dir.c  		dfi->frag = frag;
dfi               442 fs/ceph/dir.c  		dfi->last_readdir = req;
dfi               445 fs/ceph/dir.c  			dfi->readdir_cache_idx = req->r_readdir_cache_idx;
dfi               446 fs/ceph/dir.c  			if (dfi->readdir_cache_idx < 0) {
dfi               448 fs/ceph/dir.c  				dfi->dir_ordered_count = 0;
dfi               450 fs/ceph/dir.c  				   dfi->next_offset == 2) {
dfi               453 fs/ceph/dir.c  				dfi->dir_release_count = req->r_dir_release_cnt;
dfi               454 fs/ceph/dir.c  				dfi->dir_ordered_count = req->r_dir_ordered_cnt;
dfi               459 fs/ceph/dir.c  			dfi->readdir_cache_idx = -1;
dfi               461 fs/ceph/dir.c  			dfi->dir_release_count = 0;
dfi               470 fs/ceph/dir.c  			err = note_last_dentry(dfi, rde->name, rde->name_len,
dfi               475 fs/ceph/dir.c  			dfi->next_offset = 2;
dfi               480 fs/ceph/dir.c  	rinfo = &dfi->last_readdir->r_reply_info;
dfi               482 fs/ceph/dir.c  	     dfi->frag, rinfo->dir_nr, ctx->pos,
dfi               526 fs/ceph/dir.c  	ceph_mdsc_put_request(dfi->last_readdir);
dfi               527 fs/ceph/dir.c  	dfi->last_readdir = NULL;
dfi               529 fs/ceph/dir.c  	if (dfi->next_offset > 2) {
dfi               530 fs/ceph/dir.c  		frag = dfi->frag;
dfi               535 fs/ceph/dir.c  	if (!ceph_frag_is_rightmost(dfi->frag)) {
dfi               536 fs/ceph/dir.c  		frag = ceph_frag_next(dfi->frag);
dfi               539 fs/ceph/dir.c  							dfi->next_offset, true);
dfi               544 fs/ceph/dir.c  			ctx->pos = ceph_make_fpos(frag, dfi->next_offset,
dfi               546 fs/ceph/dir.c  			kfree(dfi->last_name);
dfi               547 fs/ceph/dir.c  			dfi->last_name = NULL;
dfi               552 fs/ceph/dir.c  	dfi->file_info.flags |= CEPH_F_ATEND;
dfi               560 fs/ceph/dir.c  					dfi->dir_release_count) {
dfi               562 fs/ceph/dir.c  		if (dfi->dir_ordered_count ==
dfi               567 fs/ceph/dir.c  			BUG_ON(dfi->readdir_cache_idx < 0);
dfi               568 fs/ceph/dir.c  			i_size_write(inode, dfi->readdir_cache_idx *
dfi               573 fs/ceph/dir.c  		__ceph_dir_set_complete(ci, dfi->dir_release_count,
dfi               574 fs/ceph/dir.c  					dfi->dir_ordered_count);
dfi               582 fs/ceph/dir.c  static void reset_readdir(struct ceph_dir_file_info *dfi)
dfi               584 fs/ceph/dir.c  	if (dfi->last_readdir) {
dfi               585 fs/ceph/dir.c  		ceph_mdsc_put_request(dfi->last_readdir);
dfi               586 fs/ceph/dir.c  		dfi->last_readdir = NULL;
dfi               588 fs/ceph/dir.c  	kfree(dfi->last_name);
dfi               589 fs/ceph/dir.c  	dfi->last_name = NULL;
dfi               590 fs/ceph/dir.c  	dfi->dir_release_count = 0;
dfi               591 fs/ceph/dir.c  	dfi->readdir_cache_idx = -1;
dfi               592 fs/ceph/dir.c  	dfi->next_offset = 2;  /* compensate for . and .. */
dfi               593 fs/ceph/dir.c  	dfi->file_info.flags &= ~CEPH_F_ATEND;
dfi               600 fs/ceph/dir.c  static bool need_reset_readdir(struct ceph_dir_file_info *dfi, loff_t new_pos)
dfi               609 fs/ceph/dir.c  	} else if (dfi->frag != fpos_frag(new_pos)) {
dfi               612 fs/ceph/dir.c  	rinfo = dfi->last_readdir ? &dfi->last_readdir->r_reply_info : NULL;
dfi               622 fs/ceph/dir.c  	struct ceph_dir_file_info *dfi = file->private_data;
dfi               640 fs/ceph/dir.c  		if (need_reset_readdir(dfi, offset)) {
dfi               642 fs/ceph/dir.c  			reset_readdir(dfi);
dfi               646 fs/ceph/dir.c  			dfi->dir_release_count = 0;
dfi               647 fs/ceph/dir.c  			dfi->readdir_cache_idx = -1;
dfi               653 fs/ceph/dir.c  			dfi->file_info.flags &= ~CEPH_F_ATEND;
dfi              1736 fs/ceph/dir.c  	struct ceph_dir_file_info *dfi = file->private_data;
dfi              1745 fs/ceph/dir.c  	if (!dfi->dir_info) {
dfi              1746 fs/ceph/dir.c  		dfi->dir_info = kmalloc(bufsize, GFP_KERNEL);
dfi              1747 fs/ceph/dir.c  		if (!dfi->dir_info)
dfi              1749 fs/ceph/dir.c  		dfi->dir_info_len =
dfi              1750 fs/ceph/dir.c  			snprintf(dfi->dir_info, bufsize,
dfi              1770 fs/ceph/dir.c  	if (*ppos >= dfi->dir_info_len)
dfi              1772 fs/ceph/dir.c  	size = min_t(unsigned, size, dfi->dir_info_len-*ppos);
dfi              1773 fs/ceph/dir.c  	left = copy_to_user(buf, dfi->dir_info + *ppos, size);
dfi               213 fs/ceph/file.c 		struct ceph_dir_file_info *dfi =
dfi               215 fs/ceph/file.c 		if (!dfi) {
dfi               220 fs/ceph/file.c 		file->private_data = dfi;
dfi               221 fs/ceph/file.c 		fi = &dfi->file_info;
dfi               222 fs/ceph/file.c 		dfi->next_offset = 2;
dfi               223 fs/ceph/file.c 		dfi->readdir_cache_idx = -1;
dfi               541 fs/ceph/file.c 		struct ceph_dir_file_info *dfi = file->private_data;
dfi               543 fs/ceph/file.c 		WARN_ON(!list_empty(&dfi->file_info.rw_contexts));
dfi               545 fs/ceph/file.c 		ceph_put_fmode(ci, dfi->file_info.fmode);
dfi               547 fs/ceph/file.c 		if (dfi->last_readdir)
dfi               548 fs/ceph/file.c 			ceph_mdsc_put_request(dfi->last_readdir);
dfi               549 fs/ceph/file.c 		kfree(dfi->last_name);
dfi               550 fs/ceph/file.c 		kfree(dfi->dir_info);
dfi               551 fs/ceph/file.c 		kmem_cache_free(ceph_dir_file_cachep, dfi);
dfi               338 fs/udf/inode.c 	struct fileIdentDesc cfi, *sfi, *dfi;
dfi               389 fs/udf/inode.c 		dfi = (struct fileIdentDesc *)(dbh->b_data + dfibh.soffset);
dfi               390 fs/udf/inode.c 		if (udf_write_fi(inode, sfi, dfi, &dfibh, sfi->impUse,