Lines Matching +full:add +full:- +full:fs

138  * initialise the /proc/fs/afs/ directory
146 proc_afs = proc_mkdir("fs/afs", NULL); in afs_proc_init()
164 remove_proc_entry("fs/afs", NULL); in afs_proc_init()
166 _leave(" = -ENOMEM"); in afs_proc_init()
167 return -ENOMEM; in afs_proc_init()
171 * clean up the /proc/fs/afs/ directory
177 remove_proc_entry("fs/afs", NULL); in afs_proc_cleanup()
181 * open "/proc/fs/afs/cells" which provides a summary of extant cells
192 m = file->private_data; in afs_proc_cells_open()
193 m->private = PDE(inode)->data; in afs_proc_cells_open()
240 atomic_read(&cell->usage), cell->name); in afs_proc_cells_show()
245 * handle writes to /proc/fs/afs/cells
246 * - to add cells: echo "add <cellname> <IP>[:<IP>][:<IP>]"
256 return -EINVAL; in afs_proc_cells_write()
260 return -ENOMEM; in afs_proc_cells_write()
262 ret = -EFAULT; in afs_proc_cells_write()
294 if (strcmp(kbuf, "add") == 0) { in afs_proc_cells_write()
317 ret = -EINVAL; in afs_proc_cells_write()
318 printk("kAFS: Invalid Command on /proc/fs/afs/cells file\n"); in afs_proc_cells_write()
323 * Stubs for /proc/fs/afs/rootcell
342 * handle writes to /proc/fs/afs/rootcell
343 * - to initialize rootcell: echo "cell.name:192.168.231.14"
354 return -EINVAL; in afs_proc_rootcell_write()
356 ret = -ENOMEM; in afs_proc_rootcell_write()
361 ret = -EFAULT; in afs_proc_rootcell_write()
386 * initialise /proc/fs/afs/<cell>/
392 _enter("%p{%s}", cell, cell->name); in afs_proc_cell_setup()
394 cell->proc_dir = proc_mkdir(cell->name, proc_afs); in afs_proc_cell_setup()
395 if (!cell->proc_dir) in afs_proc_cell_setup()
398 p = proc_create_data("servers", 0, cell->proc_dir, in afs_proc_cell_setup()
403 p = proc_create_data("vlservers", 0, cell->proc_dir, in afs_proc_cell_setup()
408 p = proc_create_data("volumes", 0, cell->proc_dir, in afs_proc_cell_setup()
417 remove_proc_entry("vlservers", cell->proc_dir); in afs_proc_cell_setup()
419 remove_proc_entry("servers", cell->proc_dir); in afs_proc_cell_setup()
421 remove_proc_entry(cell->name, proc_afs); in afs_proc_cell_setup()
423 _leave(" = -ENOMEM"); in afs_proc_cell_setup()
424 return -ENOMEM; in afs_proc_cell_setup()
428 * remove /proc/fs/afs/<cell>/
434 remove_proc_entry("volumes", cell->proc_dir); in afs_proc_cell_remove()
435 remove_proc_entry("vlservers", cell->proc_dir); in afs_proc_cell_remove()
436 remove_proc_entry("servers", cell->proc_dir); in afs_proc_cell_remove()
437 remove_proc_entry(cell->name, proc_afs); in afs_proc_cell_remove()
443 * open "/proc/fs/afs/<cell>/volumes" which provides a summary of extant cells
451 cell = PDE(inode)->data; in afs_proc_cell_volumes_open()
453 return -ENOENT; in afs_proc_cell_volumes_open()
459 m = file->private_data; in afs_proc_cell_volumes_open()
460 m->private = cell; in afs_proc_cell_volumes_open()
479 struct afs_cell *cell = m->private; in afs_proc_cell_volumes_start()
484 down_read(&cell->vl_sem); in afs_proc_cell_volumes_start()
485 return seq_list_start_head(&cell->vl_list, *_pos); in afs_proc_cell_volumes_start()
494 struct afs_cell *cell = p->private; in afs_proc_cell_volumes_next()
497 return seq_list_next(v, &cell->vl_list, _pos); in afs_proc_cell_volumes_next()
505 struct afs_cell *cell = p->private; in afs_proc_cell_volumes_stop()
507 up_read(&cell->vl_sem); in afs_proc_cell_volumes_stop()
525 struct afs_cell *cell = m->private; in afs_proc_cell_volumes_show()
530 if (v == &cell->vl_list) { in afs_proc_cell_volumes_show()
537 atomic_read(&vlocation->usage), in afs_proc_cell_volumes_show()
538 afs_vlocation_states[vlocation->state], in afs_proc_cell_volumes_show()
539 vlocation->vldb.vid[0], in afs_proc_cell_volumes_show()
540 vlocation->vldb.vid[1], in afs_proc_cell_volumes_show()
541 vlocation->vldb.vid[2], in afs_proc_cell_volumes_show()
542 vlocation->vldb.name); in afs_proc_cell_volumes_show()
548 * open "/proc/fs/afs/<cell>/vlservers" which provides a list of volume
557 cell = PDE(inode)->data; in afs_proc_cell_vlservers_open()
559 return -ENOENT; in afs_proc_cell_vlservers_open()
565 m = file->private_data; in afs_proc_cell_vlservers_open()
566 m->private = cell; in afs_proc_cell_vlservers_open()
586 struct afs_cell *cell = m->private; in afs_proc_cell_vlservers_start()
592 down_read(&cell->vl_sem); in afs_proc_cell_vlservers_start()
597 pos--; in afs_proc_cell_vlservers_start()
599 if (pos >= cell->vl_naddrs) in afs_proc_cell_vlservers_start()
602 return &cell->vl_addrs[pos]; in afs_proc_cell_vlservers_start()
611 struct afs_cell *cell = p->private; in afs_proc_cell_vlservers_next()
614 _enter("cell=%p{nad=%u} pos=%Ld", cell, cell->vl_naddrs, *_pos); in afs_proc_cell_vlservers_next()
618 if (pos >= cell->vl_naddrs) in afs_proc_cell_vlservers_next()
621 return &cell->vl_addrs[pos]; in afs_proc_cell_vlservers_next()
629 struct afs_cell *cell = p->private; in afs_proc_cell_vlservers_stop()
631 up_read(&cell->vl_sem); in afs_proc_cell_vlservers_stop()
648 seq_printf(m, "%pI4\n", &addr->s_addr); in afs_proc_cell_vlservers_show()
653 * open "/proc/fs/afs/<cell>/servers" which provides a summary of active
662 cell = PDE(inode)->data; in afs_proc_cell_servers_open()
664 return -ENOENT; in afs_proc_cell_servers_open()
670 m = file->private_data; in afs_proc_cell_servers_open()
671 m->private = cell; in afs_proc_cell_servers_open()
689 __acquires(m->private->servers_lock) in afs_proc_cell_servers_start()
691 struct afs_cell *cell = m->private; in afs_proc_cell_servers_start()
696 read_lock(&cell->servers_lock); in afs_proc_cell_servers_start()
697 return seq_list_start_head(&cell->servers, *_pos); in afs_proc_cell_servers_start()
706 struct afs_cell *cell = p->private; in afs_proc_cell_servers_next()
709 return seq_list_next(v, &cell->servers, _pos); in afs_proc_cell_servers_next()
716 __releases(p->private->servers_lock) in afs_proc_cell_servers_stop()
718 struct afs_cell *cell = p->private; in afs_proc_cell_servers_stop()
720 read_unlock(&cell->servers_lock); in afs_proc_cell_servers_stop()
728 struct afs_cell *cell = m->private; in afs_proc_cell_servers_show()
733 if (v == &cell->servers) { in afs_proc_cell_servers_show()
739 sprintf(ipaddr, "%pI4", &server->addr); in afs_proc_cell_servers_show()
740 seq_printf(m, "%3d %-15.15s %5d\n", in afs_proc_cell_servers_show()
741 atomic_read(&server->usage), ipaddr, server->fs_state); in afs_proc_cell_servers_show()