On Wed, 25 Mar 2020, 3:41pm, Martin Wilck wrote: > > ---------------------------------------------------------------------- > On Wed, 2020-03-25 at 15:13 -0700, Arun Easi wrote: > > On Wed, 25 Mar 2020, 11:21am, Martin Wilck wrote: > > > > > On Wed, 2020-03-25 at 18:20 +0100, Martin Wilck wrote: > > > > Perhaps the (!fw_started) condition should be treated like > > > > ABORT_ISP_ACTIVE in qla2x00_mailbox_command, i.e. execute only if > > > > is_rom_cmd() returns true? > > > > > > No, this won't be sufficient, as e.g. MBC_IOCB_COMMAND_A64 is in > > > rom_cmds[], but has been found to hang (this is why I had the hunk > > > in > > > qla24xx_fabric_logout()). The list of mailbox commands > > > that must be passed on when the FW is stopped has to be shorter > > > than > > > rom_cmds[]. > > > > > > > With your patch 2/3, where UNLOADING is set prior to the reset of > > chip, in place this issue should be largely addressed. Basically, > > paths that send out request to wire check UNLOADING bit (if any path > > is missing that, should add the check) before sending it out. > > > > Now with UNLOADING set (with your patch 2/3), chip reset, and all > > outstanding command's completion called (qla2x00_abort_isp_cleanup) I > > see less chance of anything being sent out. If you see any issue with > > your patches 1 & 2 (addressing my comments) applied, let me know and > > we can tackle then. How about that? > > It sounds like a plan. Although it means that I just wasted time trying > to figure out which mailbox commands need to be processed even if the > firmware is down :-) > I hope it was not too much time. On the plus side, you know the mailbox path very well now. :) Regards, -Arun