diff options
author | Sudip Mukherjee <sudipm.mukherjee@gmail.com> | 2016-12-20 21:09:04 +0000 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2017-08-06 18:59:42 -0700 |
commit | 57154f0302cd39a7ff5f3f4ceef23bda4112c77e (patch) | |
tree | 613e26b759c123035230eaa65f0c71666f6e84cb | |
parent | 35bdf9a61dc9bd8e47f988b729e038a1ac8b7c9d (diff) | |
download | linux-stable-57154f0302cd39a7ff5f3f4ceef23bda4112c77e.tar.gz linux-stable-57154f0302cd39a7ff5f3f4ceef23bda4112c77e.tar.bz2 linux-stable-57154f0302cd39a7ff5f3f4ceef23bda4112c77e.zip |
nfc: fdp: fix NULL pointer dereference
commit b6355fb3f5f40bbce165847d277e64896cab8f95 upstream.
We are checking phy after dereferencing it. We can print the debug
information after checking it. If phy is NULL then we will get a good
stack trace to tell us that we are in this irq handler.
Signed-off-by: Sudip Mukherjee <sudip.mukherjee@codethink.co.uk>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/nfc/fdp/i2c.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/nfc/fdp/i2c.c b/drivers/nfc/fdp/i2c.c index 5e797d5c38ed..712936f5d2d6 100644 --- a/drivers/nfc/fdp/i2c.c +++ b/drivers/nfc/fdp/i2c.c @@ -210,14 +210,14 @@ static irqreturn_t fdp_nci_i2c_irq_thread_fn(int irq, void *phy_id) struct sk_buff *skb; int r; - client = phy->i2c_dev; - dev_dbg(&client->dev, "%s\n", __func__); - if (!phy || irq != phy->i2c_dev->irq) { WARN_ON_ONCE(1); return IRQ_NONE; } + client = phy->i2c_dev; + dev_dbg(&client->dev, "%s\n", __func__); + r = fdp_nci_i2c_read(phy, &skb); if (r == -EREMOTEIO) |