libnvme(2)
π NAME π
struct nvme_sanitize_log_page β okay so this is the Sanitize Status log page, a.k.a. Log Identifier 81h β¨
It's a thing from the libnvme(2) manual, and no cap, it's giving "the drive is telling you how the sanitize is going" energy π
β¨ SYNOPSIS β¨
struct nvme_sanitize_log_page {
__le16 sprog;
__le16 sstat;
__le32 scdw10;
__le32 eto;
__le32 etbe;
__le32 etce;
__le32 etond;
__le32 etbend;
__le32 etcend;
__le32 etpvds;
__u8 ssi;
__u8 rsvd37[475];
};
π Members π
Okay bestie, member by member, let's go π«Ά Every single field, every single constant, nothing skipped:
sprogβ Sanitize Progress (SPROG) πΈ It tells you the fraction complete of the sanitize operation. The value is a numerator of the fraction complete that has65,536(10000h) as its denominator. Heads up tho: this value shall be set toFFFFhif thesstatfield is not set toNVME_SANITIZE_SSTAT_STATUS_IN_PROGESS. iykyk πsstatβ Sanitize Status (SSTAT) π It indicates the status associated with the most recent sanitize operation. Seeenum nvme_sanitize_sstat.scdw10β Sanitize Command Dword 10 Information (SCDW10) π¦ It contains the value of the Command Dword 10 field of the Sanitize command that started the sanitize operation. literally a lil receipt of how it all began π§Ύetoβ Estimated Time For Overwrite β³ It indicates the number of seconds required to complete an Overwrite sanitize operation with 16 passes in the background when the No-Deallocate Modifies Media After Sanitize field is not set to10b. A value of0hindicates that the sanitize operation is expected to be completed in the background when the Sanitize command that started that operation is completed. A value ofFFFFFFFFhindicates that no time period is reported. so:0h= "it'll wrap up when the command does",FFFFFFFFh= "no comment π"etbeβ Estimated Time For Block Erase β³ It indicates the number of seconds required to complete a Block Erase sanitize operation in the background when the No-Deallocate Modifies Media After Sanitize field is not set to10b. A value of0hindicates that the sanitize operation is expected to be completed in the background when the Sanitize command that started that operation is completed. A value ofFFFFFFFFhindicates that no time period is reported.etceβ Estimated Time For Crypto Erase β³ It indicates the number of seconds required to complete a Crypto Erase sanitize operation in the background when the No-Deallocate Modifies Media After Sanitize field is not set to10b. A value of0hindicates that the sanitize operation is expected to be completed in the background when the Sanitize command that started that operation is completed. A value ofFFFFFFFFhindicates that no time period is reported.etondβ Estimated Time For Overwrite With No-Deallocate Media Modification β³β¨ It indicates the number of seconds required to complete an Overwrite sanitize operation and the associated additional media modification after the Overwrite sanitize operation in the background when the No-Deallocate After Sanitize bit was set to1in the Sanitize command that requested the Overwrite sanitize operation; and the No-Deallocate Modifies Media After Sanitize field is set to10b. A value of0hindicates that the sanitize operation is expected to be completed in the background when the Sanitize command that started that operation is completed. A value ofFFFFFFFFhindicates that no time period is reported.etbendβ Estimated Time For Block Erase With No-Deallocate Media Modification β³β¨ It indicates the number of seconds required to complete a Block Erase sanitize operation and the associated additional media modification after the Block Erase sanitize operation in the background when the No-Deallocate After Sanitize bit was set to1in the Sanitize command that requested the Overwrite sanitize operation; and the No-Deallocate Modifies Media After Sanitize field is set to10b. A value of0hindicates that the sanitize operation is expected to be completed in the background when the Sanitize command that started that operation is completed. A value ofFFFFFFFFhindicates that no time period is reported.etcendβ Estimated Time For Crypto Erase With No-Deallocate Media Modification β³β¨ It indicates the number of seconds required to complete a Crypto Erase sanitize operation and the associated additional media modification after the Crypto Erase sanitize operation in the background when the No-Deallocate After Sanitize bit was set to1in the Sanitize command that requested the Overwrite sanitize operation; and the No-Deallocate Modifies Media After Sanitize field is set to10b. A value of0hindicates that the sanitize operation is expected to be completed in the background when the Sanitize command that started that operation is completed. A value ofFFFFFFFFhindicates that no time period is reported.etpvdsβ Estimated Time For Post-Verification Deallocation State π§ It indicates the number of seconds required to deallocate all media allocated for user data after exiting the Media Verification state (i.e., the time difference between entering and exiting the Post-Verification Deallocation state), if that state is entered as part of the sanitize operation. A value ofFFFFFFFFhindicates that no time period is reported.ssiβ Sanitize State Information π It indicates the state of the Sanitize Operation State Machine. main character energy, truly πrsvd37β Reserved. π€ that's it, that's the whole thing, it's reserved, don't touch it bestie
k that's the whole struct, every field accounted for, not a single byte left behind π
This lil guy is struct nvme_sanitize_log_page, it lived in the libnvme(2) manual, and it was last touched in July 2026. xoxo, go sanitize something responsibly, mwah ππ
π¦ where this page comes from
- ubuntu stonking: libnvme-dev 1.16.2-1build1 Β· LGPL-2.1-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms