IP Library Granted Patent US 12,259,784
Granted Patent B2
US 12,259,784 · App. 17/226,059 · Granted Mar 25, 2025

Systems, methods, and devices for data recovery with spare storage device and fault resilient storage device

Inventors: Yang Seok Ki (Palo Alto, CA); Sungwook Ryu (Palo Alto, CA)
Assignee: SAMSUNG ELECTRONICS CO., LTD.
G06F11/1092G06F3/0619G06F3/0659G06F3/0689G06F11/0772G06F11/1658
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,259,784
App. No.
17/226,059
Granted
Mar 25, 2025
Kind
B2
Abstract

A method may include operating a first storage device and a second storage device as a redundant array, operating the first storage device in a fault resilient mode with at least partial read capability based on a fault condition of the first storage device, and rebuilding information from the first storage device on a spare storage device based on the fault condition of the first storage device. Rebuilding information from the first storage device on the spare storage device may include copying information from the first storage device to the spare storage device. The information from the first storage device may include data and/or parity information. The method may further include reading first information for a read or write operation from the first storage device based on a rebuild point of the spare storage device.

Claims (60)

1. A method comprising:

operating a first storage device and a second storage device as a redundant array;

operating the first storage device in a fault resilient mode with at least partial read capability based on a fault condition of the first storage device;

building information from the first storage device on a spare storage device based on the fault condition of the first storage device;

receiving a read request for the first storage device;

determining a build location of the spare storage device;

reading, based on the read request, based on the build location, requested information from the first storage device; and

writing, based on the reading from the first storage device, the requested information to the spare storage device.

2. The method of claim 1 , wherein the building information from the first storage device on the spare storage device comprises copying information from the first storage device to the spare storage device.

3. The method of claim 2 , wherein the information from the first storage device comprises data.

4. The method of claim 2 , wherein the information from the first storage device comprises parity information.

5. The method of claim 1 , wherein the information from the first storage device comprises data for a read operation of the first storage device.

6. The method of claim 5 , further comprising writing the data to the spare storage device.

7. The method of claim 1 , further comprising:

receiving write data for a write operation;

wherein the information from the first storage device comprises information for the write operation.

8. The method of claim 7 , further comprising calculating updated parity information for the write operation using the information for the write operation.

9. The method of claim 8 , wherein:

the information for the write operation comprises data; and

the method further comprises writing the write data to the spare storage device.

10. The method of claim 8 , wherein:

the information for the write operation comprises parity information; and

the method further comprises writing the updated parity information to the spare storage device.

11. A system comprising:

a controller;

a first storage device;

a second storage device; and

a spare storage device;

wherein the first storage device comprises a first circuit arranged to operate the first storage device in a fault resilient mode with at least partial read capability based on a fault condition of the first storage device; and

wherein the controller comprises a second circuit arranged to:

operate the first storage device and the second storage device as a redundant array;

perform a build operation to build information from the first storage device on the spare storage device based on the fault condition of the first storage device;

receive a read request for the first storage device;

perform a determination of a build location of the spare storage device;

perform a read operation, based on the read request, based on the build location, of requested information from the first storage device; and

write, based on the read operation from the first storage device, the requested information to the spare storage device.

12. The system of claim 11 , wherein the second circuit is arranged to copy information from the first storage device to the spare storage device.

13. The system of claim 11 , wherein the information from the first storage device comprises data for a read operation of the first storage device.

14. The system of claim 13 , wherein the second circuit is arranged to write the data to the spare storage device.

15. The system of claim 11 , wherein the information from the first storage device comprises information for a write operation, and the second circuit is arranged to:

receive write data for the write operation; and

calculate updated parity information for the write operation using the information for the write operation.

16. The system of claim 15 , wherein:

the information for the write operation comprises data; and

the second circuit is arranged to write the write data to the spare storage device.

17. The system of claim 15 , wherein:

the information for the write operation comprises parity information; and

the controller is further configured to write the updated parity information to the spare storage device.

18. A storage array controller comprising:

a first circuit arranged to:

