aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDong Jia Shi2017-07-05 21:00:45 -0500
committerMartin Schwidefsky2017-07-13 04:28:29 -0500
commit2daace78a8c94e2cd20164b8efc18171c56e92ec (patch)
tree3f7d31b2eb1e66280cb31b0b43b6c1307173d138
parentb855629b9a4107c37999723c09cc9fd357b53caf (diff)
downloadlinux-phy-2daace78a8c94e2cd20164b8efc18171c56e92ec.tar.gz
linux-phy-2daace78a8c94e2cd20164b8efc18171c56e92ec.tar.xz
linux-phy-2daace78a8c94e2cd20164b8efc18171c56e92ec.zip
s390: chp: handle CRW_ERC_INIT for channel-path status change
When channel path is identified as the report source code (RSC) of a CRW, and initialized (CRW_ERC_INIT) is recognized as the error recovery code (ERC) by the channel subsystem, it indicates a "path has come" event. Let's handle this case in chp_process_crw(). Reviewed-by: Sebastian Ott <sebott@linux.vnet.ibm.com> Signed-off-by: Dong Jia Shi <bjsdjshi@linux.vnet.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
-rw-r--r--drivers/s390/cio/chp.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/s390/cio/chp.c b/drivers/s390/cio/chp.c
index 7e0d4f724dda..432fc40990bd 100644
--- a/drivers/s390/cio/chp.c
+++ b/drivers/s390/cio/chp.c
@@ -559,6 +559,7 @@ static void chp_process_crw(struct crw *crw0, struct crw *crw1,
559 chpid.id = crw0->rsid; 559 chpid.id = crw0->rsid;
560 switch (crw0->erc) { 560 switch (crw0->erc) {
561 case CRW_ERC_IPARM: /* Path has come. */ 561 case CRW_ERC_IPARM: /* Path has come. */
562 case CRW_ERC_INIT:
562 if (!chp_is_registered(chpid)) 563 if (!chp_is_registered(chpid))
563 chp_new(chpid); 564 chp_new(chpid);
564 chsc_chp_online(chpid); 565 chsc_chp_online(chpid);