Patchwork [bpf-next] libbpf: fix BPF_LOG_BUF_SIZE off-by-one error

login
register
mail settings
Submitter robert.mccabe@collins.com
Date April 19, 2019, 4:44 p.m.
Message ID <20190419164441.2962-1-robert.mccabe@collins.com>
Download mbox | patch
Permalink /patch/777289/
State New
Headers show

Comments

robert.mccabe@collins.com - April 19, 2019, 4:44 p.m.
From: "McCabe, Robert J" <Robert.McCabe@rockwellcollins.com>

The BPF_PROG_LOAD condition for kernel version <= 5.1 is

   log->len_total > UINT_MAX >> 8 /* (16 * 1024 * 1024) - 1 */

Signed-off-by: rjmccabe3701 <robert.mccabe@rockwellcollins.com>
---
 tools/lib/bpf/bpf.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--
2.17.1

Patch

diff --git a/tools/lib/bpf/bpf.h b/tools/lib/bpf/bpf.h
index bc30783d1403..62d67caa7aea 100644
--- a/tools/lib/bpf/bpf.h
+++ b/tools/lib/bpf/bpf.h
@@ -92,7 +92,7 @@  struct bpf_load_program_attr {
 #define MAPS_RELAX_COMPAT	0x01

 /* Recommend log buffer size */
-#define BPF_LOG_BUF_SIZE (16 * 1024 * 1024) /* verifier maximum in kernels <= 5.1 */
+#define BPF_LOG_BUF_SIZE ((16 * 1024 * 1024) - 1) /* verifier maximum in kernels <= 5.1 */
 LIBBPF_API int
 bpf_load_program_xattr(const struct bpf_load_program_attr *load_attr,
 		       char *log_buf, size_t log_buf_sz);