Lines Matching defs:edges
553 * If edges is NULL, the number of edges is still counted but no graph
557 epoll_recover_watch_tree(struct epoll_edge *edges, size_t nedges, size_t nfds) {
562 for (i = 0; i < nfds && (edges == NULL || nedges_so_far < nedges); i++)
576 if (edges != NULL) {
577 edges[nedges_so_far].epfd =
579 edges[nedges_so_far].fd =
596 * Run dfs on the graph described by edges, checking for loops and a
600 epoll_dfs(struct epoll_edge *edges, size_t nedges, struct epoll_seen *seen,
606 KASSERT(edges != NULL);
622 if (edges[i].epfd != currfd)
625 error = epoll_dfs(edges, nedges, seen, nseen,
626 edges[i].fd, depth);
643 struct epoll_edge *edges;
661 * number of edges, and once to actually fill them in. We add one
666 edges = kmem_zalloc(nedges * sizeof(*edges), KM_SLEEP);
668 epoll_recover_watch_tree(edges + 1, nedges - 1, nfds);
670 edges[0].epfd = epfd;
671 edges[0].fd = fd;
676 error = epoll_dfs(edges, nedges, seen, nfds, epfd, 0);
679 kmem_free(edges, nedges * sizeof(*edges));