[PATCH] nvmet: Don't queue fatal error work if csts.cfs is set
Sagi Grimberg
sagi at grimberg.me
Thu Nov 3 17:13:27 PDT 2016
>> {
>> - ctrl->csts |= NVME_CSTS_CFS;
>> + if (test_and_set_bit(NVME_CSTS_CFS, (unsigned long *)&ctrl->csts))
>> + return;
>> +
>
> This can't work - test_and_set_bit takes a bit index and NVME_CSTS_CFS
> is the actual value. I think we'll need a lock to protect ->csts
> instead.
Oops... it still prevents from fatal_err work from requeueing
so at least I got 50% :)
I'll send a proper patch with a lock in place...
More information about the Linux-nvme
mailing list