• Bart Van Assche's avatar
    tcm_fc: Wait for command completion before freeing a session · de7ee9a2
    Bart Van Assche authored
    This patch avoids that the following kernel crash can occur with
    later patches in this patch series:
    
    general protection fault: 0000 [#1] SMP
    CPU: 0 PID: 6 Comm: kworker/u8:0 Not tainted 4.3.0-rc1-debug+ #1
    Workqueue: tmr-fileio target_tmr_work [target_core_mod]
    Call Trace:
     [<ffffffff810a6915>] lock_acquire+0x65/0x90
     [<ffffffff815e740b>] _raw_spin_lock_irqsave+0x4b/0x60
     [<ffffffffa03bc7ca>] target_release_cmd_kref+0x2a/0xa0 [target_core_mod]
     [<ffffffffa03bd418>] target_put_sess_cmd+0x28/0x50 [target_core_mod]
     [<ffffffffa03bad50>] core_tmr_lun_reset+0x390/0x640 [target_core_mod]
     [<ffffffffa03bce50>] target_tmr_work+0x80/0xd0 [target_core_mod]
     [<ffffffff81070e6d>] process_one_work+0x19d/0x430
     [<ffffffff8107120f>] worker_thread+0x10f/0x460
     [<ffffffff810772ba>] kthread+0xea/0x100
     [<ffffffff815e7a2f>] ret_from_fork+0x3f/0x70
    Signed-off-by: default avatarBart Van Assche <bart.vanassche@sandisk.com>
    Cc: Christoph Hellwig <hch@lst.de>
    Cc: Andy Grover <agrover@redhat.com>
    Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
    de7ee9a2
tfc_sess.c 11.5 KB