ovs-rcu: Improve comments on ovsrcu_postpone().
authorBen Pfaff <blp@ovn.org>
Sun, 24 Jan 2016 01:17:19 +0000 (17:17 -0800)
committerBen Pfaff <blp@ovn.org>
Mon, 25 Jan 2016 16:48:44 +0000 (08:48 -0800)
Suggested-by: William Tu <u9012063@gmail.com>
Signed-off-by: Ben Pfaff <blp@ovn.org>
Acked-by: Russell Bryant <russell@ovn.org>
lib/ovs-rcu.h

index 5cd4152..7fe7d47 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015 Nicira, Inc.
+ * Copyright (c) 2014, 2015, 2016 Nicira, Inc.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -207,7 +207,9 @@ static inline void ovsrcu_set__(struct ovsrcu_pointer *pointer,
  * grace period.  See "Usage" above for an example. */
 void ovsrcu_postpone__(void (*function)(void *aux), void *aux);
 #define ovsrcu_postpone(FUNCTION, ARG)                          \
-    ((void) sizeof((FUNCTION)(ARG), 1),                         \
+    (/* Verify that ARG is appropriate for FUNCTION. */         \
+     (void) sizeof((FUNCTION)(ARG), 1),                         \
+     /* Verify that ARG is a pointer type. */                   \
      (void) sizeof(*(ARG)),                                     \
      ovsrcu_postpone__((void (*)(void *))(FUNCTION), ARG))