projects
/
firefly-linux-kernel-4.4.55.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
mm/vmstat: fix overflow in mod_zone_page_state()
[firefly-linux-kernel-4.4.55.git]
/
mm
/
slab_common.c
diff --git
a/mm/slab_common.c
b/mm/slab_common.c
index d88e97c10a2e31669753681efc74f6bf50fdf2ef..3c6a86b4ec25f8462c1584dcb5bcf01e4edbd4ff 100644
(file)
--- a/
mm/slab_common.c
+++ b/
mm/slab_common.c
@@
-112,7
+112,7
@@
void __kmem_cache_free_bulk(struct kmem_cache *s, size_t nr, void **p)
kmem_cache_free(s, p[i]);
}
kmem_cache_free(s, p[i]);
}
-
bool
__kmem_cache_alloc_bulk(struct kmem_cache *s, gfp_t flags, size_t nr,
+
int
__kmem_cache_alloc_bulk(struct kmem_cache *s, gfp_t flags, size_t nr,
void **p)
{
size_t i;
void **p)
{
size_t i;
@@
-121,10
+121,10
@@
bool __kmem_cache_alloc_bulk(struct kmem_cache *s, gfp_t flags, size_t nr,
void *x = p[i] = kmem_cache_alloc(s, flags);
if (!x) {
__kmem_cache_free_bulk(s, i, p);
void *x = p[i] = kmem_cache_alloc(s, flags);
if (!x) {
__kmem_cache_free_bulk(s, i, p);
- return
false
;
+ return
0
;
}
}
}
}
- return
true
;
+ return
i
;
}
#ifdef CONFIG_MEMCG_KMEM
}
#ifdef CONFIG_MEMCG_KMEM