Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit abcd08a6 authored by Christoph Lameter's avatar Christoph Lameter Committed by Linus Torvalds
Browse files

SLUB: use check_valid_pointer in kmem_ptr_validate



We needlessly duplicate code. Also make check_valid_pointer inline.

Signed-off-by: default avatarChristoph LAemter <clameter@sgi.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent a87615b8
Loading
Loading
Loading
Loading
+3 −10
Original line number Diff line number Diff line
@@ -405,9 +405,8 @@ static int check_bytes(u8 *start, unsigned int value, unsigned int bytes)
	return 1;
}


static int check_valid_pointer(struct kmem_cache *s, struct page *page,
					 void *object)
static inline int check_valid_pointer(struct kmem_cache *s,
				struct page *page, const void *object)
{
	void *base;

@@ -1796,13 +1795,7 @@ int kmem_ptr_validate(struct kmem_cache *s, const void *object)
		/* No slab or wrong slab */
		return 0;

	addr = page_address(page);
	if (object < addr || object >= addr + s->objects * s->size)
		/* Out of bounds */
		return 0;

	if ((object - addr) % s->size)
		/* Improperly aligned */
	if (!check_valid_pointer(s, page, object))
		return 0;

	/*