xhci: Solve full event ring by increasing TRBS_PER_SEGMENT to 256
[firefly-linux-kernel-4.4.55.git] / include / linux / rculist.h
index f4b1001a4676b48bfb04e74d3051813c90875752..4106721c4e5e39d3d0a08d44f5d50909da6c9b86 100644 (file)
@@ -267,8 +267,9 @@ static inline void list_splice_init_rcu(struct list_head *list,
  */
 #define list_first_or_null_rcu(ptr, type, member) \
        ({struct list_head *__ptr = (ptr); \
-         struct list_head __rcu *__next = list_next_rcu(__ptr); \
-         likely(__ptr != __next) ? container_of(__next, type, member) : NULL; \
+         struct list_head *__next = ACCESS_ONCE(__ptr->next); \
+         likely(__ptr != __next) ? \
+               list_entry_rcu(__next, type, member) : NULL; \
        })
 
 /**