Lines Matching refs:oo
391 struct nfs4_openowner *oo; in find_openstateowner_str() local
394 oo = find_openstateowner_str_locked(hashval, open, clp); in find_openstateowner_str()
396 return oo; in find_openstateowner_str()
1420 static void unhash_openowner_locked(struct nfs4_openowner *oo) in unhash_openowner_locked() argument
1422 struct nfs4_client *clp = oo->oo_owner.so_client; in unhash_openowner_locked()
1426 list_del_init(&oo->oo_owner.so_strhash); in unhash_openowner_locked()
1427 list_del_init(&oo->oo_perclient); in unhash_openowner_locked()
1430 static void release_last_closed_stateid(struct nfs4_openowner *oo) in release_last_closed_stateid() argument
1432 struct nfsd_net *nn = net_generic(oo->oo_owner.so_client->net, in release_last_closed_stateid()
1437 s = oo->oo_last_closed_stid; in release_last_closed_stateid()
1439 list_del_init(&oo->oo_close_lru); in release_last_closed_stateid()
1440 oo->oo_last_closed_stid = NULL; in release_last_closed_stateid()
1447 static void release_openowner(struct nfs4_openowner *oo) in release_openowner() argument
1450 struct nfs4_client *clp = oo->oo_owner.so_client; in release_openowner()
1456 unhash_openowner_locked(oo); in release_openowner()
1457 while (!list_empty(&oo->oo_owner.so_stateids)) { in release_openowner()
1458 stp = list_first_entry(&oo->oo_owner.so_stateids, in release_openowner()
1465 release_last_closed_stateid(oo); in release_openowner()
1466 nfs4_put_stateowner(&oo->oo_owner); in release_openowner()
2004 struct nfs4_openowner *oo; in __destroy_client() local
2027 oo = list_entry(clp->cl_openowners.next, struct nfs4_openowner, oo_perclient); in __destroy_client()
2028 nfs4_get_stateowner(&oo->oo_owner); in __destroy_client()
2029 release_openowner(oo); in __destroy_client()
2359 static void nfs4_show_owner(struct seq_file *s, struct nfs4_stateowner *oo) in nfs4_show_owner() argument
2362 seq_quote_mem(s, oo->so_owner.data, oo->so_owner.len); in nfs4_show_owner()
2370 struct nfs4_stateowner *oo; in nfs4_show_open() local
2376 oo = ols->st_stateowner; in nfs4_show_open()
2394 nfs4_show_owner(s, oo); in nfs4_show_open()
2406 struct nfs4_stateowner *oo; in nfs4_show_lock() local
2409 oo = ols->st_stateowner; in nfs4_show_lock()
2425 nfs4_show_owner(s, oo); in nfs4_show_lock()
2918 struct nfs4_openowner *oo; in client_has_openowners() local
2920 list_for_each_entry(oo, &clp->cl_openowners, oo_perclient) { in client_has_openowners()
2921 if (!list_empty(&oo->oo_owner.so_stateids)) in client_has_openowners()
4068 static void hash_openowner(struct nfs4_openowner *oo, struct nfs4_client *clp, unsigned int strhash… in hash_openowner() argument
4072 list_add(&oo->oo_owner.so_strhash, in hash_openowner()
4074 list_add(&oo->oo_perclient, &clp->cl_openowners); in hash_openowner()
4084 struct nfs4_openowner *oo = openowner(so); in nfs4_free_openowner() local
4086 kmem_cache_free(openowner_slab, oo); in nfs4_free_openowner()
4098 struct nfs4_openowner *oo = open->op_openowner; in nfsd4_find_existing_open() local
4106 if (local->st_stateowner != &oo->oo_owner) in nfsd4_find_existing_open()
4169 struct nfs4_openowner *oo, *ret; in alloc_init_open_stateowner() local
4171 oo = alloc_stateowner(openowner_slab, &open->op_owner, clp); in alloc_init_open_stateowner()
4172 if (!oo) in alloc_init_open_stateowner()
4174 oo->oo_owner.so_ops = &openowner_ops; in alloc_init_open_stateowner()
4175 oo->oo_owner.so_is_open_owner = 1; in alloc_init_open_stateowner()
4176 oo->oo_owner.so_seqid = open->op_seqid; in alloc_init_open_stateowner()
4177 oo->oo_flags = 0; in alloc_init_open_stateowner()
4179 oo->oo_flags |= NFS4_OO_CONFIRMED; in alloc_init_open_stateowner()
4180 oo->oo_time = 0; in alloc_init_open_stateowner()
4181 oo->oo_last_closed_stid = NULL; in alloc_init_open_stateowner()
4182 INIT_LIST_HEAD(&oo->oo_close_lru); in alloc_init_open_stateowner()
4186 hash_openowner(oo, clp, strhashval); in alloc_init_open_stateowner()
4187 ret = oo; in alloc_init_open_stateowner()
4189 nfs4_free_stateowner(&oo->oo_owner); in alloc_init_open_stateowner()
4199 struct nfs4_openowner *oo = open->op_openowner; in init_open_stateid() local
4209 spin_lock(&oo->oo_owner.so_client->cl_lock); in init_open_stateid()
4220 stp->st_stateowner = nfs4_get_stateowner(&oo->oo_owner); in init_open_stateid()
4226 list_add(&stp->st_perstateowner, &oo->oo_owner.so_stateids); in init_open_stateid()
4231 spin_unlock(&oo->oo_owner.so_client->cl_lock); in init_open_stateid()
4254 struct nfs4_openowner *oo = openowner(s->st_stateowner); in move_to_close_lru() local
4258 dprintk("NFSD: move_to_close_lru nfs4_openowner %p\n", oo); in move_to_close_lru()
4278 last = oo->oo_last_closed_stid; in move_to_close_lru()
4279 oo->oo_last_closed_stid = s; in move_to_close_lru()
4280 list_move_tail(&oo->oo_close_lru, &nn->close_lru); in move_to_close_lru()
4281 oo->oo_time = get_seconds(); in move_to_close_lru()
4529 struct nfs4_openowner *oo = NULL; in nfsd4_process_open1() local
4548 oo = find_openstateowner_str(strhashval, open, clp); in nfsd4_process_open1()
4549 open->op_openowner = oo; in nfsd4_process_open1()
4550 if (!oo) { in nfsd4_process_open1()
4553 if (!(oo->oo_flags & NFS4_OO_CONFIRMED)) { in nfsd4_process_open1()
4555 release_openowner(oo); in nfsd4_process_open1()
4559 status = nfsd4_check_seqid(cstate, &oo->oo_owner, open->op_seqid); in nfsd4_process_open1()
4564 oo = alloc_init_open_stateowner(strhashval, open, cstate); in nfsd4_process_open1()
4565 if (oo == NULL) in nfsd4_process_open1()
4567 open->op_openowner = oo; in nfsd4_process_open1()
4909 struct nfs4_openowner *oo = openowner(stp->st_stateowner); in nfs4_open_delegation() local
4914 cb_up = nfsd4_cb_channel_good(oo->oo_owner.so_client); in nfs4_open_delegation()
4932 if (!cb_up || !(oo->oo_flags & NFS4_OO_CONFIRMED)) in nfs4_open_delegation()
5206 struct nfs4_openowner *oo; in nfs4_laundromat() local
5267 oo = list_first_entry(&nn->close_lru, struct nfs4_openowner, in nfs4_laundromat()
5269 if (time_after((unsigned long)oo->oo_time, in nfs4_laundromat()
5271 t = oo->oo_time - cutoff; in nfs4_laundromat()
5275 list_del_init(&oo->oo_close_lru); in nfs4_laundromat()
5276 stp = oo->oo_last_closed_stid; in nfs4_laundromat()
5277 oo->oo_last_closed_stid = NULL; in nfs4_laundromat()
5817 struct nfs4_openowner *oo; in nfs4_preprocess_confirmed_seqid_op() local
5824 oo = openowner(stp->st_stateowner); in nfs4_preprocess_confirmed_seqid_op()
5825 if (!(oo->oo_flags & NFS4_OO_CONFIRMED)) { in nfs4_preprocess_confirmed_seqid_op()
5840 struct nfs4_openowner *oo; in nfsd4_open_confirm() local
5856 oo = openowner(stp->st_stateowner); in nfsd4_open_confirm()
5858 if (oo->oo_flags & NFS4_OO_CONFIRMED) { in nfsd4_open_confirm()
5862 oo->oo_flags |= NFS4_OO_CONFIRMED; in nfsd4_open_confirm()
5868 nfsd4_client_record_create(oo->oo_owner.so_client); in nfsd4_open_confirm()
6313 struct nfs4_openowner *oo = openowner(ost->st_stateowner); in find_or_create_lock_stateid() local
6314 struct nfs4_client *clp = oo->oo_owner.so_client; in find_or_create_lock_stateid()
6365 struct nfs4_openowner *oo = openowner(ost->st_stateowner); in lookup_or_create_lock_state() local
6366 struct nfs4_client *cl = oo->oo_owner.so_client; in lookup_or_create_lock_state()