From: Martin Schwidefsky Date: Wed, 20 Sep 2006 13:59:05 +0000 (+0200) Subject: [S390] dasd deadlock after state change pending interrupt. X-Git-Tag: v2.6.19-rc1~1298^2~24 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a00bfd7147c0c5c04a59f7adcb0e6d8948b90a6e;p=pandora-kernel.git [S390] dasd deadlock after state change pending interrupt. The dasd_device_from_cdev function is called from interrupt context to get the struct dasd_device associated with a ccw device. The driver_data of the ccw device points to the dasd_devmap structure which contains the pointer to the dasd_device structure. The lock that protects the dasd_devmap structure is acquire with out irqsave. To prevent the deadlock in dasd_device_from_cdev if it is called from interrupt context the dependency to the dasd_devmap structure needs to be removed. Let the driver_data of the ccw device point to the dasd_device structure directly and use the ccw device lock to protect the access. Signed-off-by: Martin Schwidefsky --- Reading git-diff-tree failed