[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <ZHn9g6QoMUo3ZPog@ziepe.ca>
Date: Fri, 2 Jun 2023 11:32:35 -0300
From: Jason Gunthorpe <jgg@...pe.ca>
To: Baolu Lu <baolu.lu@...ux.intel.com>
Cc: Yanfei Xu <yanfei.xu@...el.com>, dwmw2@...radead.org,
joro@...tes.org, will@...nel.org, robin.murphy@....com,
iommu@...ts.linux.dev, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 2/2] iommu/vt-d: Use BUG_ON to check NULL value of 'table'
On Wed, May 31, 2023 at 11:26:55AM +0800, Baolu Lu wrote:
> On 5/30/23 5:25 PM, Yanfei Xu wrote:
> > Checking NULL value of 'table' variable deserves a BUG_ON as the
> > following code will trigger a crash by dereferencing the NULL
> > 'table' pointer. Crash in advance with BUG_ON to avoid WARN_ON
> > plus NULL pointer dereferencing can simplify the crash log.
> >
> > Signed-off-by: Yanfei Xu<yanfei.xu@...el.com>
> > ---
> > drivers/iommu/intel/iommu.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/iommu/intel/iommu.c b/drivers/iommu/intel/iommu.c
> > index e98f1b122b49..8aa3bfdb7f95 100644
> > --- a/drivers/iommu/intel/iommu.c
> > +++ b/drivers/iommu/intel/iommu.c
> > @@ -1944,7 +1944,7 @@ static int domain_context_mapping_one(struct dmar_domain *domain,
> > if (sm_supported(iommu)) {
> > unsigned long pds;
> > - WARN_ON(!table);
> > + BUG_ON(!table);
>
> BUG_ON() is not recommended. Perhaps,
>
> if (!table)
> -ENODEV;
>
> ?
If it is not something you think needs active debugging then just let
it crash on the NULL pointer deref. You get a nice backtrace from that
already.
The additional value of the WARN is it gives you a line number, a
prettier print and it might recover more cleanly (or not, it might
just crash somewhere else).
Jason
Powered by blists - more mailing lists