Lines Matching full:domain
74 struct async_domain *domain; member
81 static async_cookie_t lowest_in_progress(struct async_domain *domain) in lowest_in_progress() argument
89 if (domain) { in lowest_in_progress()
90 if (!list_empty(&domain->pending)) in lowest_in_progress()
91 first = list_first_entry(&domain->pending, in lowest_in_progress()
153 * @domain: the domain
156 * @domain may be used in the async_synchronize_*_domain() functions to
157 * wait within a certain synchronization domain rather than globally.
166 int node, struct async_domain *domain) in async_schedule_node_domain() argument
194 entry->domain = domain; in async_schedule_node_domain()
201 list_add_tail(&entry->domain_list, &domain->pending); in async_schedule_node_domain()
202 if (domain->registered) in async_schedule_node_domain()
249 * async_unregister_domain - ensure no more anonymous waiters on this domain
250 * @domain: idle domain to flush out of any async_synchronize_full instances
253 * of these routines should know the lifetime of @domain
257 void async_unregister_domain(struct async_domain *domain) in async_unregister_domain() argument
260 WARN_ON(!domain->registered || !list_empty(&domain->pending)); in async_unregister_domain()
261 domain->registered = 0; in async_unregister_domain()
267 * async_synchronize_full_domain - synchronize all asynchronous function within a certain domain
268 * @domain: the domain to synchronize
271 * synchronization domain specified by @domain have been done.
273 void async_synchronize_full_domain(struct async_domain *domain) in async_synchronize_full_domain() argument
275 async_synchronize_cookie_domain(ASYNC_COOKIE_MAX, domain); in async_synchronize_full_domain()
280 …cookie_domain - synchronize asynchronous function calls within a certain domain with cookie checkp…
282 * @domain: the domain to synchronize (%NULL for all registered domains)
285 * synchronization domain specified by @domain submitted prior to @cookie
288 void async_synchronize_cookie_domain(async_cookie_t cookie, struct async_domain *domain) in async_synchronize_cookie_domain() argument
297 wait_event(async_done, lowest_in_progress(domain) >= cookie); in async_synchronize_cookie_domain()