list_lru: don't call list_lru_from_kmem if the list_head is empty
If the list_head is empty then we'll have called list_lru_from_kmem for nothing. Move that call inside of the list_empty if block. Signed-off-by: Jeff Layton <jeff.layton@primarydata.com> Reviewed-by: Vladimir Davydov <vdavydov@parallels.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>hifive-unleashed-5.1
parent
21cd3a6047
commit
26f5d7609f
|
@ -99,8 +99,8 @@ bool list_lru_add(struct list_lru *lru, struct list_head *item)
|
||||||
struct list_lru_one *l;
|
struct list_lru_one *l;
|
||||||
|
|
||||||
spin_lock(&nlru->lock);
|
spin_lock(&nlru->lock);
|
||||||
l = list_lru_from_kmem(nlru, item);
|
|
||||||
if (list_empty(item)) {
|
if (list_empty(item)) {
|
||||||
|
l = list_lru_from_kmem(nlru, item);
|
||||||
list_add_tail(item, &l->list);
|
list_add_tail(item, &l->list);
|
||||||
l->nr_items++;
|
l->nr_items++;
|
||||||
spin_unlock(&nlru->lock);
|
spin_unlock(&nlru->lock);
|
||||||
|
@ -118,8 +118,8 @@ bool list_lru_del(struct list_lru *lru, struct list_head *item)
|
||||||
struct list_lru_one *l;
|
struct list_lru_one *l;
|
||||||
|
|
||||||
spin_lock(&nlru->lock);
|
spin_lock(&nlru->lock);
|
||||||
l = list_lru_from_kmem(nlru, item);
|
|
||||||
if (!list_empty(item)) {
|
if (!list_empty(item)) {
|
||||||
|
l = list_lru_from_kmem(nlru, item);
|
||||||
list_del_init(item);
|
list_del_init(item);
|
||||||
l->nr_items--;
|
l->nr_items--;
|
||||||
spin_unlock(&nlru->lock);
|
spin_unlock(&nlru->lock);
|
||||||
|
|
Loading…
Reference in New Issue