Lines Matching refs:prctl_map
1998 static int validate_prctl_map_addr(struct prctl_mm_map *prctl_map) in validate_prctl_map_addr() argument
2022 u64 val = *(u64 *)((char *)prctl_map + offsets[i]); in validate_prctl_map_addr()
2033 ((unsigned long)prctl_map->__m1 __op \ in validate_prctl_map_addr()
2034 (unsigned long)prctl_map->__m2) ? 0 : -EINVAL in validate_prctl_map_addr()
2049 if (check_data_rlimit(rlimit(RLIMIT_DATA), prctl_map->brk, in validate_prctl_map_addr()
2050 prctl_map->start_brk, prctl_map->end_data, in validate_prctl_map_addr()
2051 prctl_map->start_data)) in validate_prctl_map_addr()
2062 struct prctl_mm_map prctl_map = { .exe_fd = (u32)-1, }; in prctl_set_mm_map() local
2071 return put_user((unsigned int)sizeof(prctl_map), in prctl_set_mm_map()
2074 if (data_size != sizeof(prctl_map)) in prctl_set_mm_map()
2077 if (copy_from_user(&prctl_map, addr, sizeof(prctl_map))) in prctl_set_mm_map()
2080 error = validate_prctl_map_addr(&prctl_map); in prctl_set_mm_map()
2084 if (prctl_map.auxv_size) { in prctl_set_mm_map()
2088 if (!prctl_map.auxv || in prctl_set_mm_map()
2089 prctl_map.auxv_size > sizeof(mm->saved_auxv)) in prctl_set_mm_map()
2094 (const void __user *)prctl_map.auxv, in prctl_set_mm_map()
2095 prctl_map.auxv_size)) in prctl_set_mm_map()
2103 if (prctl_map.exe_fd != (u32)-1) { in prctl_set_mm_map()
2115 error = prctl_set_mm_exe_file(mm, prctl_map.exe_fd); in prctl_set_mm_map()
2139 mm->start_code = prctl_map.start_code; in prctl_set_mm_map()
2140 mm->end_code = prctl_map.end_code; in prctl_set_mm_map()
2141 mm->start_data = prctl_map.start_data; in prctl_set_mm_map()
2142 mm->end_data = prctl_map.end_data; in prctl_set_mm_map()
2143 mm->start_brk = prctl_map.start_brk; in prctl_set_mm_map()
2144 mm->brk = prctl_map.brk; in prctl_set_mm_map()
2145 mm->start_stack = prctl_map.start_stack; in prctl_set_mm_map()
2146 mm->arg_start = prctl_map.arg_start; in prctl_set_mm_map()
2147 mm->arg_end = prctl_map.arg_end; in prctl_set_mm_map()
2148 mm->env_start = prctl_map.env_start; in prctl_set_mm_map()
2149 mm->env_end = prctl_map.env_end; in prctl_set_mm_map()
2160 if (prctl_map.auxv_size) in prctl_set_mm_map()
2202 struct prctl_mm_map prctl_map = { in prctl_set_mm() local
2243 prctl_map.start_code = mm->start_code; in prctl_set_mm()
2244 prctl_map.end_code = mm->end_code; in prctl_set_mm()
2245 prctl_map.start_data = mm->start_data; in prctl_set_mm()
2246 prctl_map.end_data = mm->end_data; in prctl_set_mm()
2247 prctl_map.start_brk = mm->start_brk; in prctl_set_mm()
2248 prctl_map.brk = mm->brk; in prctl_set_mm()
2249 prctl_map.start_stack = mm->start_stack; in prctl_set_mm()
2250 prctl_map.arg_start = mm->arg_start; in prctl_set_mm()
2251 prctl_map.arg_end = mm->arg_end; in prctl_set_mm()
2252 prctl_map.env_start = mm->env_start; in prctl_set_mm()
2253 prctl_map.env_end = mm->env_end; in prctl_set_mm()
2257 prctl_map.start_code = addr; in prctl_set_mm()
2260 prctl_map.end_code = addr; in prctl_set_mm()
2263 prctl_map.start_data = addr; in prctl_set_mm()
2266 prctl_map.end_data = addr; in prctl_set_mm()
2269 prctl_map.start_stack = addr; in prctl_set_mm()
2272 prctl_map.start_brk = addr; in prctl_set_mm()
2275 prctl_map.brk = addr; in prctl_set_mm()
2278 prctl_map.arg_start = addr; in prctl_set_mm()
2281 prctl_map.arg_end = addr; in prctl_set_mm()
2284 prctl_map.env_start = addr; in prctl_set_mm()
2287 prctl_map.env_end = addr; in prctl_set_mm()
2293 error = validate_prctl_map_addr(&prctl_map); in prctl_set_mm()
2316 mm->start_code = prctl_map.start_code; in prctl_set_mm()
2317 mm->end_code = prctl_map.end_code; in prctl_set_mm()
2318 mm->start_data = prctl_map.start_data; in prctl_set_mm()
2319 mm->end_data = prctl_map.end_data; in prctl_set_mm()
2320 mm->start_brk = prctl_map.start_brk; in prctl_set_mm()
2321 mm->brk = prctl_map.brk; in prctl_set_mm()
2322 mm->start_stack = prctl_map.start_stack; in prctl_set_mm()
2323 mm->arg_start = prctl_map.arg_start; in prctl_set_mm()
2324 mm->arg_end = prctl_map.arg_end; in prctl_set_mm()
2325 mm->env_start = prctl_map.env_start; in prctl_set_mm()
2326 mm->env_end = prctl_map.env_end; in prctl_set_mm()