Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Edge-core][device/accton] Add ssd_util plugin to AS4630-54PE, AS7326-56X, AS771… #11716

Open
wants to merge 7 commits into
base: master
Choose a base branch
from

Conversation

roger530-ho
Copy link
Contributor

@roger530-ho roger530-ho commented Aug 12, 2022

…6-32X, AS7816-64X

Signed-off-by: Roger Ho roger530_ho@edge-core.com

Why I did it

Many SSD still depend on vendor utility to display vendor information, which will show below if there is no related vendor utility in the system.

admin@sonic:~$ show platform ssdhealth --vendor
Device Model : TS32XBTMM1600
Health       : N/A
Temperature  : 100C
N/A

How I did it

  1. The ssdutil check ssd_util.py plugin exists in the system or not. If yes, use that plugin. So we create ssd_util.py to resolve this issue.
  2. If it has no vendor tool to read vendor SSD information, then use generic SSD information to show more detail for users to see.

How to verify it

admin@sonic:~$ sudo show platform ssdhealth --vendor
Device Model : TS32XBTMM1600
Health       : N/A
Temperature  : 100C
smartctl 6.6 2017-11-05 r4594 [x86_64-linux-5.10.0-8-2-amd64] (local build)
Copyright (C) 2002-17, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Device Model:     TS32XBTMM1600
Serial Number:    F051970047
Firmware Version: O0918B
User Capacity:    32,017,047,552 bytes [32.0 GB]
Sector Size:      512 bytes logical/physical
Rotation Rate:    Solid State Device
Device is:        Not in smartctl database [for details use: -P showall]
ATA Version is:   ACS-2 (minor revision not indicated)
SATA Version is:  SATA 3.1, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is:    Wed Sep 13 14:43:26 2023 UTC
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

General SMART Values:
Offline data collection status:  (0x00) Offline data collection activity
                                        was never started.
                                        Auto Offline Data Collection: Disabled.
Self-test execution status:      (   0) The previous self-test routine completed
                                        without error or no self-test has ever
                                        been run.
Total time to complete Offline
data collection:                (    0) seconds.
Offline data collection
capabilities:                    (0x71) SMART execute Offline immediate.
                                        No Auto Offline data collection support.
                                        Suspend Offline collection upon new
                                        command.
                                        No Offline surface scan supported.
                                        Self-test supported.
                                        Conveyance Self-test supported.
                                        Selective Self-test supported.
SMART capabilities:            (0x0002) Does not save SMART data before
                                        entering power-saving mode.
                                        Supports SMART auto save timer.
Error logging capability:        (0x01) Error logging supported.
                                        General Purpose Logging supported.
Short self-test routine
recommended polling time:        (   1) minutes.
Extended self-test routine
recommended polling time:        (   1) minutes.
Conveyance self-test routine
recommended polling time:        (   1) minutes.

SMART Attributes Data Structure revision number: 1
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x0000   100   100   000    Old_age   Offline      -       0
  5 Reallocated_Sector_Ct   0x0000   100   100   000    Old_age   Offline      -       0
  9 Power_On_Hours          0x0000   100   100   000    Old_age   Offline      -       203
 12 Power_Cycle_Count       0x0000   100   100   000    Old_age   Offline      -       1239
160 Unknown_Attribute       0x0000   100   100   000    Old_age   Offline      -       0
161 Unknown_Attribute       0x0000   100   100   000    Old_age   Offline      -       50
163 Unknown_Attribute       0x0000   100   100   000    Old_age   Offline      -       18
164 Unknown_Attribute       0x0000   100   100   000    Old_age   Offline      -       67908
165 Unknown_Attribute       0x0000   100   100   000    Old_age   Offline      -       127
166 Unknown_Attribute       0x0000   100   100   000    Old_age   Offline      -       23
167 Unknown_Attribute       0x0000   100   100   000    Old_age   Offline      -       66
168 Unknown_Attribute       0x0000   100   100   000    Old_age   Offline      -       3000
169 Unknown_Attribute       0x0000   100   100   000    Old_age   Offline      -       98
175 Program_Fail_Count_Chip 0x0000   100   100   000    Old_age   Offline      -       0
176 Erase_Fail_Count_Chip   0x0000   100   100   000    Old_age   Offline      -       0
177 Wear_Leveling_Count     0x0000   100   100   050    Old_age   Offline      -       33
178 Used_Rsvd_Blk_Cnt_Chip  0x0000   100   100   000    Old_age   Offline      -       0
181 Program_Fail_Cnt_Total  0x0000   100   100   000    Old_age   Offline      -       0
182 Erase_Fail_Count_Total  0x0000   100   100   000    Old_age   Offline      -       0
192 Power-Off_Retract_Count 0x0000   100   100   000    Old_age   Offline      -       25
194 Temperature_Celsius     0x0000   100   100   000    Old_age   Offline      -       32
195 Hardware_ECC_Recovered  0x0000   100   100   000    Old_age   Offline      -       436
196 Reallocated_Event_Count 0x0000   100   100   016    Old_age   Offline      -       0
197 Current_Pending_Sector  0x0000   100   100   000    Old_age   Offline      -       0
198 Offline_Uncorrectable   0x0000   100   100   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x0000   100   100   050    Old_age   Offline      -       1
232 Available_Reservd_Space 0x0000   100   100   000    Old_age   Offline      -       100
241 Total_LBAs_Written      0x0000   100   100   000    Old_age   Offline      -       37044
242 Total_LBAs_Read         0x0000   100   100   000    Old_age   Offline      -       22440
245 Unknown_Attribute       0x0000   100   100   000    Old_age   Offline      -       67908

