Skip to content

Commit

Permalink
bpf: fix return values in bpf_program_cgroup_attach()
Browse files Browse the repository at this point in the history
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
  • Loading branch information
Christian Brauner committed Feb 26, 2021
1 parent ca5c34f commit 741c483
Showing 1 changed file with 4 additions and 4 deletions.
8 changes: 4 additions & 4 deletions src/lxc/cgroups/cgroup2_devices.c
Expand Up @@ -385,14 +385,14 @@ int bpf_program_cgroup_attach(struct bpf_program *prog, int type, int fd_cgroup,

if (prog->fd_cgroup >= 0) {
if (prog->attached_type != type)
return log_error_errno(-1, EBUSY, "Wrong type for bpf program");
return syserrno_set(-EBUSY, "Wrong type for bpf program");

/*
* For BPF_F_ALLOW_OVERRIDE the flags of the new and old
* program must match.
*/
if ((flags & BPF_F_ALLOW_OVERRIDE) && (prog->attached_flags != flags))
return log_error_errno(-1, EBUSY, "Wrong flags for bpf program");
return syserrno_set(-EBUSY, "Wrong flags for bpf program");
}

/* Leave the caller's fd alone. */
Expand All @@ -402,7 +402,7 @@ int bpf_program_cgroup_attach(struct bpf_program *prog, int type, int fd_cgroup,

ret = bpf_program_load_kernel(prog);
if (ret < 0)
return log_error_errno(-1, ret, "Failed to load bpf program");
return syserrno(-errno, "Failed to load bpf program");

attr = &(union bpf_attr){
.attach_type = type,
Expand All @@ -416,7 +416,7 @@ int bpf_program_cgroup_attach(struct bpf_program *prog, int type, int fd_cgroup,

ret = bpf(BPF_PROG_ATTACH, attr, sizeof(*attr));
if (ret < 0)
return syserrno_set(-errno, "Failed to attach bpf program");
return syserrno(-errno, "Failed to attach bpf program");

swap(prog->fd_cgroup, fd_attach);
prog->attached_type = type;
Expand Down

0 comments on commit 741c483

Please sign in to comment.