[SOLVED] SMART error (CurrentPendingSector) detected on host: pve2

ColinDexter

Member
Jul 3, 2023
40
4
8
My SSD has 1 Current Pending Sector. And now every day I get the following message.
Code:
This message was generated by the smartd daemon running on:

   host name:  pve2
   DNS domain:

The following warning/error was logged by the smartd daemon:

Device: /dev/sdb [SAT], 1 Currently unreadable (pending) sectors

Device information:

NS128GSSD340, S/N:XXXXXXXXX, FW:V0823A0, 128GB

For details see host's SYSLOG.

You can also use the smartctl utility for further investigation.

The original message about this issue was sent at Sun Aug 13 17:38:03 2023 CEST Another message will be sent in 24 hours if the problem persists.

Can I do something about this. A confirmation or something that I don't get the same message every 24 hours?
 
Last edited:
My SSD has 1 Current Pending Sector. And now every day I get the following message.

Can I do something about this. A confirmation or something that I don't get the same message every 24 hours?
I believe you can configure an ignore (for an attribute or whole drive) in /etc/smartd.conf. I have no personal experience with this, sorry.
 
My SSD has 1 Current Pending Sector. And now every day I get the following message.
Code:
This message was generated by the smartd daemon running on:

   host name:  pve2
   DNS domain:

The following warning/error was logged by the smartd daemon:

Device: /dev/sdb [SAT], 1 Currently unreadable (pending) sectors

Device information:

NS128GSSD340, S/N:XXXXXXXXX, FW:V0823A0, 128GB

For details see host's SYSLOG.

You can also use the smartctl utility for further investigation.

The original message about this issue was sent at Sun Aug 13 17:38:03 2023 CEST Another message will be sent in 24 hours if the problem persists.

Can I do something about this. A confirmation or something that I don't get the same message every 24 hours?
https://www.thomas-krenn.com/de/wiki/Currently_unreadable_(pending)_sectors_-_SMART-Daemon_Proxmox
provides a fix by blocking the id that is used for the attribute.
 
I'm looking at https://www.thomas-krenn.com/de/wiki/Currently_unreadable_(pending)_sectors_-_SMART-Daemon_Proxmox

But unfortunately this explanation there is not entirely clear.
For example "ll /dev/disk/by-id" should be "ls -l /dev/disk/by-id" to get the drive info I think. Next you should add "/dev/disk/by-id/<Disk_ID> -I 197" to your smartd.conf (without quotes). But in the example they give "/dev/disk/by-id/ ata-ATP_Velocity_MV_256GB_99026170220256000002 -I 197" with a space between "/dev/disk/by-id/" and "ata-ATP_Velocity_MV_256GB_99026170220256000002 -I 197"

I can't figure out what is correct anywhere. With or without space

It's a pity that you disable the entire check on Current Pending Sector Count and can't just change the threshold value.
 
I'm looking at https://www.thomas-krenn.com/de/wiki/Currently_unreadable_(pending)_sectors_-_SMART-Daemon_Proxmox

But unfortunately this explanation there is not entirely clear.
For example "ll /dev/disk/by-id" should be "ls -l /dev/disk/by-id" to get the drive info I think. Next you should add "/dev/disk/by-id/<Disk_ID> -I 197" to your smartd.conf (without quotes). But in the example they give "/dev/disk/by-id/ ata-ATP_Velocity_MV_256GB_99026170220256000002 -I 197" with a space between "/dev/disk/by-id/" and "ata-ATP_Velocity_MV_256GB_99026170220256000002 -I 197"

I can't figure out what is correct anywhere. With or without space

It's a pity that you disable the entire check on Current Pending Sector Count and can't just change the threshold value.
Thanks, all fixed! Its without spaces!
 
Hi Colin,

it seems your SSD has a Silicon Motion SM2259 controller chip. The SMART attribute 197 has the following meaning for those controllers:
This value represents the total number of ECC events found as a result of host commands (for example, READ commands) or during background operations.
(Source: https://www.micron.com/-/media/clie...torage/tnfd22_client_ssd_smart_attributes.pdf page 18).

So this is NOT "Current Pending Sector Count" and should be therefore treated different.

The back then popular Micron MX500 SSDs have the same controller chip and had the same issue: https://www.smartmontools.org/ticket/1227#comment:16

To solve this issue, drivedb.h got an entry for those SSDs with a different name for ID 197 - so smart daemon does not send an email when the raw value of ID 197 changes from 0 to 1:
"-v 197,raw48,Current_Pending_ECC_Cnt" // MX500: May flip 0 <> 1 (ticket #1227)
You have two options to solve this:
1. Add an entry for your SSD to drivedb.h with a similar ID 197 definition
2. Ignore values of ID 197

PS: I have updated the wiki article, to reflect this, too: https://www.thomas-krenn.com/de/wiki/Currently_unreadable_(pending)_sectors_-_SMART-Daemon_Proxmox
 
  • Like
Reactions: jsterr
Thanks for the update. Modifying the drivedb.h then I should recompile smart tools? Then I'll leave it as it is :)
 
No, there is no need at all to recompile smartmontools.

You just need to add an entry for your drive, e.g. based on the Crucial drives with a similar entry for ID 197.
You can use a local drivedb.h for this - see https://www.smartmontools.org/wiki/FAQ#Couldmissingdrivedatabaseentriesbeaddedlocally

I'm happy to help - I can create an entry for you if you want.
Just execute "smartctl -x /dev/sdX > smartctl-VENDOR-MODEL.txt" like described here https://www.smartmontools.org/wiki/FAQ#MyATASATAdriveisnotinthesmartctlsmartddatabase and send me the textfile :)
 
Thank you Colin for your output.

To get rid of the ID 197 emails, just create the file /etc/smart_drivedb.h with the following content:

Code:
  { "Netac SSD",
    "NS128GSSD340",
    "V0823A0",
    "",
    "-v 1,raw48,Raw_Read_Error_Count "
    "-v 5,raw16(raw16),Realloc_Flash_Blocks_Ct "
  //"-v 9,raw24(raw8),Power_On_Hours "
  //"-v 12,raw48,Power_Cycle_Count "
    "-v 197,raw48,Current_Pending_ECC_Cnt " // Like Crucial MX500: May flip 0 <> 1 (ticket #1227)
  },

The important line here is the one for ID 197 - it sets a different name ("Current_Pending_ECC_Cnt") instead of the default "Current_Pending_Sector".

As soon as ID 197 has a different string for its name, smartd will not send emails when the value changes.
See this part of the source code for details - the string "Current_Pending_Sector" is hardcoded here:
https://github.com/smartmontools/sm...b987d064/smartmontools/smartd.cpp#L2143-L2148

Best regards,
Werner
 
Hi Werner,

Thanks for the file. I now indeed see that my smart data has been changed to Current_Pending_ECC_Cnt when I request it in proxmox.
 
  • Like
Reactions: wefinet
That's great news, Colin.
You will not receive further emails from smartd when ID 197 flips from 0 -> 1 from time to time.
Have a nice weekend and lot of fun with your Proxmox setup :)
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!