#1219 closed patch (invalid)
A few SMART SSD default parameters additions (170-174)
Reported by: | Artem S. Tashkinov | Owned by: | |
---|---|---|---|
Priority: | minor | Milestone: | |
Component: | drivedb | Version: | 7.0 |
Keywords: | ssd | Cc: |
Description
Over three years ago I emailed you a patch for adding some SMART parameters and it's never been merged or even discussed.
https://www.mail-archive.com/smartmontools-database@lists.sourceforge.net/msg01325.html
I'm now attaching the patch from that email in hope that you'll finally take a look at it and maybe merge it.
Attachments (1)
Change History (8)
by , 5 years ago
Attachment: | drivedb.h.patch added |
---|
comment:1 by , 5 years ago
Component: | all → drivedb |
---|---|
Keywords: | ssd added |
Milestone: | → undecided |
comment:2 by , 5 years ago
Summary: | A few SMART parameters additions → A few SMART SSD default parameters additions (170-174) |
---|
comment:3 by , 5 years ago
For some unknown reason, your original submission to the (now outdated) mailing list didn't reach my mailbox. Due to the too generic subject and missing explanation, other subscribers might have ignored it.
You didn't explain which drives are covered and why it makes sense to add this to the DEFAULT
entry.
The patch is also incomplete. If attribute settings should be added to the DEFAULT
entry, the following steps are needed:
- Identify all similar settings of individual drivedb entries. Unify the attribute name in those settings which use a slightly different name with same meaning.
- Add the new settings to DEFAULT entry and comment out all settings identified in step 1.
Result from step 1 will later be merged to all drive database branches. Result from step 2 will later be merged to branches 6.5 and later.
A quick which of your suggestions make sense:
$ for i in {170..174}; do grep -- "-v $i," drivedb.h | sed 's," *//.*$,",' | sort | uniq -c done
2 "-v 170,raw16,Bad_Block_Count " 1 "-v 170,raw16,Bad_Block_Count_New/Tot " 2 "-v 170,raw24/raw24:z54z10,Bad_Blk_Ct_Erl/Lat " 12 "-v 170,raw48,Available_Reservd_Space " 2 "-v 170,raw48,Grown_Bad_Block_Ct " 1 "-v 170,raw48,Grown_Bad_Blocks " 3 "-v 170,raw48,Grown_Failing_Block_Ct " 1 "-v 170,raw48,Initial_Bad_Block_Count " 5 "-v 170,raw48,Reserve_Block_Count " 3 "-v 170,raw48,Reserved_Block_Count " 1 "-v 170,raw48,Reserved_Block_Pct " 1 "-v 170,raw48,Spare_Block_Count " 1 "-v 170,raw48,Unknown_Plextor_Attrib " 1 "-v 170,raw48,Unused_Rsvd_Blk_Ct_Chip " 1 "-v 170,raw48,Reserve_Blk_Remaining " 1 "-v 170,raw48,Reserve_Erase_BlkCt " 1 //"-v 170,raw48,Available_Reservd_Space "
"-v 170,raw48,Reserved_Block_Count,SSD "
: Possibly better Available_Reservd_Space
because it is not necessarily a ..._Block_Count
.
2 "-v 171,raw48,Avail_OP_Block_Count " 1 "-v 171,raw48,Program_Fail_Cnt " 29 "-v 171,raw48,Program_Fail_Count " 1 "-v 171,raw48,Program_Fail_Count_Chip " 1 "-v 171,raw48,Unknown_Plextor_Attrib " 2 "-v 171,raw48,Program_Fail_Ct "
"-v 171,raw48,Program_Fail_Count,SSD "
: Yes.
1 "-v 172,raw48,Erase_Fail_Cnt " 31 "-v 172,raw48,Erase_Fail_Count " 1 "-v 172,raw48,Erase_Fail_Count_Chip " 1 "-v 172,raw48,Unknown_Plextor_Attrib " 2 "-v 172,raw48,Erase_Fail_Ct "
"-v 172,raw48,Erase_Fail_Count,SSD "
: Yes.
2 "-v 173,raw16(avg16),MaxAvgErase_Ct " 2 "-v 173,raw16,Erase_Count " 1 "-v 173,raw16,Erase_Count_Max/Avg " 2 "-v 173,raw48,Ave_Block-Erase_Count " 1 "-v 173,raw48,Average_PE_Cycles_TLC " 1 "-v 173,raw48,Avg_Block-Erase_Count " 2 "-v 173,raw48,Avg_Program/Erase_Ct " 2 "-v 173,raw48,Avg_Write/Erase_Count " 3 "-v 173,raw48,Erase_Count " 1 "-v 173,raw48,Max_Erase_Count " 1 "-v 173,raw48,Unknown_Plextor_Attrib " 2 "-v 173,raw48,Unknown_SandForce_Attr " 8 "-v 173,raw48,Wear_Leveling_Count " 1 "-v 173,raw48,Drive_Life_Used% " 1 "-v 173,raw48,Percent_Life_Used "
"-v 173,raw48,Wear_Levelling_Worst,SSD "
: No, far too many other vendor specific settings.
1 "-v 174,raw48,Host_Reads_MiB " 2 "-v 174,raw48,Pwr_Cycle_Ct_Unplanned " 24 "-v 174,raw48,Unexpect_Power_Loss_Ct " 1 "-v 174,raw48,Unexpected_Power_Loss " 1 "-v 174,raw48,Unexpected_Pwr_Loss_Cnt " 2 "-v 174,raw48,Unexpected_Pwr_Loss_Ct " 1 "-v 174,raw48,Unknown_Plextor_Attrib " 5 "-v 174,raw48,Unsafe_Shutdown_Count " 1 "-v 174,raw48,Unexpect_Power_Loss " 1 "-v 174,raw48,Unexpect_PwrLoss_Ct "
"-v 174,raw48,Unexpected_Power_Loss,SSD "
: yes, but better a variant with C(n)t
suffix.
comment:4 by , 5 years ago
Milestone: | undecided → unscheduled |
---|
I'm already working on such attribute name cleanup with enhancement of the DEFAULT
entry. Parts of your suggestions will be included. Keeping ticket open until then.
comment:5 by , 5 years ago
Resolution: | → invalid |
---|---|
Status: | new → closed |
I'm sorry for being extremely inattentive but smartmontools 7.0 already include all these parameters. It looks like someone actually added them earlier:
170 Unused_Rsvd_Blk_Ct_Chip 0x0033 100 100 010 Pre-fail Always - 1066 171 Program_Fail_Count_Chip 0x0022 100 100 010 Old_age Always - 0 172 Erase_Fail_Count_Chip 0x0032 100 100 010 Old_age Always - 0 173 Wear_Leveling_Count 0x0033 097 097 005 Pre-fail Always - 46 174 Unexpect_Power_Loss_Ct 0x0032 099 099 001 Old_age Always - 144
comment:6 by , 5 years ago
Yes, individual entries already provide these settings. Your drive apparently matches with entry for Model Family: Samsung based SSDs
.
Your proposed patch adds new settings to the DEFAULT
entry which is something different. Settings from the default entry only apply of no setting from an individual entry is present.
Prior to new patch submissions, PLEASE
- Update the drive database,
- Understand the difference between the
DEFAULT
and the other database entries.
comment:7 by , 5 years ago
Milestone: | unscheduled |
---|
Make subject more specific.