]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/blobdiff - kernel/async.c
async: use ULLONG_MAX for infinity cookie value
[mirror_ubuntu-zesty-kernel.git] / kernel / async.c
index 29d51d483bee82a1e267837b22711cde999725bb..a4c1a9e63b2e0e835e8a70d9c5380fca71a26c53 100644 (file)
@@ -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);