Re: [PATCH 02/38] usercopy: Enhance and rename report_usercopy()

From: Kees Cook
Date: Sun Jan 14 2018 - 15:57:59 EST


On Thu, Jan 11, 2018 at 9:06 AM, Christopher Lameter <cl@xxxxxxxxx> wrote:
> On Wed, 10 Jan 2018, Kees Cook wrote:
>
>> diff --git a/mm/slab.h b/mm/slab.h
>> index ad657ffa44e5..7d29e69ac310 100644
>> --- a/mm/slab.h
>> +++ b/mm/slab.h
>> @@ -526,4 +526,10 @@ static inline int cache_random_seq_create(struct kmem_cache *cachep,
>> static inline void cache_random_seq_destroy(struct kmem_cache *cachep) { }
>> #endif /* CONFIG_SLAB_FREELIST_RANDOM */
>>
>> +#ifdef CONFIG_HARDENED_USERCOPY
>> +void __noreturn usercopy_abort(const char *name, const char *detail,
>> + bool to_user, unsigned long offset,
>> + unsigned long len);
>> +#endif
>> +
>> #endif /* MM_SLAB_H */
>
> This code has nothing to do with slab allocation. Move it into
> include/linux/uaccess.h where the other user space access definitions are?

Since it was only the mm/sl*b.c files using it, it seemed like the
right place, but it's a reasonable point. I've moved it now.

-Kees

--
Kees Cook
Pixel Security