SMART Error Log Version: 1
No Errors Logged

SMART Self-test log structure revision number 1
No self-tests have been logged.  [To run self-tests, use: smartctl -t]

SMART Selective self-test log data structure revision number 1
 SPAN  MIN_LBA  MAX_LBA  CURRENT_TEST_STATUS
    1        0        0  Not_testing
    2        0        0  Not_testing
    3        0        0  Not_testing
    4        0        0  Not_testing
    5        0        0  Not_testing
    6        0    65535  Read_scanning was never started
Selective self-test flags (0x0):
  After scanning selected spans, do NOT read-scan remainder of disk.
If Selective self-test is pending on power-up, resume after 0 minute delay.

admin@sonic:~$ 

Which release branch to backport (provide reason below if selected)

  • 201811
  • 201911
  • 202006
  • 202012
  • 202106
  • 202111
  • 202205
  • 202211

Description for the changelog

Link to config_db schema for YANG module changes

N/A

A picture of a cute animal (not mandatory but encouraged)

…6-32X, AS7816-64X

Signed-off-by: Roger Ho <roger530_ho@edge-core.com>
@linux-foundation-easycla
Copy link

linux-foundation-easycla bot commented Aug 12, 2022

CLA Signed

The committers listed above are authorized under a signed CLA.

@roger530-ho roger530-ho changed the title [device/accton] Add ssd_util plugin to AS4630-54PE, AS7326-56X, AS771… [Edge-core][device/accton] Add ssd_util plugin to AS4630-54PE, AS7326-56X, AS771… Aug 12, 2022
@roger530-ho
Copy link
Contributor Author

/azp run Azure.sonic-buildimage

@azure-pipelines
Copy link

Commenter does not have sufficient privileges for PR 11716 in repo sonic-net/sonic-buildimage

Signed-off-by: roger530-ho <roger530_ho@edge-core.com>
@jostar-yang
Copy link
Contributor

/azpw run Azure.sonic-buildimage

@roger530-ho
Copy link
Contributor Author

/azp run Azure.sonic-buildimage

@azure-pipelines
Copy link

Commenter does not have sufficient privileges for PR 11716 in repo sonic-net/sonic-buildimage

@roger530-ho
Copy link
Contributor Author

/AzurePipelines run Azure.sonic-buildimage

@azure-pipelines
Copy link

Commenter does not have sufficient privileges for PR 11716 in repo sonic-net/sonic-buildimage

ChrisKe1643 pushed a commit to ChrisKe1643/ec-sonic-buildimage that referenced this pull request Mar 25, 2024
…4630-54PE, AS7326-56X, AS7716-32X, AS7816-64X

sonic-net/sonic-buildimage#11716
Signed-off-by: Roger Ho roger530_ho@edge-core.com

Why I did it
Many SSD still depend on vendor utility to display vendor information, which will show below if there is no related vendor utility in the system.

admin@sonic:~$ show platform ssdhealth --vendor
Device Model : TS32XBTMM1600
Health       : N/A
Temperature  : 100C
N/A

How I did it
The ssdutil check ssd_util.py plugin exists in the system or not. If yes, use that plugin. So we create ssd_util.py to resolve this issue.
If it has no vendor tool to read vendor SSD information, then use generic SSD information to show more detail for users to see.

How to verify it
Refer to the original PR
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants