aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/bpf/syscall.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/bpf/syscall.c')
-rw-r--r--kernel/bpf/syscall.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/kernel/bpf/syscall.c b/kernel/bpf/syscall.c
index cdc06546401b..233e3ac836a6 100644
--- a/kernel/bpf/syscall.c
+++ b/kernel/bpf/syscall.c
@@ -195,7 +195,7 @@ static int map_create(union bpf_attr *attr)
195 195
196 err = bpf_map_charge_memlock(map); 196 err = bpf_map_charge_memlock(map);
197 if (err) 197 if (err)
198 goto free_map; 198 goto free_map_nouncharge;
199 199
200 err = bpf_map_new_fd(map); 200 err = bpf_map_new_fd(map);
201 if (err < 0) 201 if (err < 0)
@@ -205,6 +205,8 @@ static int map_create(union bpf_attr *attr)
205 return err; 205 return err;
206 206
207free_map: 207free_map:
208 bpf_map_uncharge_memlock(map);
209free_map_nouncharge:
208 map->ops->map_free(map); 210 map->ops->map_free(map);
209 return err; 211 return err;
210} 212}