mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-09-22 12:44:11 +08:00
[S390] cio: css_probe_device() must be called enabled.
Move css_probe_device() behind giving up the lock for the old subchannel in css_evaluate_known_subchannel() so we aren't disabled when we call it. Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
This commit is contained in:
parent
95425f19be
commit
c2b1449bd1
@ -271,10 +271,6 @@ static int css_evaluate_known_subchannel(struct subchannel *sch, int slow)
|
|||||||
/* Reset intparm to zeroes. */
|
/* Reset intparm to zeroes. */
|
||||||
sch->schib.pmcw.intparm = 0;
|
sch->schib.pmcw.intparm = 0;
|
||||||
cio_modify(sch);
|
cio_modify(sch);
|
||||||
|
|
||||||
/* Probe if necessary. */
|
|
||||||
if (action == UNREGISTER_PROBE)
|
|
||||||
ret = css_probe_device(sch->schid);
|
|
||||||
break;
|
break;
|
||||||
case REPROBE:
|
case REPROBE:
|
||||||
device_trigger_reprobe(sch);
|
device_trigger_reprobe(sch);
|
||||||
@ -283,6 +279,9 @@ static int css_evaluate_known_subchannel(struct subchannel *sch, int slow)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
spin_unlock_irqrestore(&sch->lock, flags);
|
spin_unlock_irqrestore(&sch->lock, flags);
|
||||||
|
/* Probe if necessary. */
|
||||||
|
if (action == UNREGISTER_PROBE)
|
||||||
|
ret = css_probe_device(sch->schid);
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user