Skip to content

Commit 199cd13

Browse files
braunertehcaster
authored andcommitted
slab: port KMEM_CACHE_USERCOPY() to struct kmem_cache_args
Make KMEM_CACHE_USERCOPY() use struct kmem_cache_args. Reviewed-by: Kees Cook <[email protected]> Reviewed-by: Jens Axboe <[email protected]> Reviewed-by: Mike Rapoport (Microsoft) <[email protected]> Reviewed-by: Vlastimil Babka <[email protected]> Signed-off-by: Christian Brauner <[email protected]> Reviewed-by: Roman Gushchin <[email protected]> Signed-off-by: Vlastimil Babka <[email protected]>
1 parent 052d67b commit 199cd13

File tree

1 file changed

+7
-6
lines changed

1 file changed

+7
-6
lines changed

include/linux/slab.h

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -294,12 +294,13 @@ int kmem_cache_shrink(struct kmem_cache *s);
294294
* To whitelist a single field for copying to/from usercopy, use this
295295
* macro instead for KMEM_CACHE() above.
296296
*/
297-
#define KMEM_CACHE_USERCOPY(__struct, __flags, __field) \
298-
kmem_cache_create_usercopy(#__struct, \
299-
sizeof(struct __struct), \
300-
__alignof__(struct __struct), (__flags), \
301-
offsetof(struct __struct, __field), \
302-
sizeof_field(struct __struct, __field), NULL)
297+
#define KMEM_CACHE_USERCOPY(__struct, __flags, __field) \
298+
__kmem_cache_create_args(#__struct, sizeof(struct __struct), \
299+
&(struct kmem_cache_args) { \
300+
.align = __alignof__(struct __struct), \
301+
.useroffset = offsetof(struct __struct, __field), \
302+
.usersize = sizeof_field(struct __struct, __field), \
303+
}, (__flags))
303304

304305
/*
305306
* Common kmalloc functions provided by all allocators

0 commit comments

Comments
 (0)