Memory sub-system incomplete shutdown debugging
The disclosure configures a memory sub-system controller to enable debugging incomplete shutdown of a memory sub-system. The controller detects a power-loss event associated with incomplete shutdown of the memory sub-system. The controller, in response to detecting the power-loss event associated with the memory sub-system, retrieves a subset of debugging fields. The controller stores the subset of debugging fields in a reprogrammable read-only memory associated with the memory sub-system.
1 . A system comprising:
a set of memory components of a memory sub-system; and
at least one processing device operatively coupled to the set of memory components, the at least one processing device programmed to perform operations comprising:
detecting a power-loss event associated with an incomplete shutdown of the memory sub-system, the incomplete shutdown comprising one or more shutdown operations not being initiated or not being completed before power to the memory sub-system is lost;
based on detecting the power-loss event associated with the incomplete shutdown of the memory sub-system, retrieving a subset of debugging fields; and
storing the subset of debugging fields in a reprogrammable read-only memory associated with the memory sub-system, wherein the subset of debugging fields comprises a panic step field that is set during a panic mode and represents one or more individual operations of the panic mode.
2 . The system of claim 1 , comprising:
a capacitor coupled to the at least one processing device and configured to deliver power to the memory sub-system during a power-loss event.
3 . The system of claim 2 , wherein the capacitor is coupled to a power source of the at least one processing device and a host system.
4 . The system of claim 3 , wherein the at least one processing device is configured to receive power being discharged from the capacitor when power stops being received from the power source, the power-loss event occurring when the at least one processing device stops receiving power from the power source.
5 . The system of claim 4 , wherein the at least one processing device is configured to retrieve the subset of debugging fields and store the subset of debugging fields before the capacitor completely discharges.
6 . The system of claim 1 , the operations comprising storing the panic step field periodically.
7 . The system of claim 1 , wherein the reprogrammable read-only memory comprises a first portion for storing vendor product data (VPD) and a second portion reserved for storing the subset of debugging fields, the incomplete shutdown resulting in data corruption and data loss.
8 . The system of claim 7 , wherein the VPD comprises a serial number, a manufacturer identifier, firmware version, capacity, interface type, flash type, write and read speeds, operating temperature range, power consumption, error correction code type, geometry information including number of planes and blocks, or a model number of the memory sub-system.
9 . The system of claim 1 , wherein the subset of debugging fields comprises a power-loss flag field, the power-loss flag field being set in response to initiating power-loss functions associated with the power-loss event.
10 . The system of claim 9 , the operations comprising:
storing the power-loss flag field in the reprogrammable read-only memory in response to initiating the power-loss functions or in response to detecting initiation of a panic mode.
11 . The system of claim 9 , wherein the power-loss flag field is cleared in response to being read from the reprogrammable read-only memory when no error is detected or in response to a sanitize command.
12 . The system of claim 1 , wherein the subset of debugging fields comprises a panic mode status field, the panic mode status field being set and stored in the reprogrammable read-only memory in response to initiating panic mode.
13 . The system of claim 12 , wherein the panic mode status field is cleared in response to a sanitize command.
14 . The system of claim 1 , the operations comprising storing the panic step field periodically during the panic mode in the reprogrammable read-only memory.
15 . The system of claim 1 , wherein the subset of debugging fields comprises a double panic mode status field, the double panic mode status field being set and stored in the reprogrammable read-only memory in response to initiating panic mode a second time.
16 . The system of claim 1 , wherein the subset of debugging fields comprises a power supply error indicator field, the power supply error indicator field being set and stored in the reprogrammable read-only memory in response to initiating panic mode, the power supply error indicator field indicating whether an error has been encountered in association with a power supply of the memory sub-system.
17 . The system of claim 1 , the operations comprising reading the subset of debugging fields from the reprogrammable read-only memory associated with the memory sub-system to debug a reason for the incomplete shutdown of the memory sub-system.
18 . A method comprising:
detecting a power-loss event associated with an incomplete shutdown of a memory sub-system, the incomplete shutdown comprising one or more shutdown operations not being initiated or not being completed before power to the memory sub-system is lost;
based on detecting the power-loss event associated with the incomplete shutdown of the memory sub-system, retrieving a subset of debugging fields; and
storing the subset of debugging fields in a reprogrammable read-only memory associated with the memory sub-system, wherein the subset of debugging fields comprises a panic step field that is set during a panic mode and represents one or more individual operations of the panic mode.
19 . The method of claim 18 , comprising storing the panic step field periodically during the panic mode in the reprogrammable read-only memory.
20 . A non-transitory computer-readable storage medium comprising instructions that, when executed by at least one processing device, cause the at least one processing device to perform operations comprising:
detecting a power-loss event associated with an incomplete shutdown of a memory sub-system, the incomplete shutdown comprising one or more shutdown operations not being initiated or not being completed before power to the memory sub-system is lost;
based on detecting the power-loss event associated with the incomplete shutdown of the memory sub-system, retrieving a subset of debugging fields; and
storing the subset of debugging fields in a reprogrammable read-only memory associated with the memory sub-system, wherein the subset of debugging fields comprises a panic step field that is set during a panic mode and represents one or more individual operations of the panic mode.