summaryrefslogtreecommitdiffstats
path: root/arch/s390/kernel/head64.S
diff options
context:
space:
mode:
authorStefan Weinhuber <wein@de.ibm.com>2007-02-05 21:17:04 +0100
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2007-02-05 21:17:04 +0100
commite3c699b38ef3c59521fdd1732efcaaa789d81440 (patch)
tree349eded2ebc023decb01bee6df52d9cd2568478b /arch/s390/kernel/head64.S
parent[S390] sclp: invalid handling of temporary 'not operational' status (diff)
downloadlinux-e3c699b38ef3c59521fdd1732efcaaa789d81440.tar.xz
linux-e3c699b38ef3c59521fdd1732efcaaa789d81440.zip
[S390] dasd: fix bug in dasd initialization cleanup
The initialization of the dasd_eer code is one of the last steps of the dasd driver initialization. When initialization fails in one of the earlier steps, the dasd_exit function is called to clean up what has been done so far. So the dasd_eer_exit function may be called, although the dasd_eer_init function wasn't called before and dasd_eer_exit tries to unregister a misc device that wasn't registered, which results in a BUG. Make sure that dasd_eer_exit can be called without initialization. Use a dynamically allocated struct miscdevice instead of a static one, so we only try to unregister the device if it exists and was actually registered. Signed-off-by: Stefan Weinhuber <wein@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/kernel/head64.S')
0 files changed, 0 insertions, 0 deletions