summaryrefslogtreecommitdiffstats
path: root/drivers/s390
diff options
context:
space:
mode:
authorPeter Oberparleiter <oberpar@linux.vnet.ibm.com>2013-11-26 15:00:37 +0100
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2013-12-16 14:37:43 +0100
commite6b2551425d961e68e70e806e22ec40787f7ed67 (patch)
treee1f259deec3a9d69bd13b82ab681b029e940b1e1 /drivers/s390
parents390/css: Prevent unnecessary allocation in subchannel loop (diff)
downloadlinux-e6b2551425d961e68e70e806e22ec40787f7ed67.tar.xz
linux-e6b2551425d961e68e70e806e22ec40787f7ed67.zip
s390/blacklist: Perform subchannel scan only when needed
Move scheduling of a subchannel scan to those instances where new devices may actually have become available. This reduces unnecessary scan work in case devices were added to the blacklist. Signed-off-by: Peter Oberparleiter <oberpar@linux.vnet.ibm.com> Reviewed-by: Sebastian Ott <sebott@linux.vnet.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'drivers/s390')
-rw-r--r--drivers/s390/cio/blacklist.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/s390/cio/blacklist.c b/drivers/s390/cio/blacklist.c
index 77ee4daec206..b3f791b2c1f8 100644
--- a/drivers/s390/cio/blacklist.c
+++ b/drivers/s390/cio/blacklist.c
@@ -260,16 +260,16 @@ static int blacklist_parse_proc_parameters(char *buf)
parm = strsep(&buf, " ");
- if (strcmp("free", parm) == 0)
+ if (strcmp("free", parm) == 0) {
rc = blacklist_parse_parameters(buf, free, 0);
- else if (strcmp("add", parm) == 0)
+ css_schedule_eval_all_unreg(0);
+ } else if (strcmp("add", parm) == 0)
rc = blacklist_parse_parameters(buf, add, 0);
else if (strcmp("purge", parm) == 0)
return ccw_purge_blacklisted();
else
return -EINVAL;
- css_schedule_eval_all_unreg(0);
return rc;
}