From: Cornelia Huck Date: Fri, 27 Apr 2007 14:01:36 +0000 (+0200) Subject: [S390] cio: Dont call css_update_ssd_info from interrupt context. X-Git-Tag: v2.6.22-rc1~1130^2~25 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=82b7ac058f60e0c92f9237fbaf440671f437ecdf;p=linux-2.6 [S390] cio: Dont call css_update_ssd_info from interrupt context. Signed-off-by: Cornelia Huck Signed-off-by: Martin Schwidefsky --- diff --git a/drivers/s390/cio/device.c b/drivers/s390/cio/device.c index 7bb44e73ea..3b56f373da 100644 --- a/drivers/s390/cio/device.c +++ b/drivers/s390/cio/device.c @@ -743,6 +743,7 @@ static int io_subchannel_recog(struct ccw_device *, struct subchannel *); static void sch_attach_device(struct subchannel *sch, struct ccw_device *cdev) { + css_update_ssd_info(sch); spin_lock_irq(sch->lock); sch->dev.driver_data = cdev; cdev->private->schid = sch->schid; @@ -878,7 +879,7 @@ io_subchannel_register(struct work_struct *work) priv = container_of(work, struct ccw_device_private, kick_work); cdev = priv->cdev; sch = to_subchannel(cdev->dev.parent); - + css_update_ssd_info(sch); /* * io_subchannel_register() will also be called after device * recognition has been done for a boxed device (which will already diff --git a/drivers/s390/cio/device_fsm.c b/drivers/s390/cio/device_fsm.c index aadd2fd4a8..898ec3b2be 100644 --- a/drivers/s390/cio/device_fsm.c +++ b/drivers/s390/cio/device_fsm.c @@ -246,7 +246,6 @@ ccw_device_recog_done(struct ccw_device *cdev, int state) */ old_lpm = sch->lpm; stsch(sch->schid, &sch->schib); - css_update_ssd_info(sch); sch->lpm = sch->schib.pmcw.pam & sch->opm; /* Check since device may again have become not operational. */ if (!sch->schib.pmcw.dnv)