diff options
author | Jens Axboe <jens.axboe@oracle.com> | 2010-04-13 20:03:21 +0200 |
---|---|---|
committer | Jens Axboe <jens.axboe@oracle.com> | 2010-04-13 20:03:21 +0200 |
commit | 4facdaec1ce186e731e6baa04f074804849e9a49 (patch) | |
tree | e521fba8386bf23533cfe21ea5200e615960ec07 /mm/slab.c | |
parent | a11cdaa7af56423a921a8bdad8f5a5f4ddca918a (diff) | |
parent | 0d0fb0f9c5fddef4a10242fe3337f00f528a3099 (diff) | |
download | op-kernel-dev-4facdaec1ce186e731e6baa04f074804849e9a49.zip op-kernel-dev-4facdaec1ce186e731e6baa04f074804849e9a49.tar.gz |
Merge branch 'master' into for-2.6.35
Conflicts:
block/blk-cgroup.c
block/cfq-iosched.c
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Diffstat (limited to 'mm/slab.c')
-rw-r--r-- | mm/slab.c | 13 |
1 files changed, 1 insertions, 12 deletions
@@ -3602,21 +3602,10 @@ EXPORT_SYMBOL(kmem_cache_alloc_notrace); */ int kmem_ptr_validate(struct kmem_cache *cachep, const void *ptr) { - unsigned long addr = (unsigned long)ptr; - unsigned long min_addr = PAGE_OFFSET; - unsigned long align_mask = BYTES_PER_WORD - 1; unsigned long size = cachep->buffer_size; struct page *page; - if (unlikely(addr < min_addr)) - goto out; - if (unlikely(addr > (unsigned long)high_memory - size)) - goto out; - if (unlikely(addr & align_mask)) - goto out; - if (unlikely(!kern_addr_valid(addr))) - goto out; - if (unlikely(!kern_addr_valid(addr + size - 1))) + if (unlikely(!kern_ptr_validate(ptr, size))) goto out; page = virt_to_page(ptr); if (unlikely(!PageSlab(page))) |