Lines Matching refs:pdo
893 void rpc_init_pipe_dir_object(struct rpc_pipe_dir_object *pdo, in rpc_init_pipe_dir_object() argument
897 INIT_LIST_HEAD(&pdo->pdo_head); in rpc_init_pipe_dir_object()
898 pdo->pdo_ops = pdo_ops; in rpc_init_pipe_dir_object()
899 pdo->pdo_data = pdo_data; in rpc_init_pipe_dir_object()
906 struct rpc_pipe_dir_object *pdo) in rpc_add_pipe_dir_object_locked() argument
911 ret = pdo->pdo_ops->create(pdh->pdh_dentry, pdo); in rpc_add_pipe_dir_object_locked()
913 list_add_tail(&pdo->pdo_head, &pdh->pdh_entries); in rpc_add_pipe_dir_object_locked()
920 struct rpc_pipe_dir_object *pdo) in rpc_remove_pipe_dir_object_locked() argument
923 pdo->pdo_ops->destroy(pdh->pdh_dentry, pdo); in rpc_remove_pipe_dir_object_locked()
924 list_del_init(&pdo->pdo_head); in rpc_remove_pipe_dir_object_locked()
937 struct rpc_pipe_dir_object *pdo) in rpc_add_pipe_dir_object() argument
941 if (list_empty(&pdo->pdo_head)) { in rpc_add_pipe_dir_object()
945 ret = rpc_add_pipe_dir_object_locked(net, pdh, pdo); in rpc_add_pipe_dir_object()
962 struct rpc_pipe_dir_object *pdo) in rpc_remove_pipe_dir_object() argument
964 if (!list_empty(&pdo->pdo_head)) { in rpc_remove_pipe_dir_object()
968 rpc_remove_pipe_dir_object_locked(net, pdh, pdo); in rpc_remove_pipe_dir_object()
991 struct rpc_pipe_dir_object *pdo; in rpc_find_or_alloc_pipe_dir_object() local
994 list_for_each_entry(pdo, &pdh->pdh_entries, pdo_head) { in rpc_find_or_alloc_pipe_dir_object()
995 if (!match(pdo, data)) in rpc_find_or_alloc_pipe_dir_object()
999 pdo = alloc(data); in rpc_find_or_alloc_pipe_dir_object()
1000 if (!pdo) in rpc_find_or_alloc_pipe_dir_object()
1002 rpc_add_pipe_dir_object_locked(net, pdh, pdo); in rpc_find_or_alloc_pipe_dir_object()
1005 return pdo; in rpc_find_or_alloc_pipe_dir_object()
1012 struct rpc_pipe_dir_object *pdo; in rpc_create_pipe_dir_objects() local
1015 list_for_each_entry(pdo, &pdh->pdh_entries, pdo_head) in rpc_create_pipe_dir_objects()
1016 pdo->pdo_ops->create(dir, pdo); in rpc_create_pipe_dir_objects()
1022 struct rpc_pipe_dir_object *pdo; in rpc_destroy_pipe_dir_objects() local
1025 list_for_each_entry(pdo, &pdh->pdh_entries, pdo_head) in rpc_destroy_pipe_dir_objects()
1026 pdo->pdo_ops->destroy(dir, pdo); in rpc_destroy_pipe_dir_objects()