If verifier log is in BPF_LOG_KERNEL mode, no log->ubuf is expected and
it stays NULL throughout entire verification process. Don't erroneously
return -EFAULT in such case.
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Lorenz Bauer <lmb@isovalent.com>
Link: https://lore.kernel.org/bpf/20230406234205.323208-10-andrii@kernel.org
bpf_vlog_finalize(log);
if (log->level && bpf_vlog_truncated(log))
ret = -ENOSPC;
- if (log->level && !log->ubuf) {
+ if (log->level && log->level != BPF_LOG_KERNEL && !log->ubuf) {
ret = -EFAULT;
goto err_release_maps;
}