Messages in this thread | | | Subject | Re: [PATCH] vDPA/ifcvf: match pointer check to use | From | Tom Rix <> | Date | Tue, 15 Mar 2022 08:03:26 -0700 |
| |
On 3/15/22 6:28 AM, Michael S. Tsirkin wrote: > On Tue, Mar 15, 2022 at 05:41:30AM -0700, trix@redhat.com wrote: >> From: Tom Rix <trix@redhat.com> >> >> Clang static analysis reports this issue >> ifcvf_main.c:49:4: warning: Called function >> pointer is null (null dereference) >> vf->vring->cb.callback(vring->cb.private); >> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> >> The check >> vring = &vf->vring[i]; >> if (vring->cb.callback) >> >> Does not match the use. Change dereference so they match. >> >> Fixes: 79333575b8bd ("vDPA/ifcvf: implement shared IRQ feature") > Thanks a lot! I squashed this into the offending patch - no point in > breaking bisect. Pushed to linux. However I'm now > having second thoughts about applying that patchset - I'd like > soma analysis explaining how this got through testing.
static analysis is something i do treewide.
There are currently ~2500 issues in linux-next, do not panic! many are false positives.
It is pretty easy to setup and once you have a baseline you can filter only your files.
Tom
>> Signed-off-by: Tom Rix <trix@redhat.com> >> --- >> drivers/vdpa/ifcvf/ifcvf_main.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/drivers/vdpa/ifcvf/ifcvf_main.c b/drivers/vdpa/ifcvf/ifcvf_main.c >> index 3b48e717e89f7..4366320fb68d3 100644 >> --- a/drivers/vdpa/ifcvf/ifcvf_main.c >> +++ b/drivers/vdpa/ifcvf/ifcvf_main.c >> @@ -46,7 +46,7 @@ static irqreturn_t ifcvf_vqs_reused_intr_handler(int irq, void *arg) >> for (i = 0; i < vf->nr_vring; i++) { >> vring = &vf->vring[i]; >> if (vring->cb.callback) >> - vf->vring->cb.callback(vring->cb.private); >> + vring->cb.callback(vring->cb.private); >> } >> >> return IRQ_HANDLED; >> -- >> 2.26.3
| |