[PATCH] staging: unisys: virtpci: virtpci.c: Fix for possible null pointer dereference
Rickard Strandqvist
rickard_strandqvist at spectrumdigital.se
Sun Dec 14 22:41:11 UTC 2014
There is otherwise a risk of a possible null pointer dereference.
Was largely found by using a static code analysis program called cppcheck.
Signed-off-by: Rickard Strandqvist <rickard_strandqvist at spectrumdigital.se>
---
drivers/staging/unisys/virtpci/virtpci.c | 23 +++++++++--------------
1 file changed, 9 insertions(+), 14 deletions(-)
diff --git a/drivers/staging/unisys/virtpci/virtpci.c b/drivers/staging/unisys/virtpci/virtpci.c
index ee9f826..d818eda 100644
--- a/drivers/staging/unisys/virtpci/virtpci.c
+++ b/drivers/staging/unisys/virtpci/virtpci.c
@@ -1314,15 +1314,13 @@ static ssize_t virtpci_driver_attr_show(struct kobject *kobj,
ssize_t ret = 0;
struct driver_private *dprivate = to_driver(kobj);
- struct device_driver *driver;
- if (dprivate != NULL)
- driver = dprivate->driver;
- else
- driver = NULL;
+ if (dprivate) {
+ struct device_driver *driver = dprivate->driver;
+
+ DBGINF("In virtpci_driver_attr_show driver->name:%s\n",
+ driver->name);
- DBGINF("In virtpci_driver_attr_show driver->name:%s\n", driver->name);
- if (driver) {
if (dattr->show)
ret = dattr->show(driver, buf);
}
@@ -1337,16 +1335,13 @@ static ssize_t virtpci_driver_attr_store(struct kobject *kobj,
ssize_t ret = 0;
struct driver_private *dprivate = to_driver(kobj);
- struct device_driver *driver;
- if (dprivate != NULL)
- driver = dprivate->driver;
- else
- driver = NULL;
+ if (dprivate) {
+ struct device_driver *driver = dprivate->driver;
- DBGINF("In virtpci_driver_attr_store driver->name:%s\n", driver->name);
+ DBGINF("In virtpci_driver_attr_store driver->name:%s\n",
+ driver->name);
- if (driver) {
if (dattr->store)
ret = dattr->store(driver, buf, count);
}
--
1.7.10.4
More information about the devel
mailing list