groups.c (9095bf25ea08135a5b74875dd0e3eeaddc4218a0) | groups.c (19809c2da28aee5860ad9a2eff760730a0710df0) |
---|---|
1/* 2 * Supplementary group IDs 3 */ 4#include <linux/cred.h> 5#include <linux/export.h> 6#include <linux/slab.h> 7#include <linux/security.h> 8#include <linux/syscalls.h> --- 4 unchanged lines hidden (view full) --- 13struct group_info *groups_alloc(int gidsetsize) 14{ 15 struct group_info *gi; 16 unsigned int len; 17 18 len = sizeof(struct group_info) + sizeof(kgid_t) * gidsetsize; 19 gi = kmalloc(len, GFP_KERNEL_ACCOUNT|__GFP_NOWARN|__GFP_NORETRY); 20 if (!gi) | 1/* 2 * Supplementary group IDs 3 */ 4#include <linux/cred.h> 5#include <linux/export.h> 6#include <linux/slab.h> 7#include <linux/security.h> 8#include <linux/syscalls.h> --- 4 unchanged lines hidden (view full) --- 13struct group_info *groups_alloc(int gidsetsize) 14{ 15 struct group_info *gi; 16 unsigned int len; 17 18 len = sizeof(struct group_info) + sizeof(kgid_t) * gidsetsize; 19 gi = kmalloc(len, GFP_KERNEL_ACCOUNT|__GFP_NOWARN|__GFP_NORETRY); 20 if (!gi) |
21 gi = __vmalloc(len, GFP_KERNEL_ACCOUNT|__GFP_HIGHMEM, PAGE_KERNEL); | 21 gi = __vmalloc(len, GFP_KERNEL_ACCOUNT, PAGE_KERNEL); |
22 if (!gi) 23 return NULL; 24 25 atomic_set(&gi->usage, 1); 26 gi->ngroups = gidsetsize; 27 return gi; 28} 29 --- 223 unchanged lines hidden --- | 22 if (!gi) 23 return NULL; 24 25 atomic_set(&gi->usage, 1); 26 gi->ngroups = gidsetsize; 27 return gi; 28} 29 --- 223 unchanged lines hidden --- |