Commit 0310c8b5 authored by Sebastian Ott's avatar Sebastian Ott Committed by Martin Schwidefsky

s390/ccwgroup: fix an uninitialized return code

Since commit 0b60f9ea
"s390: use device_remove_file_self() instead of device_schedule_callback()"
the return code of ccwgroup_ungroup_store is uninitialized. Make
sure the rc is always initialized.
Signed-off-by: default avatarSebastian Ott <sebott@linux.vnet.ibm.com>
Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
parent 9280ddb1
...@@ -184,7 +184,7 @@ static ssize_t ccwgroup_ungroup_store(struct device *dev, ...@@ -184,7 +184,7 @@ static ssize_t ccwgroup_ungroup_store(struct device *dev,
const char *buf, size_t count) const char *buf, size_t count)
{ {
struct ccwgroup_device *gdev = to_ccwgroupdev(dev); struct ccwgroup_device *gdev = to_ccwgroupdev(dev);
int rc; int rc = 0;
/* Prevent concurrent online/offline processing and ungrouping. */ /* Prevent concurrent online/offline processing and ungrouping. */
if (atomic_cmpxchg(&gdev->onoff, 0, 1) != 0) if (atomic_cmpxchg(&gdev->onoff, 0, 1) != 0)
...@@ -196,11 +196,12 @@ static ssize_t ccwgroup_ungroup_store(struct device *dev, ...@@ -196,11 +196,12 @@ static ssize_t ccwgroup_ungroup_store(struct device *dev,
if (device_remove_file_self(dev, attr)) if (device_remove_file_self(dev, attr))
ccwgroup_ungroup(gdev); ccwgroup_ungroup(gdev);
else
rc = -ENODEV;
out: out:
if (rc) { if (rc) {
if (rc != -EAGAIN) /* Release onoff "lock" when ungrouping failed. */
/* Release onoff "lock" when ungrouping failed. */ atomic_set(&gdev->onoff, 0);
atomic_set(&gdev->onoff, 0);
return rc; return rc;
} }
return count; return count;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment