diff options
author | Namhyung Kim <namhyung@gmail.com> | 2010-09-29 08:02:14 -0400 |
---|---|---|
committer | Pekka Enberg <penberg@kernel.org> | 2010-10-02 03:47:53 -0400 |
commit | 3478973dedee5e957c45dc93c11d12dc3f733ee0 (patch) | |
tree | a90878879ef689df232b9ad9288b8b5052b78651 /mm/slub.c | |
parent | a5dd5c117cbf620378d693963ffc42239297fac4 (diff) |
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.c | 2 |
1 files changed, 2 insertions, 0 deletions
@@ -1446,6 +1446,7 @@ static struct page *get_partial(struct kmem_cache *s, gfp_t flags, int node) | |||
1446 | * On exit the slab lock will have been dropped. | 1446 | * On exit the slab lock will have been dropped. |
1447 | */ | 1447 | */ |
1448 | static void unfreeze_slab(struct kmem_cache *s, struct page *page, int tail) | 1448 | static void unfreeze_slab(struct kmem_cache *s, struct page *page, int tail) |
1449 | __releases(bitlock) | ||
1449 | { | 1450 | { |
1450 | struct kmem_cache_node *n = get_node(s, page_to_nid(page)); | 1451 | struct kmem_cache_node *n = get_node(s, page_to_nid(page)); |
1451 | 1452 | ||
@@ -1488,6 +1489,7 @@ static void unfreeze_slab(struct kmem_cache *s, struct page *page, int tail) | |||
1488 | * Remove the cpu slab | 1489 | * Remove the cpu slab |
1489 | */ | 1490 | */ |
1490 | static void deactivate_slab(struct kmem_cache *s, struct kmem_cache_cpu *c) | 1491 | static void deactivate_slab(struct kmem_cache *s, struct kmem_cache_cpu *c) |
1492 | __releases(bitlock) | ||
1491 | { | 1493 | { |
1492 | struct page *page = c->page; | 1494 | struct page *page = c->page; |
1493 | int tail = 1; | 1495 | int tail = 1; |