import G965FXXU7DTAA OSRC
*First release for Android (Q). Signed-off-by: FAROVITUS <farovitus@gmail.com>
This commit is contained in:
parent
856452b4f2
commit
2b92eefa41
7696 changed files with 3763754 additions and 92661 deletions
|
@ -12,6 +12,13 @@
|
|||
#include <linux/kernel.h>
|
||||
#include <linux/rculist.h>
|
||||
|
||||
static inline void list_bug(void)
|
||||
{
|
||||
#ifdef CONFIG_DEBUG_LIST_PANIC
|
||||
BUG_ON(1);
|
||||
#endif
|
||||
}
|
||||
|
||||
/*
|
||||
* Insert a new entry between two known consecutive entries.
|
||||
*
|
||||
|
@ -23,17 +30,19 @@ void __list_add(struct list_head *new,
|
|||
struct list_head *prev,
|
||||
struct list_head *next)
|
||||
{
|
||||
WARN(next->prev != prev,
|
||||
if (WARN(next->prev != prev,
|
||||
"list_add corruption. next->prev should be "
|
||||
"prev (%p), but was %p. (next=%p).\n",
|
||||
prev, next->prev, next);
|
||||
WARN(prev->next != next,
|
||||
prev, next->prev, next) ||
|
||||
WARN(prev->next != next,
|
||||
"list_add corruption. prev->next should be "
|
||||
"next (%p), but was %p. (prev=%p).\n",
|
||||
next, prev->next, prev);
|
||||
WARN(new == prev || new == next,
|
||||
"list_add double add: new=%p, prev=%p, next=%p.\n",
|
||||
new, prev, next);
|
||||
next, prev->next, prev) ||
|
||||
WARN(new == prev || new == next,
|
||||
"list_add double add: new=%p, prev=%p, next=%p.\n",
|
||||
new, prev, next))
|
||||
list_bug();
|
||||
|
||||
next->prev = new;
|
||||
new->next = next;
|
||||
new->prev = prev;
|
||||
|
@ -59,8 +68,10 @@ void __list_del_entry(struct list_head *entry)
|
|||
"but was %p\n", entry, prev->next) ||
|
||||
WARN(next->prev != entry,
|
||||
"list_del corruption. next->prev should be %p, "
|
||||
"but was %p\n", entry, next->prev))
|
||||
"but was %p\n", entry, next->prev)) {
|
||||
list_bug();
|
||||
return;
|
||||
}
|
||||
|
||||
__list_del(prev, next);
|
||||
}
|
||||
|
@ -86,12 +97,14 @@ EXPORT_SYMBOL(list_del);
|
|||
void __list_add_rcu(struct list_head *new,
|
||||
struct list_head *prev, struct list_head *next)
|
||||
{
|
||||
WARN(next->prev != prev,
|
||||
if (WARN(next->prev != prev,
|
||||
"list_add_rcu corruption. next->prev should be prev (%p), but was %p. (next=%p).\n",
|
||||
prev, next->prev, next);
|
||||
WARN(prev->next != next,
|
||||
prev, next->prev, next) ||
|
||||
WARN(prev->next != next,
|
||||
"list_add_rcu corruption. prev->next should be next (%p), but was %p. (prev=%p).\n",
|
||||
next, prev->next, prev);
|
||||
next, prev->next, prev))
|
||||
list_bug();
|
||||
|
||||
new->next = next;
|
||||
new->prev = prev;
|
||||
rcu_assign_pointer(list_next_rcu(prev), new);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue