On 03/10/2016, 06:59 AM, Nicholas A. Bellinger wrote: >> but I think it is impossible to move >> the lock below. The code still has this here: >> >> if (cmd->transport_state & CMD_T_LUN_STOP) { >> pr_debug("%s:%d CMD_T_LUN_STOP for ITT: 0x%08x\n", >> __func__, __LINE__, cmd->se_tfo->get_task_tag(cmd)); >> >> cmd->transport_state &= ~CMD_T_ACTIVE; >> if (remove_from_lists) >> target_remove_from_state_list(cmd); >> spin_unlock_irqrestore(&cmd->t_state_lock, flags); >> >> complete(&cmd->transport_lun_stop_comp); >> return 1; >> } >> >> And it seems transport_state needs the lock, right? > > This would end up being dropped with a proper se_lun->lun_ref backport > in place.. > > So I'll take another stab at this some point, but me thinks it's going > to end up requiring se_lun->lun_ref support in v3.12 + earlier code to > work. > > On a side note, the bugs this series addresses aren't being actively > triggered in v3.12 code, as the COMPARE_AND_WRITE emulation causing the > aggressive multi-port TMRs to be generated by ESX to trigger this bug > weren't introduced until v3.14+. Great, thanks, so I will drop all of them for now from 3.12. thanks, -- js suse labs -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html