diff options
author | Peter Oberparleiter <peter.oberparleiter@de.ibm.com> | 2007-04-27 10:01:29 -0400 |
---|---|---|
committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2007-04-27 10:01:39 -0400 |
commit | c9182e0f42c5646e670c2166b6d6638052d574af (patch) | |
tree | e00c9d7553302265e388d3a7732bfb596cb7daf3 /drivers/s390 | |
parent | e6b6e10ac1de116fc6d2288f185393014851cccf (diff) |
[S390] cio: observe chpid valid flag
Check validity flag of CHPID description data before continuing with
channel-path initialization.
Signed-off-by: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'drivers/s390')
-rw-r--r-- | drivers/s390/cio/chp.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/s390/cio/chp.c b/drivers/s390/cio/chp.c index 6e04521accd8..8a5839147f8a 100644 --- a/drivers/s390/cio/chp.c +++ b/drivers/s390/cio/chp.c | |||
@@ -339,6 +339,10 @@ int chp_new(struct chp_id chpid) | |||
339 | ret = chsc_determine_channel_path_description(chpid, &chp->desc); | 339 | ret = chsc_determine_channel_path_description(chpid, &chp->desc); |
340 | if (ret) | 340 | if (ret) |
341 | goto out_free; | 341 | goto out_free; |
342 | if ((chp->desc.flags & 0x80) == 0) { | ||
343 | ret = -ENODEV; | ||
344 | goto out_free; | ||
345 | } | ||
342 | /* Get channel-measurement characteristics. */ | 346 | /* Get channel-measurement characteristics. */ |
343 | if (css_characteristics_avail && css_chsc_characteristics.scmc | 347 | if (css_characteristics_avail && css_chsc_characteristics.scmc |
344 | && css_chsc_characteristics.secm) { | 348 | && css_chsc_characteristics.secm) { |