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

Commit 39f1f78d authored by Al Viro's avatar Al Viro
Browse files

nick kvfree() from apparmor



too many places open-code it

Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent 50c6e282
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -370,6 +370,8 @@ static inline int is_vmalloc_or_module_addr(const void *x)
}
#endif

extern void kvfree(const void *addr);

static inline void compound_lock(struct page *page)
{
#ifdef CONFIG_TRANSPARENT_HUGEPAGE
+10 −0
Original line number Diff line number Diff line
@@ -10,6 +10,7 @@
#include <linux/swapops.h>
#include <linux/mman.h>
#include <linux/hugetlb.h>
#include <linux/vmalloc.h>

#include <asm/uaccess.h>

@@ -387,6 +388,15 @@ unsigned long vm_mmap(struct file *file, unsigned long addr,
}
EXPORT_SYMBOL(vm_mmap);

void kvfree(const void *addr)
{
	if (is_vmalloc_addr(addr))
		vfree(addr);
	else
		kfree(addr);
}
EXPORT_SYMBOL(kvfree);

struct address_space *page_mapping(struct page *page)
{
	struct address_space *mapping = page->mapping;
+0 −1
Original line number Diff line number Diff line
@@ -66,7 +66,6 @@ extern int apparmor_initialized __initdata;
char *aa_split_fqname(char *args, char **ns_name);
void aa_info_message(const char *str);
void *__aa_kvmalloc(size_t size, gfp_t flags);
void kvfree(void *buffer);

static inline void *kvmalloc(size_t size)
{
+0 −14
Original line number Diff line number Diff line
@@ -104,17 +104,3 @@ void *__aa_kvmalloc(size_t size, gfp_t flags)
	}
	return buffer;
}

/**
 * kvfree - free an allocation do by kvmalloc
 * @buffer: buffer to free (MAYBE_NULL)
 *
 * Free a buffer allocated by kvmalloc
 */
void kvfree(void *buffer)
{
	if (is_vmalloc_addr(buffer))
		vfree(buffer);
	else
		kfree(buffer);
}