From: Stefan Weinhuber Date: Mon, 5 Feb 2007 20:17:04 +0000 (+0100) Subject: [S390] dasd: fix bug in dasd initialization cleanup X-Git-Tag: v2.6.21-rc2~42^2~21^2~28 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e3c699b38ef3c59521fdd1732efcaaa789d81440;p=pandora-kernel.git [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 Signed-off-by: Martin Schwidefsky --- Reading git-diff-tree failed