[SCSI] Fix SCSI tape oops at module removal
authorKai Makisara <Kai.Makisara@kolumbus.fi>
Tue, 2 Aug 2005 09:21:51 +0000 (12:21 +0300)
committerJames Bottomley <jejb@mulgrave.(none)>
Tue, 2 Aug 2005 15:14:36 +0000 (10:14 -0500)
commitc2c96f46f46df072e49200a1181b3086cd2f08a6
treefd85a89e3f3d10d7f604b45ae985ecbbc6f28fb6
parentc1a15468d58e75debc5437b2e4e12d02a89bb3a2
[SCSI] Fix SCSI tape oops at module removal

Removing the SCSI tape module results in an oops in class_device_destroy if
any devices are present. The patch at the end of this message fixes the bug
by moving class_destroy() later in exit_st() so that the class still exists
when devices are removed. (The bug is old but class_simple_device_remove() did
nothing when the class did not exist.)

The patch also fixes a "class leak" in init_st() error path.

I would like to get this into 2.6.13 but it may be too late?

Signed-off-by: Kai Makisara <kai.makisara@kolumbus.fi>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
drivers/scsi/st.c