diff options
| author | Hubert Jasudowicz <[email protected]> | 2021-02-25 17:21:07 -0800 |
|---|---|---|
| committer | Linus Torvalds <[email protected]> | 2021-02-26 09:41:03 -0800 |
| commit | e1e014115dfd48ab3e3691ce46f9484ce12e67d4 (patch) | |
| tree | 985f8c2183614c6e28849299ea3ec9c4d9616a87 /kernel | |
| parent | c1f26493ed7f363c63e0e9d91e50d4db26df6603 (diff) | |
groups: simplify struct group_info allocation
Combine kmalloc and vmalloc into a single call. Use struct_size macro
instead of direct size calculation.
Link: https://lkml.kernel.org/r/ba9ba5beea9a44b7196c41a0d9528abd5f20dd2e.1611620846.git.hubert.jasudowicz@gmail.com
Signed-off-by: Hubert Jasudowicz <[email protected]>
Cc: Gao Xiang <[email protected]>
Cc: Micah Morton <[email protected]>
Cc: Michael Kelley <[email protected]>
Cc: "Peter Zijlstra (Intel)" <[email protected]>
Cc: Thomas Cedeno <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Diffstat (limited to 'kernel')
| -rw-r--r-- | kernel/groups.c | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/kernel/groups.c b/kernel/groups.c index fe7e6385530e..787b381c7c00 100644 --- a/kernel/groups.c +++ b/kernel/groups.c @@ -15,12 +15,7 @@ struct group_info *groups_alloc(int gidsetsize) { struct group_info *gi; - unsigned int len; - - len = sizeof(struct group_info) + sizeof(kgid_t) * gidsetsize; - gi = kmalloc(len, GFP_KERNEL_ACCOUNT|__GFP_NOWARN|__GFP_NORETRY); - if (!gi) - gi = __vmalloc(len, GFP_KERNEL_ACCOUNT); + gi = kvmalloc(struct_size(gi, gid, gidsetsize), GFP_KERNEL_ACCOUNT); if (!gi) return NULL; |