tools/bpf_jit_disasm: silence a static checker warning
authorDan Carpenter <dan.carpenter@oracle.com>
Thu, 18 Jan 2018 09:35:21 +0000 (12:35 +0300)
committerDaniel Borkmann <daniel@iogearbox.net>
Thu, 18 Jan 2018 21:15:37 +0000 (22:15 +0100)
There is a static checker warning that "proglen" has an upper bound but
no lower bound.  The allocation will just fail harmlessly so it's not a
big deal.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
tools/bpf/bpf_jit_disasm.c

index 30044bc4f389e26e97a39c29f5d5c7892056b23c..58c2bab4ef6eb42ffdc80d84437b8f56680b69ce 100644 (file)
@@ -172,7 +172,8 @@ static uint8_t *get_last_jit_image(char *haystack, size_t hlen,
 {
        char *ptr, *pptr, *tmp;
        off_t off = 0;
-       int ret, flen, proglen, pass, ulen = 0;
+       unsigned int proglen;
+       int ret, flen, pass, ulen = 0;
        regmatch_t pmatch[1];
        unsigned long base;
        regex_t regex;
@@ -199,7 +200,7 @@ static uint8_t *get_last_jit_image(char *haystack, size_t hlen,
        }
 
        ptr = haystack + off - (pmatch[0].rm_eo - pmatch[0].rm_so);
-       ret = sscanf(ptr, "flen=%d proglen=%d pass=%d image=%lx",
+       ret = sscanf(ptr, "flen=%d proglen=%u pass=%d image=%lx",
                     &flen, &proglen, &pass, &base);
        if (ret != 4) {
                regfree(&regex);
@@ -239,7 +240,7 @@ static uint8_t *get_last_jit_image(char *haystack, size_t hlen,
        }
 
        assert(ulen == proglen);
-       printf("%d bytes emitted from JIT compiler (pass:%d, flen:%d)\n",
+       printf("%u bytes emitted from JIT compiler (pass:%d, flen:%d)\n",
               proglen, pass, flen);
        printf("%lx + <x>:\n", base);