* kernel/bpf/btf.c:5588:13: warning: Boolean result is used in bitwise operation. Clarify expression with parentheses. [clarifyCondition]
@ 2021-09-20 1:04 kernel test robot
0 siblings, 0 replies; 2+ messages in thread
From: kernel test robot @ 2021-09-20 1:04 UTC (permalink / raw)
To: kbuild
[-- Attachment #1: Type: text/plain, Size: 8144 bytes --]
CC: kbuild-all(a)lists.01.org
CC: linux-kernel(a)vger.kernel.org
TO: Andrii Nakryiko <andrii@kernel.org>
CC: Alexei Starovoitov <ast@kernel.org>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 20621d2f27a0163b81dc2b74fd4c0b3e6aa5fa12
commit: 5329722057d41aebc31e391907a501feaa42f7d9 bpf: Assign ID to vmlinux BTF and return extra info for BTF in GET_OBJ_INFO
date: 10 months ago
:::::: branch date: 5 hours ago
:::::: commit date: 10 months ago
compiler: nios2-linux-gcc (GCC) 11.2.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
cppcheck possible warnings: (new ones prefixed by >>, may not real problems)
>> kernel/bpf/core.c:1379:0: warning: Syntax Error: AST broken, binary operator '=' doesn't have two operands. [internalAstError]
^
>> kernel/bpf/syscall.c:2768:12: warning: Boolean result is used in bitwise operation. Clarify expression with parentheses. [clarifyCondition]
if (!ulen ^ !ubuf)
^
>> kernel/bpf/btf.c:5588:13: warning: Boolean result is used in bitwise operation. Clarify expression with parentheses. [clarifyCondition]
if (!uname ^ !uname_len)
^
kernel/bpf/btf.c:4522:38: warning: Either the condition 't?btf_type_vlen(t):5' is redundant or there is pointer arithmetic with NULL pointer. [nullPointerArithmeticRedundantCheck]
args = (const struct btf_param *)(t + 1);
^
kernel/bpf/btf.c:4524:14: note: Assuming that condition 't?btf_type_vlen(t):5' is not redundant
nr_args = t ? btf_type_vlen(t) : 5;
^
kernel/bpf/btf.c:4522:38: note: Null pointer addition
args = (const struct btf_param *)(t + 1);
^
kernel/bpf/btf.c:4373:9: warning: Local variable btf_id shadows outer function [shadowFunction]
int i, btf_id;
^
kernel/bpf/btf.c:5638:5: note: Shadowed declaration
u32 btf_id(const struct btf *btf)
^
kernel/bpf/btf.c:4373:9: note: Shadow variable
int i, btf_id;
^
kernel/bpf/btf.c:5175:6: warning: Local variable btf_id shadows outer function [shadowFunction]
u32 btf_id = 0;
^
kernel/bpf/btf.c:5638:5: note: Shadowed declaration
u32 btf_id(const struct btf *btf)
^
kernel/bpf/btf.c:5175:6: note: Shadow variable
u32 btf_id = 0;
^
kernel/bpf/btf.c:5208:16: warning: Local variable btf_id shadows outer function [shadowFunction]
u32 i, nargs, btf_id;
^
kernel/bpf/btf.c:5638:5: note: Shadowed declaration
u32 btf_id(const struct btf *btf)
^
kernel/bpf/btf.c:5208:16: note: Shadow variable
u32 i, nargs, btf_id;
^
kernel/bpf/btf.c:5306:16: warning: Local variable btf_id shadows outer function [shadowFunction]
u32 i, nargs, btf_id;
^
kernel/bpf/btf.c:5638:5: note: Shadowed declaration
u32 btf_id(const struct btf *btf)
^
kernel/bpf/btf.c:5306:16: note: Shadow variable
u32 i, nargs, btf_id;
^
>> kernel/bpf/btf.c:4277:5: warning: union member 'Anonymous2::__t' is never used. [unusedStructMember]
} *__t;
^
vim +5588 kernel/bpf/btf.c
60197cfb6e11ff Martin KaFai Lau 2018-04-18 5556
60197cfb6e11ff Martin KaFai Lau 2018-04-18 5557 int btf_get_info_by_fd(const struct btf *btf,
60197cfb6e11ff Martin KaFai Lau 2018-04-18 5558 const union bpf_attr *attr,
60197cfb6e11ff Martin KaFai Lau 2018-04-18 5559 union bpf_attr __user *uattr)
60197cfb6e11ff Martin KaFai Lau 2018-04-18 5560 {
62dab84c81a487 Martin KaFai Lau 2018-05-04 5561 struct bpf_btf_info __user *uinfo;
5c6f25887963f1 Greg Kroah-Hartman 2020-03-20 5562 struct bpf_btf_info info;
62dab84c81a487 Martin KaFai Lau 2018-05-04 5563 u32 info_copy, btf_copy;
62dab84c81a487 Martin KaFai Lau 2018-05-04 5564 void __user *ubtf;
5329722057d41a Andrii Nakryiko 2020-11-09 5565 char __user *uname;
5329722057d41a Andrii Nakryiko 2020-11-09 5566 u32 uinfo_len, uname_len, name_len;
5329722057d41a Andrii Nakryiko 2020-11-09 5567 int ret = 0;
60197cfb6e11ff Martin KaFai Lau 2018-04-18 5568
62dab84c81a487 Martin KaFai Lau 2018-05-04 5569 uinfo = u64_to_user_ptr(attr->info.info);
62dab84c81a487 Martin KaFai Lau 2018-05-04 5570 uinfo_len = attr->info.info_len;
62dab84c81a487 Martin KaFai Lau 2018-05-04 5571
62dab84c81a487 Martin KaFai Lau 2018-05-04 5572 info_copy = min_t(u32, uinfo_len, sizeof(info));
5c6f25887963f1 Greg Kroah-Hartman 2020-03-20 5573 memset(&info, 0, sizeof(info));
62dab84c81a487 Martin KaFai Lau 2018-05-04 5574 if (copy_from_user(&info, uinfo, info_copy))
62dab84c81a487 Martin KaFai Lau 2018-05-04 5575 return -EFAULT;
62dab84c81a487 Martin KaFai Lau 2018-05-04 5576
62dab84c81a487 Martin KaFai Lau 2018-05-04 5577 info.id = btf->id;
62dab84c81a487 Martin KaFai Lau 2018-05-04 5578 ubtf = u64_to_user_ptr(info.btf);
62dab84c81a487 Martin KaFai Lau 2018-05-04 5579 btf_copy = min_t(u32, btf->data_size, info.btf_size);
62dab84c81a487 Martin KaFai Lau 2018-05-04 5580 if (copy_to_user(ubtf, btf->data, btf_copy))
62dab84c81a487 Martin KaFai Lau 2018-05-04 5581 return -EFAULT;
62dab84c81a487 Martin KaFai Lau 2018-05-04 5582 info.btf_size = btf->data_size;
62dab84c81a487 Martin KaFai Lau 2018-05-04 5583
5329722057d41a Andrii Nakryiko 2020-11-09 5584 info.kernel_btf = btf->kernel_btf;
5329722057d41a Andrii Nakryiko 2020-11-09 5585
5329722057d41a Andrii Nakryiko 2020-11-09 5586 uname = u64_to_user_ptr(info.name);
5329722057d41a Andrii Nakryiko 2020-11-09 5587 uname_len = info.name_len;
5329722057d41a Andrii Nakryiko 2020-11-09 @5588 if (!uname ^ !uname_len)
5329722057d41a Andrii Nakryiko 2020-11-09 5589 return -EINVAL;
5329722057d41a Andrii Nakryiko 2020-11-09 5590
5329722057d41a Andrii Nakryiko 2020-11-09 5591 name_len = strlen(btf->name);
5329722057d41a Andrii Nakryiko 2020-11-09 5592 info.name_len = name_len;
5329722057d41a Andrii Nakryiko 2020-11-09 5593
5329722057d41a Andrii Nakryiko 2020-11-09 5594 if (uname) {
5329722057d41a Andrii Nakryiko 2020-11-09 5595 if (uname_len >= name_len + 1) {
5329722057d41a Andrii Nakryiko 2020-11-09 5596 if (copy_to_user(uname, btf->name, name_len + 1))
5329722057d41a Andrii Nakryiko 2020-11-09 5597 return -EFAULT;
5329722057d41a Andrii Nakryiko 2020-11-09 5598 } else {
5329722057d41a Andrii Nakryiko 2020-11-09 5599 char zero = '\0';
5329722057d41a Andrii Nakryiko 2020-11-09 5600
5329722057d41a Andrii Nakryiko 2020-11-09 5601 if (copy_to_user(uname, btf->name, uname_len - 1))
5329722057d41a Andrii Nakryiko 2020-11-09 5602 return -EFAULT;
5329722057d41a Andrii Nakryiko 2020-11-09 5603 if (put_user(zero, uname + uname_len - 1))
5329722057d41a Andrii Nakryiko 2020-11-09 5604 return -EFAULT;
5329722057d41a Andrii Nakryiko 2020-11-09 5605 /* let user-space know about too short buffer */
5329722057d41a Andrii Nakryiko 2020-11-09 5606 ret = -ENOSPC;
5329722057d41a Andrii Nakryiko 2020-11-09 5607 }
5329722057d41a Andrii Nakryiko 2020-11-09 5608 }
5329722057d41a Andrii Nakryiko 2020-11-09 5609
62dab84c81a487 Martin KaFai Lau 2018-05-04 5610 if (copy_to_user(uinfo, &info, info_copy) ||
62dab84c81a487 Martin KaFai Lau 2018-05-04 5611 put_user(info_copy, &uattr->info.info_len))
60197cfb6e11ff Martin KaFai Lau 2018-04-18 5612 return -EFAULT;
60197cfb6e11ff Martin KaFai Lau 2018-04-18 5613
5329722057d41a Andrii Nakryiko 2020-11-09 5614 return ret;
60197cfb6e11ff Martin KaFai Lau 2018-04-18 5615 }
78958fca7ead2f Martin KaFai Lau 2018-05-04 5616
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
^ permalink raw reply [flat|nested] 2+ messages in thread
* kernel/bpf/btf.c:5588:13: warning: Boolean result is used in bitwise operation. Clarify expression with parentheses. [clarifyCondition]
@ 2021-08-28 0:21 kernel test robot
0 siblings, 0 replies; 2+ messages in thread
From: kernel test robot @ 2021-08-28 0:21 UTC (permalink / raw)
To: kbuild
[-- Attachment #1: Type: text/plain, Size: 7816 bytes --]
CC: kbuild-all(a)lists.01.org
CC: linux-kernel(a)vger.kernel.org
TO: Andrii Nakryiko <andrii@kernel.org>
CC: Alexei Starovoitov <ast@kernel.org>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 8f9d0349841a2871624bb1e85309e03e9867c16e
commit: 5329722057d41aebc31e391907a501feaa42f7d9 bpf: Assign ID to vmlinux BTF and return extra info for BTF in GET_OBJ_INFO
date: 10 months ago
:::::: branch date: 5 hours ago
:::::: commit date: 10 months ago
compiler: s390-linux-gcc (GCC) 11.2.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
cppcheck possible warnings: (new ones prefixed by >>, may not real problems)
>> kernel/bpf/btf.c:5588:13: warning: Boolean result is used in bitwise operation. Clarify expression with parentheses. [clarifyCondition]
if (!uname ^ !uname_len)
^
kernel/bpf/btf.c:4522:38: warning: Either the condition 't?btf_type_vlen(t):5' is redundant or there is pointer arithmetic with NULL pointer. [nullPointerArithmeticRedundantCheck]
args = (const struct btf_param *)(t + 1);
^
kernel/bpf/btf.c:4524:14: note: Assuming that condition 't?btf_type_vlen(t):5' is not redundant
nr_args = t ? btf_type_vlen(t) : 5;
^
kernel/bpf/btf.c:4522:38: note: Null pointer addition
args = (const struct btf_param *)(t + 1);
^
kernel/bpf/btf.c:4373:9: warning: Local variable btf_id shadows outer function [shadowFunction]
int i, btf_id;
^
kernel/bpf/btf.c:5638:5: note: Shadowed declaration
u32 btf_id(const struct btf *btf)
^
kernel/bpf/btf.c:4373:9: note: Shadow variable
int i, btf_id;
^
kernel/bpf/btf.c:5175:6: warning: Local variable btf_id shadows outer function [shadowFunction]
u32 btf_id = 0;
^
kernel/bpf/btf.c:5638:5: note: Shadowed declaration
u32 btf_id(const struct btf *btf)
^
kernel/bpf/btf.c:5175:6: note: Shadow variable
u32 btf_id = 0;
^
kernel/bpf/btf.c:5208:16: warning: Local variable btf_id shadows outer function [shadowFunction]
u32 i, nargs, btf_id;
^
kernel/bpf/btf.c:5638:5: note: Shadowed declaration
u32 btf_id(const struct btf *btf)
^
kernel/bpf/btf.c:5208:16: note: Shadow variable
u32 i, nargs, btf_id;
^
kernel/bpf/btf.c:5306:16: warning: Local variable btf_id shadows outer function [shadowFunction]
u32 i, nargs, btf_id;
^
kernel/bpf/btf.c:5638:5: note: Shadowed declaration
u32 btf_id(const struct btf *btf)
^
kernel/bpf/btf.c:5306:16: note: Shadow variable
u32 i, nargs, btf_id;
^
>> kernel/bpf/btf.c:4277:5: warning: union member 'Anonymous2::__t' is never used. [unusedStructMember]
} *__t;
^
vim +5588 kernel/bpf/btf.c
60197cfb6e11ff Martin KaFai Lau 2018-04-18 5556
60197cfb6e11ff Martin KaFai Lau 2018-04-18 5557 int btf_get_info_by_fd(const struct btf *btf,
60197cfb6e11ff Martin KaFai Lau 2018-04-18 5558 const union bpf_attr *attr,
60197cfb6e11ff Martin KaFai Lau 2018-04-18 5559 union bpf_attr __user *uattr)
60197cfb6e11ff Martin KaFai Lau 2018-04-18 5560 {
62dab84c81a487 Martin KaFai Lau 2018-05-04 5561 struct bpf_btf_info __user *uinfo;
5c6f25887963f1 Greg Kroah-Hartman 2020-03-20 5562 struct bpf_btf_info info;
62dab84c81a487 Martin KaFai Lau 2018-05-04 5563 u32 info_copy, btf_copy;
62dab84c81a487 Martin KaFai Lau 2018-05-04 5564 void __user *ubtf;
5329722057d41a Andrii Nakryiko 2020-11-09 5565 char __user *uname;
5329722057d41a Andrii Nakryiko 2020-11-09 5566 u32 uinfo_len, uname_len, name_len;
5329722057d41a Andrii Nakryiko 2020-11-09 5567 int ret = 0;
60197cfb6e11ff Martin KaFai Lau 2018-04-18 5568
62dab84c81a487 Martin KaFai Lau 2018-05-04 5569 uinfo = u64_to_user_ptr(attr->info.info);
62dab84c81a487 Martin KaFai Lau 2018-05-04 5570 uinfo_len = attr->info.info_len;
62dab84c81a487 Martin KaFai Lau 2018-05-04 5571
62dab84c81a487 Martin KaFai Lau 2018-05-04 5572 info_copy = min_t(u32, uinfo_len, sizeof(info));
5c6f25887963f1 Greg Kroah-Hartman 2020-03-20 5573 memset(&info, 0, sizeof(info));
62dab84c81a487 Martin KaFai Lau 2018-05-04 5574 if (copy_from_user(&info, uinfo, info_copy))
62dab84c81a487 Martin KaFai Lau 2018-05-04 5575 return -EFAULT;
62dab84c81a487 Martin KaFai Lau 2018-05-04 5576
62dab84c81a487 Martin KaFai Lau 2018-05-04 5577 info.id = btf->id;
62dab84c81a487 Martin KaFai Lau 2018-05-04 5578 ubtf = u64_to_user_ptr(info.btf);
62dab84c81a487 Martin KaFai Lau 2018-05-04 5579 btf_copy = min_t(u32, btf->data_size, info.btf_size);
62dab84c81a487 Martin KaFai Lau 2018-05-04 5580 if (copy_to_user(ubtf, btf->data, btf_copy))
62dab84c81a487 Martin KaFai Lau 2018-05-04 5581 return -EFAULT;
62dab84c81a487 Martin KaFai Lau 2018-05-04 5582 info.btf_size = btf->data_size;
62dab84c81a487 Martin KaFai Lau 2018-05-04 5583
5329722057d41a Andrii Nakryiko 2020-11-09 5584 info.kernel_btf = btf->kernel_btf;
5329722057d41a Andrii Nakryiko 2020-11-09 5585
5329722057d41a Andrii Nakryiko 2020-11-09 5586 uname = u64_to_user_ptr(info.name);
5329722057d41a Andrii Nakryiko 2020-11-09 5587 uname_len = info.name_len;
5329722057d41a Andrii Nakryiko 2020-11-09 @5588 if (!uname ^ !uname_len)
5329722057d41a Andrii Nakryiko 2020-11-09 5589 return -EINVAL;
5329722057d41a Andrii Nakryiko 2020-11-09 5590
5329722057d41a Andrii Nakryiko 2020-11-09 5591 name_len = strlen(btf->name);
5329722057d41a Andrii Nakryiko 2020-11-09 5592 info.name_len = name_len;
5329722057d41a Andrii Nakryiko 2020-11-09 5593
5329722057d41a Andrii Nakryiko 2020-11-09 5594 if (uname) {
5329722057d41a Andrii Nakryiko 2020-11-09 5595 if (uname_len >= name_len + 1) {
5329722057d41a Andrii Nakryiko 2020-11-09 5596 if (copy_to_user(uname, btf->name, name_len + 1))
5329722057d41a Andrii Nakryiko 2020-11-09 5597 return -EFAULT;
5329722057d41a Andrii Nakryiko 2020-11-09 5598 } else {
5329722057d41a Andrii Nakryiko 2020-11-09 5599 char zero = '\0';
5329722057d41a Andrii Nakryiko 2020-11-09 5600
5329722057d41a Andrii Nakryiko 2020-11-09 5601 if (copy_to_user(uname, btf->name, uname_len - 1))
5329722057d41a Andrii Nakryiko 2020-11-09 5602 return -EFAULT;
5329722057d41a Andrii Nakryiko 2020-11-09 5603 if (put_user(zero, uname + uname_len - 1))
5329722057d41a Andrii Nakryiko 2020-11-09 5604 return -EFAULT;
5329722057d41a Andrii Nakryiko 2020-11-09 5605 /* let user-space know about too short buffer */
5329722057d41a Andrii Nakryiko 2020-11-09 5606 ret = -ENOSPC;
5329722057d41a Andrii Nakryiko 2020-11-09 5607 }
5329722057d41a Andrii Nakryiko 2020-11-09 5608 }
5329722057d41a Andrii Nakryiko 2020-11-09 5609
62dab84c81a487 Martin KaFai Lau 2018-05-04 5610 if (copy_to_user(uinfo, &info, info_copy) ||
62dab84c81a487 Martin KaFai Lau 2018-05-04 5611 put_user(info_copy, &uattr->info.info_len))
60197cfb6e11ff Martin KaFai Lau 2018-04-18 5612 return -EFAULT;
60197cfb6e11ff Martin KaFai Lau 2018-04-18 5613
5329722057d41a Andrii Nakryiko 2020-11-09 5614 return ret;
60197cfb6e11ff Martin KaFai Lau 2018-04-18 5615 }
78958fca7ead2f Martin KaFai Lau 2018-05-04 5616
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2021-09-20 1:04 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-20 1:04 kernel/bpf/btf.c:5588:13: warning: Boolean result is used in bitwise operation. Clarify expression with parentheses. [clarifyCondition] kernel test robot
-- strict thread matches above, loose matches on Subject: below --
2021-08-28 0:21 kernel test robot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.