mirror of
https://github.com/SCST-project/scst.git
synced 2026-08-20 14:16:31 +00:00
1f600fcc9159280149d1683c72d50f3b1b70d8f6
device_unregister() invokes scst_local_release_adapter() and hence unregisters the session. Avoid that it is attempted a second time to unregister the session which would result in a crash. [3656]: scst: scst_unregister_target:680:Target local for template scst_local unregistered successfully [3656]: scst: scst_unregister_target_template:457:Target template scst_local unregistered successfully [3655]: scst_unregister_session:6795:Unregistering session ffff8800071a0000 (wait 0) general protection fault: 0000 [#1] SMP Modules linked in: iscsi_scst(O) scst_vdisk(O) scst(O) ntfs vfat msdos fat ext3 jbd ext2 brd netconsole configfs isofs ib_iser rdma_cm ib_cm iw_cm ib_sa ib_mad ib_core ib_addr iscsi_tcp libiscsi_tcp libiscsi scsi_transport_iscsi joydev hid_generic binfmt_misc usbhid hid intel_agp psmouse intel_gtt processor agpgart microcode i2c_piix4 button lp parport ext4 mbcache jbd2 floppy ata_piix zlib_deflate libcrc32c [last unloaded: scst_local] CPU 1 Pid: 3655, comm: scsi_id Tainted: G O 3.6.5-debug+ #1 Bochs Bochs RIP: 0010:[<ffffffffa0221a74>] [<ffffffffa0221a74>] scst_pre_rx_mgmt_cmd+0x64/0x210 [scst] RSP: 0018:ffff88000304d598 EFLAGS: 00010246 RAX: 6b6b6b6b6b6b6b6b RBX: 0000000000000001 RCX: 0000000000000000 RDX: 0000000000000001 RSI: 000000000000000a RDI: ffff8800071a0000 RBP: ffff88000304d5c8 R08: 0000000000000002 R09: 0000000000000000 R10: 000000000000c81d R11: 0000000000000000 R12: ffff8800071a0000 R13: 000000000000000a R14: 0000000000000000 R15: ffff880000000000 FS: 00007fb6fe8c6700(0000) GS:ffff88003e000000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b CR2: 00007f2169286bd0 CR3: 000000001cd26000 CR4: 00000000000006e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 Process scsi_id (pid: 3655, threadinfo ffff88000304c000, task ffff88003d9a0000) Stack: 0000000000000000 0000000000000282 ffff88000304d650 0000000000000000 ffff8800071a0000 dead4ead00000000 ffff88000304d638 ffffffffa0221fdf 0000000000000004 0000000000000000 ffff88000304d5f8 ffffffffa025d6a3 Call Trace: [<ffffffffa0221fdf>] scst_rx_mgmt_fn+0x7f/0x3a0 [scst] [<ffffffffa025d6a3>] ? spin_unlock_irqrestore.constprop.0+0x13/0x20 [scst] [<ffffffffa025d825>] ? debug_print_with_prefix+0x165/0x1f0 [scst] [<ffffffffa022acaa>] scst_rx_mgmt_fn_lun.constprop.34+0x4a/0x60 [scst] [<ffffffffa022adf1>] scst_unregister_session+0x131/0x320 [scst] [<ffffffff812bfce7>] ? device_release+0x27/0xa0 [<ffffffff8120450b>] ? kobject_release+0x8b/0x1d0 [<ffffffff8120438c>] ? kobject_put+0x2c/0x60 [<ffffffff812bfa97>] ? put_device+0x17/0x20 [<ffffffff812de820>] ? scsi_host_dev_release+0xc0/0xe0 [<ffffffff812bfce7>] ? device_release+0x27/0xa0 [<ffffffff8120450b>] ? kobject_release+0x8b/0x1d0 [<ffffffff8120438c>] ? kobject_put+0x2c/0x60 [<ffffffff812bfa97>] ? put_device+0x17/0x20 [<ffffffff812e7102>] ? scsi_target_dev_release+0x22/0x30 [<ffffffff812bfce7>] ? device_release+0x27/0xa0 [<ffffffff8120450b>] ? kobject_release+0x8b/0x1d0 [<ffffffff8120438c>] ? kobject_put+0x2c/0x60 [<ffffffff812bfa97>] ? put_device+0x17/0x20 [<ffffffff812ea858>] ? scsi_device_dev_release_usercontext+0x108/0x120 [<ffffffff812ea750>] ? scsi_device_cls_release+0x20/0x20 [<ffffffff8105a996>] ? execute_in_process_context+0x86/0xa0 [<ffffffff812ea72c>] ? scsi_device_dev_release+0x1c/0x20 [<ffffffff812bfce7>] ? device_release+0x27/0xa0 [<ffffffff8120450b>] ? kobject_release+0x8b/0x1d0 [<ffffffff8120438c>] ? kobject_put+0x2c/0x60 [<ffffffff812bfa97>] ? put_device+0x17/0x20 [<ffffffff812dc534>] ? scsi_device_put+0x44/0x60 [<ffffffff812f685d>] ? scsi_cd_put+0x4d/0x70 [<ffffffff812f69b0>] ? sr_block_open+0xd0/0x120 [<ffffffff81184389>] ? __blkdev_get+0xe9/0x4a0 [<ffffffff81183bb4>] ? bd_acquire+0x24/0xf0 [<ffffffff81184a90>] ? blkdev_get+0x350/0x350 [<ffffffff81184793>] ? blkdev_get+0x53/0x350 [<ffffffff81156a72>] ? complete_walk+0x52/0x140 [<ffffffff81184a90>] ? blkdev_get+0x350/0x350 [<ffffffff814ac49b>] ? _raw_spin_unlock+0x2b/0x50 [<ffffffff81184a90>] ? blkdev_get+0x350/0x350 [<ffffffff81184afc>] ? blkdev_open+0x6c/0x90 [<ffffffff81148fb6>] ? do_dentry_open.isra.19+0x216/0x2a0 [<ffffffff81149062>] ? finish_open+0x22/0x40 [<ffffffff8115a62e>] ? do_last+0x72e/0xe20 [<ffffffff811572d8>] ? inode_permission+0x18/0x50 [<ffffffff8115737b>] ? link_path_walk+0x6b/0x930 [<ffffffff8115add6>] ? path_openat+0xb6/0x4a0 [<ffffffff81097c9d>] ? trace_hardirqs_on+0xd/0x10 [<ffffffff8115b5d2>] ? do_filp_open+0x42/0xa0 [<ffffffff814ac49b>] ? _raw_spin_unlock+0x2b/0x50 [<ffffffff81168802>] ? alloc_fd+0xd2/0x120 [<ffffffff8114a150>] ? do_sys_open+0x100/0x1e0 [<ffffffff8114a251>] ? sys_open+0x21/0x30 [<ffffffff814b5029>] ? system_call_fastpath+0x16/0x1b Code: 00 00 65 48 8b 04 25 80 ba 00 00 8b b0 94 01 00 00 48 c7 c2 a0 b8 26 a0 31 c0 48 c7 c7 45 e0 27 a0 e8 23 15 28 e1 49 8b 44 24 08 <48> 8b 40 30 48 83 78 50 00 0f 84 52 01 00 00 83 fb 01 19 ff 81 Signed-off-by: Bart Van Assche <bvanassche@acm.org> git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4658 d57e44dd-8a1f-0410-8b47-8ef2f437770f
This is the SCST development repository. It contains not a single project SCST as one can think, but a number of them, which are divided as the following: 1. SCST core in scst/ subdirectory 2. Administration utility for SCST core scstadmin in scstadmin/ 3. Target drivers in own subdirectories qla2x00t/, iscsi-scst/, etc. 4. User space programs in usr/ subdirectory, like fileio_tgt. 5. Some various docs in doc/ subdirectory. Those subprojects are in most cases independent from each other, although some of them depend from the SCST core. They put in the single repository only to simplify their development, they are released independently. Thus, use "make all" only if you really need to build everything. Otherwise build only what you need, like for iSCSI-SCST: make scst scst_install iscsi iscsi_install For more information about each subproject see their README files. Vladislav Bolkhovitin <vst@vlnb.net>, http://scst.sourceforge.net
Languages
C
90.1%
Perl
4.2%
Shell
1.8%
HTML
1.7%
Makefile
1.2%
Other
0.9%