groups.c (664b0bae0b87f69bc9deb098f5e0158b9cf18e04) | groups.c (88dca4ca5a93d2c09e5bbc6a62fbfc3af83c4fca) |
---|---|
1// SPDX-License-Identifier: GPL-2.0 2/* 3 * Supplementary group IDs 4 */ 5#include <linux/cred.h> 6#include <linux/export.h> 7#include <linux/slab.h> 8#include <linux/security.h> --- 6 unchanged lines hidden (view full) --- 15struct group_info *groups_alloc(int gidsetsize) 16{ 17 struct group_info *gi; 18 unsigned int len; 19 20 len = sizeof(struct group_info) + sizeof(kgid_t) * gidsetsize; 21 gi = kmalloc(len, GFP_KERNEL_ACCOUNT|__GFP_NOWARN|__GFP_NORETRY); 22 if (!gi) | 1// SPDX-License-Identifier: GPL-2.0 2/* 3 * Supplementary group IDs 4 */ 5#include <linux/cred.h> 6#include <linux/export.h> 7#include <linux/slab.h> 8#include <linux/security.h> --- 6 unchanged lines hidden (view full) --- 15struct group_info *groups_alloc(int gidsetsize) 16{ 17 struct group_info *gi; 18 unsigned int len; 19 20 len = sizeof(struct group_info) + sizeof(kgid_t) * gidsetsize; 21 gi = kmalloc(len, GFP_KERNEL_ACCOUNT|__GFP_NOWARN|__GFP_NORETRY); 22 if (!gi) |
23 gi = __vmalloc(len, GFP_KERNEL_ACCOUNT, PAGE_KERNEL); | 23 gi = __vmalloc(len, GFP_KERNEL_ACCOUNT); |
24 if (!gi) 25 return NULL; 26 27 atomic_set(&gi->usage, 1); 28 gi->ngroups = gidsetsize; 29 return gi; 30} 31 --- 210 unchanged lines hidden --- | 24 if (!gi) 25 return NULL; 26 27 atomic_set(&gi->usage, 1); 28 gi->ngroups = gidsetsize; 29 return gi; 30} 31 --- 210 unchanged lines hidden --- |