diff options
author | Stefan Haberland <stefan.haberland@de.ibm.com> | 2010-03-24 11:49:54 +0100 |
---|---|---|
committer | Martin Schwidefsky <sky@mschwide.boeblingen.de.ibm.com> | 2010-03-24 11:49:53 +0100 |
commit | b8fde7224d771ce55bfd67cb57d7c4c8f430972f (patch) | |
tree | a9baa7a98c798d0e8477d168bfa543aae39b0952 /drivers/s390 | |
parent | 4a31ba57cae853ce1ac00a22c0f5d80bd36685ed (diff) | |
download | op-kernel-dev-b8fde7224d771ce55bfd67cb57d7c4c8f430972f.zip op-kernel-dev-b8fde7224d771ce55bfd67cb57d7c4c8f430972f.tar.gz |
[S390] dasd: check tsb validity
Check tsb validity before the tcw_get_tsb function is called.
Signed-off-by: Stefan Haberland <stefan.haberland@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'drivers/s390')
-rw-r--r-- | drivers/s390/block/dasd_eckd.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/s390/block/dasd_eckd.c b/drivers/s390/block/dasd_eckd.c index 01f4e7a..0cb2331 100644 --- a/drivers/s390/block/dasd_eckd.c +++ b/drivers/s390/block/dasd_eckd.c @@ -3155,11 +3155,11 @@ static void dasd_eckd_dump_sense_tcw(struct dasd_device *device, tsb = NULL; sense = NULL; - if (irb->scsw.tm.tcw) + if (irb->scsw.tm.tcw && (irb->scsw.tm.fcxs == 0x01)) tsb = tcw_get_tsb( (struct tcw *)(unsigned long)irb->scsw.tm.tcw); - if (tsb && (irb->scsw.tm.fcxs == 0x01)) { + if (tsb) { len += sprintf(page + len, KERN_ERR PRINTK_HEADER " tsb->length %d\n", tsb->length); len += sprintf(page + len, KERN_ERR PRINTK_HEADER |