DFC-OpenSource / ox-ctrl

OX: Computational Storage SSD Controller

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

A call to nand_reset() makes ox segfault

freysteinn opened this issue · comments

When the make_desc fails, it calls the nand_reset() function, which in turn creates a reset command to the FPGA. This call sets the req_ptr to null, which in turn segfaults with a null pointer exception in io_completer in the following lines:
cmd = Desc_trck[desc_tbl][desc_idx[desc_tbl]].
DescSt_ptr->req_ptr;
err = csr[cmd->chip]->err_code;
Here the cmd->chip segfaults because cmd is null. #

A minor error in my description, the error is in nand_reset(), not reset_dma_descriptors.

The bug is still to be well reproduced, we are not sure what is causing the segfault.

This issue has been fixed, OX does not segfault anymore. However, the NAND channels are still stuck after the reset command.