On Wed, Apr 10, 2019 at 10:44:03AM +0100, Robin Murphy wrote:
> Hi Dan,
> 
> On 10/04/2019 10:34, Dan Carpenter wrote:
> > Hello Jean-Philippe Brucker,
> > 
> > This is a semi-automatic email about new static checker warnings.
> > 
> > The patch fac83d29d954: "iommu/io-pgtable-arm: Fix pgtable allocation
> > in selftest" from Jun 18, 2018, leads to the following Smatch
> > complaint:
> > 
> >      drivers/iommu/io-pgtable-arm.c:246 __arm_lpae_alloc_pages()
> >      error: we previously assumed 'dev' could be null (see line 239)
> > 
> > drivers/iommu/io-pgtable-arm.c
> >     238             VM_BUG_ON((gfp & __GFP_HIGHMEM));
> >     239             p = alloc_pages_node(dev ? dev_to_node(dev) : 
> > NUMA_NO_NODE,
> >                                       ^^^
> > We added a NULL check here
> > 
> >     240                                  gfp | __GFP_ZERO, order);
> >     241             if (!p)
> >     242                     return NULL;
> >     243     
> >     244             pages = page_address(p);
> >     245             if (!(cfg->quirks & IO_PGTABLE_QUIRK_NO_DMA)) {
> 
> The selftests *should* always set this quirk such that they never get to the
> DMA mapping calls (that was one of the reasons for implementing things that
> way) - I guess that might be a bit too sneaky for Smatch, but I can take a
> look to double-check that the flow is working correctly such that this
> really is a false-positive.

Ah, thanks.

I have a plan for fixing these false positives caused by not tracking
bit masks.  It's not that complicated to fix, it just takes time to
write the code.

regards,
dan carpenter

_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

Reply via email to