Message ID | 20190311072517.29740-1-kjlu@umn.edu (mailing list archive) |
---|---|
State | Accepted |
Headers | show |
Series | net: ieee802154: fix a potential NULL pointer dereference | expand |
Hello. On 11.03.19 08:30, Hennerich, Michael wrote: > > >> -----Original Message----- >> From: Kangjie Lu [mailto:kjlu@umn.edu] >> Sent: Montag, 11. März 2019 08:25 >> To: kjlu@umn.edu >> Cc: pakki001@umn.edu; Hennerich, Michael <Michael.Hennerich@analog.com>; Alexander Aring <alex.aring@gmail.com>; Stefan >> Schmidt <stefan@datenfreihafen.org>; David S. Miller <davem@davemloft.net>; linux-wpan@vger.kernel.org; >> netdev@vger.kernel.org; linux-kernel@vger.kernel.org >> Subject: [PATCH] net: ieee802154: fix a potential NULL pointer dereference >> >> In case alloc_ordered_workqueue fails, the fix releases >> sources and returns -ENOMEM to avoid NULL pointer dereference. >> >> Signed-off-by: Kangjie Lu <kjlu@umn.edu> > > Acked-by: Michael Hennerich <michael.hennerich@analog.com> Strange enough patchwork did not pick up this acked by from you. I added in manually to the patch. Just so you know. regards Stefan Schmidt
Hello. On 11.03.19 08:25, Kangjie Lu wrote: > In case alloc_ordered_workqueue fails, the fix releases > sources and returns -ENOMEM to avoid NULL pointer dereference. > > Signed-off-by: Kangjie Lu <kjlu@umn.edu> > --- > drivers/net/ieee802154/adf7242.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/drivers/net/ieee802154/adf7242.c b/drivers/net/ieee802154/adf7242.c > index cd1d8faccca5..cd6b95e673a5 100644 > --- a/drivers/net/ieee802154/adf7242.c > +++ b/drivers/net/ieee802154/adf7242.c > @@ -1268,6 +1268,10 @@ static int adf7242_probe(struct spi_device *spi) > INIT_DELAYED_WORK(&lp->work, adf7242_rx_cal_work); > lp->wqueue = alloc_ordered_workqueue(dev_name(&spi->dev), > WQ_MEM_RECLAIM); > + if (unlikely(!lp->wqueue)) { > + ret = -ENOMEM; > + goto err_hw_init; > + } > > ret = adf7242_hw_init(lp); > if (ret) >
Hello. [please ignore the first mail, hit send to early] On 11.03.19 08:25, Kangjie Lu wrote: > In case alloc_ordered_workqueue fails, the fix releases > sources and returns -ENOMEM to avoid NULL pointer dereference. > > Signed-off-by: Kangjie Lu <kjlu@umn.edu> > --- > drivers/net/ieee802154/adf7242.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/drivers/net/ieee802154/adf7242.c b/drivers/net/ieee802154/adf7242.c > index cd1d8faccca5..cd6b95e673a5 100644 > --- a/drivers/net/ieee802154/adf7242.c > +++ b/drivers/net/ieee802154/adf7242.c > @@ -1268,6 +1268,10 @@ static int adf7242_probe(struct spi_device *spi) > INIT_DELAYED_WORK(&lp->work, adf7242_rx_cal_work); > lp->wqueue = alloc_ordered_workqueue(dev_name(&spi->dev), > WQ_MEM_RECLAIM); > + if (unlikely(!lp->wqueue)) { > + ret = -ENOMEM; > + goto err_hw_init; > + } > > ret = adf7242_hw_init(lp); > if (ret) > This patch has been applied to the wpan tree and will be part of the next pull request to net. Thanks! regards Stefan Schmidt
diff --git a/drivers/net/ieee802154/adf7242.c b/drivers/net/ieee802154/adf7242.c index cd1d8faccca5..cd6b95e673a5 100644 --- a/drivers/net/ieee802154/adf7242.c +++ b/drivers/net/ieee802154/adf7242.c @@ -1268,6 +1268,10 @@ static int adf7242_probe(struct spi_device *spi) INIT_DELAYED_WORK(&lp->work, adf7242_rx_cal_work); lp->wqueue = alloc_ordered_workqueue(dev_name(&spi->dev), WQ_MEM_RECLAIM); + if (unlikely(!lp->wqueue)) { + ret = -ENOMEM; + goto err_hw_init; + } ret = adf7242_hw_init(lp); if (ret)
In case alloc_ordered_workqueue fails, the fix releases sources and returns -ENOMEM to avoid NULL pointer dereference. Signed-off-by: Kangjie Lu <kjlu@umn.edu> --- drivers/net/ieee802154/adf7242.c | 4 ++++ 1 file changed, 4 insertions(+)