Thread (34 messages) 34 messages, 5 authors, 2018-03-12

Re: [PATCH 4/7] Protectable Memory

From: Matthew Wilcox <willy@infradead.org>
Date: 2018-03-12 19:13:15
Also in: linux-mm, linux-security-module

On Wed, Feb 28, 2018 at 10:06:17PM +0200, Igor Stoppa wrote:
struct gen_pool *pmalloc_create_pool(const char *name,
					 int min_alloc_order);
int is_pmalloc_object(const void *ptr, const unsigned long n);
bool pmalloc_prealloc(struct gen_pool *pool, size_t size);
void *pmalloc(struct gen_pool *pool, size_t size, gfp_t gfp);
static inline void *pzalloc(struct gen_pool *pool, size_t size, gfp_t gfp)
static inline void *pmalloc_array(struct gen_pool *pool, size_t n,
				  size_t size, gfp_t flags)
static inline void *pcalloc(struct gen_pool *pool, size_t n,
			    size_t size, gfp_t flags)
static inline char *pstrdup(struct gen_pool *pool, const char *s, gfp_t gfp)
int pmalloc_protect_pool(struct gen_pool *pool);
static inline void pfree(struct gen_pool *pool, const void *addr)
int pmalloc_destroy_pool(struct gen_pool *pool);
Do you have users for all these functions?  I'm particularly sceptical of
pfree().  To my mind, a user wants to:

pmalloc_create();
pmalloc(); * N
pmalloc_protect();
...
pmalloc_destroy();

I don't mind the pstrdup, pcalloc, pmalloc_array, pzalloc variations, but
I don't know why you need is_pmalloc_object().
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help