summaryrefslogtreecommitdiff
path: root/mm/slub.c
diff options
context:
space:
mode:
authorNamhyung Kim <namhyung@gmail.com>2010-09-29 21:02:14 +0900
committerPekka Enberg <penberg@kernel.org>2010-10-02 10:47:53 +0300
commit3478973dedee5e957c45dc93c11d12dc3f733ee0 (patch)
treea90878879ef689df232b9ad9288b8b5052b78651 /mm/slub.c
parenta5dd5c117cbf620378d693963ffc42239297fac4 (diff)
downloadlwn-3478973dedee5e957c45dc93c11d12dc3f733ee0.tar.gz
lwn-3478973dedee5e957c45dc93c11d12dc3f733ee0.zip
slub: Add lock release annotation
The unfreeze_slab() releases page's PG_locked bit but was missing proper annotation. The deactivate_slab() needs to be marked also since it calls unfreeze_slab() without grabbing the lock. Acked-by: David Rientjes <rientjes@google.com> Signed-off-by: Namhyung Kim <namhyung@gmail.com> Signed-off-by: Pekka Enberg <penberg@kernel.org>
Diffstat (limited to 'mm/slub.c')
-rw-r--r--mm/slub.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/mm/slub.c b/mm/slub.c
index ac236b1ced16..118422e220f0 100644
--- a/mm/slub.c
+++ b/mm/slub.c
@@ -1446,6 +1446,7 @@ static struct page *get_partial(struct kmem_cache *s, gfp_t flags, int node)
* On exit the slab lock will have been dropped.
*/
static void unfreeze_slab(struct kmem_cache *s, struct page *page, int tail)
+ __releases(bitlock)
{
struct kmem_cache_node *n = get_node(s, page_to_nid(page));
@@ -1488,6 +1489,7 @@ static void unfreeze_slab(struct kmem_cache *s, struct page *page, int tail)
* Remove the cpu slab
*/
static void deactivate_slab(struct kmem_cache *s, struct kmem_cache_cpu *c)
+ __releases(bitlock)
{
struct page *page = c->page;
int tail = 1;