operate a first storage device, a second storage device, and a third storage device as a redundant array of independent storage devices (RAID) with parity, wherein the first storage device comprises a second circuit arranged to operate the first storage device in a fault resilient mode with at least partial read capability based on a fault condition of the first storage device;

perform a build operation to build information from the first storage device based on the fault condition of the first storage device by copying information from the first storage device to a spare storage device;

receive a read request for the first storage device;

perform a determination of a build location of the spare storage device;

perform a read operation, based on the read request, based on the build location, of requested information from the first storage device; and

write, based on the read operation from the first storage device, the requested information to the spare storage device.

19. The storage array controller of claim 18 , wherein the information from the first storage device comprises data for a read operation of the first storage device, and the first circuit is arranged to write the data to the spare storage device.

20. The storage array controller of claim 18 , wherein the information from the first storage device comprises data for a write operation, and the first circuit is arranged to:

receive write data for the write operation; and

calculate updated parity information for the write operation using the information for the write operation.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 12, 2023
From: KI, YANG SEOK; RYU, SUNGWOOK
To: SAMSUNG ELECTRONICS CO., LTD.
Reel/Frame 064234/0038 →
Continuity (7)
Continuation In Part 17109053 · Dec 1, 2020
Provisional Application 63137131 · Jan 13, 2021
Provisional Application 63057744 · Jul 28, 2020
Provisional Application 63052854 · Jul 16, 2020
Provisional Application 63051158 · Jul 13, 2020
Provisional Application 63023243 · May 11, 2020
Related Publication 20210349780A1 · Nov 11, 2021
References Cited (190)
US 5546533A · Koyama · 1996 [cited by applicant]
US 5914967A · Yomtoubian · 1999 [cited by applicant]
US 6049439A · Ono et al. · 2000 [cited by applicant]
US 6154853A · Kedem · 2000 [cited by applicant]
US 6301644B1 · Andoh et al. · 2001 [cited by applicant]
US 6883126B1 · Herman et al. · 2005 [cited by applicant]
US 6995943B1 · Shrestha et al. · 2006 [cited by applicant]
US 7343546B2 · Edirisooriya et al. · 2008 [cited by applicant]
US 7451346B2 · Katsuragi et al. · 2008 [cited by applicant]
US 7536595B1 · Hiltunen et al. · 2009 [cited by applicant]
US 7574623B1 · Goel · 2009 [cited by examiner]
US 7590664B2 · Kamohara et al. · 2009 [cited by applicant]
US 7640450B1 · Anvin et al. · 2009 [cited by applicant]
US 7774643B2 · Wang · 2010 [cited by applicant]
US 7797567B2 · Otaka et al. · 2010 [cited by applicant]
US 7904749B2 · Kawaguchi · 2011 [cited by applicant]
US 8015436B2 · Winokur · 2011 [cited by applicant]
US 8082390B1 · Fan · 2011 [cited by examiner]
US 8099623B1 · Li et al. · 2012 [cited by applicant]
US 8261016B1 · Goel · 2012 [cited by applicant]
US 8386834B1 · Goel et al. · 2013 [cited by applicant]
US 8458515B1 · Saeed · 2013 [cited by applicant]
US 8589723B2 · Kumar et al. · 2013 [cited by applicant]
US 8769535B2 · Mani · 2014 [cited by applicant]
US 8812902B2 · Deepak · 2014 [cited by applicant]
US 8838893B1 · Randall et al. · 2014 [cited by applicant]
US 8839028B1 · Polia et al. · 2014 [cited by applicant]
US 8924775B1 · Siew · 2014 [cited by examiner]
US 8977813B2 · Burd · 2015 [cited by applicant]
US 9122405B1 · Ludwig et al. · 2015 [cited by applicant]
US 9176813B2 · Guo et al. · 2015 [cited by applicant]
US 9268489B2 · Aizman et al. · 2016 [cited by applicant]
US 9378083B2 · Ghaly et al. · 2016 [cited by applicant]
US 9378093B2 · Cooper et al. · 2016 [cited by applicant]
US 9397703B2 · Ghaly et al. · 2016 [cited by applicant]
US 9547562B1 · Feathergill et al. · 2017 [cited by applicant]
US 9710317B2 · Gupta et al. · 2017 [cited by applicant]
US 9715436B2 · Karrotu et al. · 2017 [cited by applicant]
US 9728277B2 · Lee et al. · 2017 [cited by applicant]
US 9823840B1 · Brooker et al. · 2017 [cited by applicant]
US 9830236B2 · Antony · 2017 [cited by applicant]
US 9940028B2 · Tomlin · 2018 [cited by applicant]
US 10013325B1 · Garrett, Jr. · 2018 [cited by examiner]
US 10082965B1 · Tamilarasan et al. · 2018 [cited by applicant]
US 10095506B2 · Venkatesh et al. · 2018 [cited by applicant]
US 10102082B2 · Cabrera et al. · 2018 [cited by applicant]
US 10210062B2 · Agombar et al. · 2019 [cited by applicant]
US 10263842B2 · Bursell · 2019 [cited by applicant]
US 10296255B1 · Tummala · 2019 [cited by applicant]
US 10372558B2 · Park et al. · 2019 [cited by applicant]
US 10445200B2 · Park et al. · 2019 [cited by applicant]
US 10452289B1 · Colgrove et al. · 2019 [cited by applicant]
US 10459808B2 · Walls · 2019 [cited by applicant]
US 10572161B2 · Subramanian et al. · 2020 [cited by applicant]
US 10585749B2 · Kachare et al. · 2020 [cited by applicant]
US 10884648B2 · Guo et al. · 2021 [cited by applicant]
US 10915401B2 · Fujii et al. · 2021 [cited by applicant]
US 10929229B2 · Stoica et al. · 2021 [cited by applicant]
US 11055172B2 · Foley · 2021 [cited by applicant]
US 11132256B2 · Roberts · 2021 [cited by examiner]
US 11314571B2 · Li · 2022 [cited by applicant]
US 11909809B2 · Kawabata · 2024 [cited by applicant]
US 20020162057A1 · Talagala · 2002 [cited by applicant]
US 20040250033A1 · Prahlad · 2004 [cited by examiner]
US 20050120267A1 · Burton et al. · 2005 [cited by applicant]
US 20060069870A1 · Nicholson et al. · 2006 [cited by applicant]
US 20060075185A1 · Azzarito et al. · 2006 [cited by applicant]
US 20060143507A1 · Tanaka · 2006 [cited by applicant]
US 20070101188A1 · Lin · 2007 [cited by applicant]
US 20070220313A1 · Katsuragi · 2007 [cited by examiner]
US 20070250723A1 · Shima et al. · 2007 [cited by applicant]
US 20080126849A1 · Kotzur et al. · 2008 [cited by applicant]
US 20080126855A1 · Higashijima et al. · 2008 [cited by applicant]
US 20080168304A1 · Flynn et al. · 2008 [cited by applicant]
US 20090106584A1 · Nakayama et al. · 2009 [cited by applicant]
US 20090164536A1 · Nasre et al. · 2009 [cited by applicant]
US 20090222617A1 · Yano et al. · 2009 [cited by applicant]
US 20090248756A1 · Akidau et al. · 2009 [cited by applicant]
US 20100049905A1 · Ouchi · 2010 [cited by examiner]
US 20100079885A1 · McKean · 2010 [cited by examiner]
US 20100125751A1 · McKean · 2010 [cited by applicant]
US 20110012147A1 · Bierhuizen et al. · 2011 [cited by applicant]
US 20110047437A1 · Flynn · 2011 [cited by applicant]
US 20120117322A1 · Satran et al. · 2012 [cited by applicant]
US 20130047028A1 · Daikokuya et al. · 2013 [cited by applicant]
US 20130054907A1 · Ikeuchi et al. · 2013 [cited by applicant]
US 20130080828A1 · Sheffield · 2013 [cited by examiner]
US 20130097375A1 · Iida · 2013 [cited by examiner]
US 20130173955A1 · Hallak et al. · 2013 [cited by applicant]
US 20130191703A1 · Meaney · 2013 [cited by examiner]
US 20130282953A1 · Orme et al. · 2013 [cited by applicant]
US 20140032834A1 · Cudak et al. · 2014 [cited by applicant]
US 20140089730A1 · Watanabe · 2014 [cited by examiner]
US 20140149787A1 · Shanbhag et al. · 2014 [cited by applicant]
US 20140195847A1 · Webman et al. · 2014 [cited by applicant]
US 20140281689A1 · Fischer · 2014 [cited by applicant]
US 20140359347A1 · Fuxa · 2014 [cited by applicant]
US 20150100720A1 · Flynn et al. · 2015 [cited by applicant]
US 20150100822A1 · Ohno · 2015 [cited by applicant]
US 20150234709A1 · Koarashi · 2015 [cited by examiner]
US 20150269025A1 · Krishnamurthy et al. · 2015 [cited by applicant]
US 20160004467A1 · Green et al. · 2016 [cited by applicant]
US 20160077911A1 · Malshe et al. · 2016 [cited by applicant]
US 20160132394A1 · Niewczas · 2016 [cited by applicant]
US 20160299722A1 · Seo et al. · 2016 [cited by applicant]
US 20160342465A1 · Cudak et al. · 2016 [cited by applicant]
US 20170060421A1 · Dawkins et al. · 2017 [cited by applicant]
US 20170123654A1 · Standing · 2017 [cited by examiner]
US 20170177216A1 · Freyensee et al. · 2017 [cited by applicant]
US 20170220374A1 · Beveridge et al. · 2017 [cited by applicant]
US 20170351431A1 · Dewitt et al. · 2017 [cited by applicant]
US 20180011376A1 · Cho et al. · 2018 [cited by applicant]
US 20180011649A1 · Hashimoto et al. · 2018 [cited by applicant]
US 20180018231A1 · Okada · 2018 [cited by examiner]
US 20180052750A1 · Sun et al. · 2018 [cited by applicant]
US 20180067658A1 · Tripathy et al. · 2018 [cited by applicant]
US 20180101450A1 · Park et al. · 2018 [cited by applicant]
US 20180113761A1 · Ko · 2018 [cited by examiner]
US 20190043604A1 · Baca et al. · 2019 [cited by applicant]
US 20190050161A1 · Wysocki · 2019 [cited by examiner]
US 20190065318A1 · Sahasrabudhe et al. · 2019 [cited by applicant]
US 20190087272A1 · Lingarajappa · 2019 [cited by applicant]
US 20190087290A1 · Rutman et al. · 2019 [cited by applicant]
US 20190138239A1 · Lv et al. · 2019 [cited by applicant]
US 20190196910A1 · Gu et al. · 2019 [cited by applicant]
US 20190377637A1 · Pitchumani et al. · 2019 [cited by applicant]
US 20190384670A1 · Kuroki et al. · 2019 [cited by applicant]
US 20200020398A1 · Miller et al. · 2020 [cited by applicant]
US 20200034235A1 · Gao et al. · 2020 [cited by applicant]
US 20200042388A1 · Roberts · 2020 [cited by applicant]
US 20200127684A1 · Park et al. · 2020 [cited by applicant]
US 20200135280A1 · Hu · 2020 [cited by applicant]
US 20200159621A1 · Velayuthaperumal et al. · 2020 [cited by applicant]
US 20200310932A1 · Hutchison · 2020 [cited by examiner]
US 20200409809A1 · Liu · 2020 [cited by examiner]
US 20210011640A1 · Hua et al. · 2021 [cited by applicant]
US 20210124504A1 · Chiu et al. · 2021 [cited by applicant]
US 20210124506A1 · Han et al. · 2021 [cited by applicant]
US 20210279153A1 · Patel et al. · 2021 [cited by applicant]
US 20210349782A1 · Ki · 2021 [cited by examiner]
US 20210373796A1 · Matosevich · 2021 [cited by examiner]
US 20220012130A1 · Ki et al. · 2022 [cited by applicant]
US 20220012142A1 · Ryu et al. · 2022 [cited by applicant]
US 20220012147A1 · Ki et al. · 2022 [cited by applicant]
US 20220019366A1 · Freilich et al. · 2022 [cited by applicant]
US 20220291996A1 · Ki et al. · 2022 [cited by applicant]
US 20230016170A1 · Barker, Jr. · 2023 [cited by examiner]
US 20240012713A1 · Steinmetz · 2024 [cited by examiner]
CN 1924786A · 2007 [cited by applicant]
CN 101084486A · 2007 [cited by applicant]
CN 101727363A · 2010 [cited by applicant]
JP H06175792A · 1994 [cited by applicant]
JP H06274404A · 1994 [cited by applicant]
JP H10301721A · 1998 [cited by applicant]
JP H11184644A · 1999 [cited by applicant]
JP 2006350599A · 2006 [cited by applicant]
JP 2012509521A · 2012 [cited by applicant]
JP 2013246479A · 2013 [cited by applicant]
JP 2017201519A · 2017 [cited by applicant]
JP 2021033856A · 2021 [cited by applicant]
JP 2021089625A · 2021 [cited by applicant]
TW 201413449A · 2014 [cited by applicant]
TW 201729102A · 2017 [cited by applicant]
TW 201911041A · 2019 [cited by applicant]
TW 202009695A · 2020 [cited by applicant]
WO 2018142622A1 · 2018 [cited by applicant]
Office Action for U.S. Appl. No. 17/227,262, mailed Oct. 15, 2021. [cited by applicant]
Final Office Action for U.S. Appl. No. 17/227,262, mailed May 25, 2022. [cited by applicant]
Office Action for U.S. Appl. No. 17/232,144, mailed Jul. 21, 2022. [cited by applicant]
Notice of Allowance for U.S. Appl. No. 17/109,053, mailed Mar. 18, 2022. [cited by applicant]
Office Action for U.S. Appl. No. 17/227,262, mailed Oct. 6, 2022. [cited by applicant]
Final Office Action for U.S. Appl. No. 17/227,262, mailed Mar. 15, 2023. [cited by applicant]
Final Office Action for U.S. Appl. No. 17/232,144, mailed Mar. 9, 2023. [cited by applicant]
Office Action for U.S. Appl. No. 17/227,262, mailed Jul. 20, 2023. [cited by applicant]
Office Action for U.S. Appl. No. 17/232,144, mailed Jun. 30, 2023. [cited by applicant]
Office Action for U.S. Appl. No. 17/741,440, mailed Jul. 19, 2023. [cited by applicant]
Office Action for U.S. Appl. No. 17/827,657, mailed Aug. 10, 2023. [cited by applicant]
Final Office Action for U.S. Appl. No. 17/232,144, mailed Jan. 26, 2024. [cited by applicant]
Final Office Action for U.S. Appl. No. 17/827,657, mailed Feb. 16, 2024. [cited by applicant]
Notice of Allowance for U.S. Appl. No. 17/227,262, mailed Mar. 11, 2024. [cited by applicant]
Office Action for U.S. Appl. No. 17/741,440, mailed Apr. 19, 2024. [cited by applicant]
Corrected Notice of Allowability for U.S. Appl. No. 17/227,262, mailed May 17, 2024. [cited by applicant]
Office Action for U.S. Appl. No. 17/232,144, mailed May 8, 2024. [cited by applicant]
Corrected Notice of Allowability for U.S. Appl. No. 17/227,262, mailed Jul. 17, 2024. [cited by applicant]
Office Action for U.S. Appl. No. 17/827,657, mailed Jul. 16, 2024. [cited by applicant]
Corrected Notice of Allowability for U.S. Appl. No. 17/227,262, mailed Aug. 28, 2024. [cited by applicant]
Corrected Notice of Allowability for U.S. Appl. No. 17/227,262, mailed Oct. 25, 2024. [cited by applicant]
Final Office Action for U.S. Appl. No. 17/741,440, mailed Nov. 8, 2024. [cited by applicant]
Notice of Allowance for U.S. Appl. No. 17/232,144, mailed Nov. 6, 2024. [cited by applicant]
Final Office Action for U.S. Appl. No. 17/827,657, mailed Dec. 4, 2024. [cited by applicant]