Lines Matching refs:sysnames
515 struct afs_sysnames *sysnames = net->sysnames; in afs_proc_sysname_show() local
518 if (i < sysnames->nr) in afs_proc_sysname_show()
519 seq_printf(m, "%s\n", sysnames->subs[i]); in afs_proc_sysname_show()
531 names = net->sysnames; in afs_proc_sysname_start()
540 struct afs_sysnames *names = net->sysnames; in afs_proc_sysname_next()
568 struct afs_sysnames *sysnames, *kill; in afs_proc_sysname_write() local
574 sysnames = kzalloc(sizeof(*sysnames), GFP_KERNEL); in afs_proc_sysname_write()
575 if (!sysnames) in afs_proc_sysname_write()
577 refcount_set(&sysnames->usage, 1); in afs_proc_sysname_write()
578 kill = sysnames; in afs_proc_sysname_write()
605 if (sysnames->nr >= AFS_NR_SYSNAME) in afs_proc_sysname_write()
617 sysnames->subs[sysnames->nr] = sub; in afs_proc_sysname_write()
618 sysnames->nr++; in afs_proc_sysname_write()
621 if (sysnames->nr == 0) { in afs_proc_sysname_write()
622 sysnames->subs[0] = sysnames->blank; in afs_proc_sysname_write()
623 sysnames->nr++; in afs_proc_sysname_write()
627 kill = net->sysnames; in afs_proc_sysname_write()
628 net->sysnames = sysnames; in afs_proc_sysname_write()
641 void afs_put_sysnames(struct afs_sysnames *sysnames) in afs_put_sysnames() argument
645 if (sysnames && refcount_dec_and_test(&sysnames->usage)) { in afs_put_sysnames()
646 for (i = 0; i < sysnames->nr; i++) in afs_put_sysnames()
647 if (sysnames->subs[i] != afs_init_sysname && in afs_put_sysnames()
648 sysnames->subs[i] != sysnames->blank) in afs_put_sysnames()
649 kfree(sysnames->subs[i]); in afs_put_sysnames()
650 kfree(sysnames); in afs_put_sysnames()