From 09a0c57fb8ba2631d9f9c4b19f7b7adcdb7a0878 Mon Sep 17 00:00:00 2001 From: Tejun Heo Date: Wed, 23 Jan 2013 09:32:30 -0800 Subject: [PATCH] --- yaml --- r: 350311 b: refs/heads/master c: c68eee14ec2da345e86f2778c8570759309a4a2e h: refs/heads/master i: 350309: 72bec4b63705bf3a106f5f950252f2b0053e675f 350307: 23164bdfe76f77d95f854ba3405e904e852b03e5 350303: f85a83175fb9e1b7073041bf1aeeadf052020b63 v: v3 --- [refs] | 2 +- trunk/kernel/async.c | 11 ++++++----- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/[refs] b/[refs] index fe099140c7bf..667ca98085d1 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 8723d5037cafea09c7242303c6c8e5d7058cec61 +refs/heads/master: c68eee14ec2da345e86f2778c8570759309a4a2e diff --git a/trunk/kernel/async.c b/trunk/kernel/async.c index 29d51d483bee..a4c1a9e63b2e 100644 --- a/trunk/kernel/async.c +++ b/trunk/kernel/async.c @@ -61,7 +61,8 @@ asynchronous and synchronous parts of the kernel. static async_cookie_t next_cookie = 1; -#define MAX_WORK 32768 +#define MAX_WORK 32768 +#define ASYNC_COOKIE_MAX ULLONG_MAX /* infinity cookie */ static LIST_HEAD(async_pending); static ASYNC_DOMAIN(async_dfl_domain); @@ -88,8 +89,8 @@ static atomic_t entry_count; */ static async_cookie_t __lowest_in_progress(struct async_domain *domain) { - async_cookie_t first_running = next_cookie; /* infinity value */ - async_cookie_t first_pending = next_cookie; /* ditto */ + async_cookie_t first_running = ASYNC_COOKIE_MAX; + async_cookie_t first_pending = ASYNC_COOKIE_MAX; struct async_entry *entry; /* @@ -269,7 +270,7 @@ void async_synchronize_full(void) domain = list_first_entry(&async_domains, typeof(*domain), node); spin_unlock_irq(&async_lock); - async_synchronize_cookie_domain(next_cookie, domain); + async_synchronize_cookie_domain(ASYNC_COOKIE_MAX, domain); } while (!list_empty(&async_domains)); mutex_unlock(&async_register_mutex); } @@ -305,7 +306,7 @@ EXPORT_SYMBOL_GPL(async_unregister_domain); */ void async_synchronize_full_domain(struct async_domain *domain) { - async_synchronize_cookie_domain(next_cookie, domain); + async_synchronize_cookie_domain(ASYNC_COOKIE_MAX, domain); } EXPORT_SYMBOL_GPL(async_synchronize_full_domain);