Lines Matching refs:pdo
878 void rpc_init_pipe_dir_object(struct rpc_pipe_dir_object *pdo, in rpc_init_pipe_dir_object() argument
882 INIT_LIST_HEAD(&pdo->pdo_head); in rpc_init_pipe_dir_object()
883 pdo->pdo_ops = pdo_ops; in rpc_init_pipe_dir_object()
884 pdo->pdo_data = pdo_data; in rpc_init_pipe_dir_object()
891 struct rpc_pipe_dir_object *pdo) in rpc_add_pipe_dir_object_locked() argument
896 ret = pdo->pdo_ops->create(pdh->pdh_dentry, pdo); in rpc_add_pipe_dir_object_locked()
898 list_add_tail(&pdo->pdo_head, &pdh->pdh_entries); in rpc_add_pipe_dir_object_locked()
905 struct rpc_pipe_dir_object *pdo) in rpc_remove_pipe_dir_object_locked() argument
908 pdo->pdo_ops->destroy(pdh->pdh_dentry, pdo); in rpc_remove_pipe_dir_object_locked()
909 list_del_init(&pdo->pdo_head); in rpc_remove_pipe_dir_object_locked()
922 struct rpc_pipe_dir_object *pdo) in rpc_add_pipe_dir_object() argument
926 if (list_empty(&pdo->pdo_head)) { in rpc_add_pipe_dir_object()
930 ret = rpc_add_pipe_dir_object_locked(net, pdh, pdo); in rpc_add_pipe_dir_object()
947 struct rpc_pipe_dir_object *pdo) in rpc_remove_pipe_dir_object() argument
949 if (!list_empty(&pdo->pdo_head)) { in rpc_remove_pipe_dir_object()
953 rpc_remove_pipe_dir_object_locked(net, pdh, pdo); in rpc_remove_pipe_dir_object()
976 struct rpc_pipe_dir_object *pdo; in rpc_find_or_alloc_pipe_dir_object() local
979 list_for_each_entry(pdo, &pdh->pdh_entries, pdo_head) { in rpc_find_or_alloc_pipe_dir_object()
980 if (!match(pdo, data)) in rpc_find_or_alloc_pipe_dir_object()
984 pdo = alloc(data); in rpc_find_or_alloc_pipe_dir_object()
985 if (!pdo) in rpc_find_or_alloc_pipe_dir_object()
987 rpc_add_pipe_dir_object_locked(net, pdh, pdo); in rpc_find_or_alloc_pipe_dir_object()
990 return pdo; in rpc_find_or_alloc_pipe_dir_object()
997 struct rpc_pipe_dir_object *pdo; in rpc_create_pipe_dir_objects() local
1000 list_for_each_entry(pdo, &pdh->pdh_entries, pdo_head) in rpc_create_pipe_dir_objects()
1001 pdo->pdo_ops->create(dir, pdo); in rpc_create_pipe_dir_objects()
1007 struct rpc_pipe_dir_object *pdo; in rpc_destroy_pipe_dir_objects() local
1010 list_for_each_entry(pdo, &pdh->pdh_entries, pdo_head) in rpc_destroy_pipe_dir_objects()
1011 pdo->pdo_ops->destroy(dir, pdo); in rpc_destroy_pipe_dir_objects()