• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-WNDR4500v2-V1.0.0.60_1.0.38/src/linux/linux-2.6/fs/fuse/

Lines Matching refs:fc

81 void fuse_send_forget(struct fuse_conn *fc, struct fuse_req *req,
91 request_send_noreply(fc, req);
97 struct fuse_conn *fc = get_fuse_conn(inode);
99 fuse_send_forget(fc, fi->forget_req, fi->nodeid, fi->nlookup);
114 struct fuse_conn *fc = get_fuse_conn(inode);
123 spin_lock(&fc->lock);
125 spin_unlock(&fc->lock);
176 struct fuse_conn *fc = get_fuse_conn_super(sb);
186 inode->i_data.backing_dev_info = &fc->bdi;
197 spin_lock(&fc->lock);
199 spin_unlock(&fc->lock);
210 static void fuse_send_destroy(struct fuse_conn *fc)
212 struct fuse_req *req = fc->destroy_req;
213 if (req && fc->conn_init) {
214 fc->destroy_req = NULL;
217 request_send(fc, req);
218 fuse_put_request(fc, req);
224 struct fuse_conn *fc = get_fuse_conn_super(sb);
226 fuse_send_destroy(fc);
227 spin_lock(&fc->lock);
228 fc->connected = 0;
229 fc->blocked = 0;
230 spin_unlock(&fc->lock);
232 kill_fasync(&fc->fasync, SIGIO, POLL_IN);
233 wake_up_all(&fc->waitq);
234 wake_up_all(&fc->blocked_waitq);
236 list_del(&fc->entry);
237 fuse_ctl_remove_conn(fc);
239 fuse_conn_put(fc);
259 struct fuse_conn *fc = get_fuse_conn_super(sb);
264 req = fuse_get_req(fc);
274 fc->minor < 4 ? FUSE_COMPAT_STATFS_SIZE : sizeof(outarg);
276 request_send(fc, req);
280 fuse_put_request(fc, req);
388 struct fuse_conn *fc = get_fuse_conn_super(mnt->mnt_sb);
390 seq_printf(m, ",user_id=%u", fc->user_id);
391 seq_printf(m, ",group_id=%u", fc->group_id);
392 if (fc->flags & FUSE_DEFAULT_PERMISSIONS)
394 if (fc->flags & FUSE_ALLOW_OTHER)
396 if (fc->max_read != ~0)
397 seq_printf(m, ",max_read=%u", fc->max_read);
403 struct fuse_conn *fc;
405 fc = kzalloc(sizeof(*fc), GFP_KERNEL);
406 if (fc) {
407 spin_lock_init(&fc->lock);
408 mutex_init(&fc->inst_mutex);
409 atomic_set(&fc->count, 1);
410 init_waitqueue_head(&fc->waitq);
411 init_waitqueue_head(&fc->blocked_waitq);
412 INIT_LIST_HEAD(&fc->pending);
413 INIT_LIST_HEAD(&fc->processing);
414 INIT_LIST_HEAD(&fc->io);
415 INIT_LIST_HEAD(&fc->interrupts);
416 atomic_set(&fc->num_waiting, 0);
417 fc->bdi.ra_pages = (VM_MAX_READAHEAD * 1024) / PAGE_CACHE_SIZE;
418 fc->bdi.unplug_io_fn = default_unplug_io_fn;
419 fc->reqctr = 0;
420 fc->blocked = 1;
421 get_random_bytes(&fc->scramble_key, sizeof(fc->scramble_key));
423 return fc;
426 void fuse_conn_put(struct fuse_conn *fc)
428 if (atomic_dec_and_test(&fc->count)) {
429 if (fc->destroy_req)
430 fuse_request_free(fc->destroy_req);
431 mutex_destroy(&fc->inst_mutex);
432 kfree(fc);
436 struct fuse_conn *fuse_conn_get(struct fuse_conn *fc)
438 atomic_inc(&fc->count);
439 return fc;
465 static void process_init_reply(struct fuse_conn *fc, struct fuse_req *req)
470 fc->conn_error = 1;
477 fc->async_read = 1;
479 fc->no_lock = 1;
481 ra_pages = fc->max_read / PAGE_CACHE_SIZE;
482 fc->no_lock = 1;
485 fc->bdi.ra_pages = min(fc->bdi.ra_pages, ra_pages);
486 fc->minor = arg->minor;
487 fc->max_write = arg->minor < 5 ? 4096 : arg->max_write;
488 fc->conn_init = 1;
490 fuse_put_request(fc, req);
491 fc->blocked = 0;
492 wake_up_all(&fc->blocked_waitq);
495 static void fuse_send_init(struct fuse_conn *fc, struct fuse_req *req)
501 arg->max_readahead = fc->bdi.ra_pages * PAGE_CACHE_SIZE;
515 request_send_background(fc, req);
526 struct fuse_conn *fc;
561 fc = new_conn();
562 if (!fc)
565 fc->flags = d.flags;
566 fc->user_id = d.user_id;
567 fc->group_id = d.group_id;
568 fc->max_read = d.max_read;
571 sb->s_fs_info = fc;
589 fc->destroy_req = fuse_request_alloc();
590 if (!fc->destroy_req)
599 fc->id = conn_id();
600 err = fuse_ctl_add_conn(fc);
604 list_add_tail(&fc->entry, &fuse_conn_list);
606 fc->connected = 1;
607 file->private_data = fuse_conn_get(fc);
616 fuse_send_init(fc, init_req);
627 fuse_conn_put(fc);