IP Library Granted Patent US 12,499,044
Granted Patent B2
US 12,499,044 · App. 18/419,871 · Granted Dec 16, 2025

Pausing garbage collection during a sequential unmapping process

Inventors: Dheemahi Turaga (Bangalore, IN); Sharada Banappa (Bangalore, IN); Santoshi Sravya Remella (Bangalore, IN)
Assignee: Sandisk Technologies, Inc.
G06F12/0253
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,499,044
App. No.
18/419,871
Granted
Dec 16, 2025
Kind
B2
Abstract

A data storage device includes a command analysis system that analyzes one or more received commands to determine whether a garbage collection process associated with the one or more received commands should be executed or paused. The command analysis system determines the garbage collection process should be paused when one or more command parameters associated with the received command indicate that the command is an unmap command and is sequential with a previously received unmap command. The garbage collection process is paused until a non-sequential command is received or until an operating state of the data storage device indicates that the garbage collection process should be resumed.

Claims (55)

1 . A method, comprising:

receiving a first command from a host device;

determining one or more characteristics associated with the first command;

receiving a second command from the host device;

determining one or more characteristics associated with the second command;

determining based, at least in part, on the one or more characteristics associated with the first command and the one or more characteristics associated with the second command, whether a logical block address (LBA) associated with the second command is sequential to a LBA associated with the first command and whether a garbage collection process associated with at least one of the first command and the second command should be paused; and

pausing the garbage collection process associated with at least one of the first command and the second command based, at least in part, on determining the LBA associated with the second command is sequential to the LBA associated with the first command and on determining the garbage collection process should be paused.

2 . The method of claim 1 , further comprising:

receiving a third command from the host device;

determining one or more characteristics associated with the third command; and

unpausing the garbage collection process associated with at least one of the first command and the second command based, at least in part, on the one or more characteristics associated with the third command.

3 . The method of claim 2 , wherein the third command is selected from a group comprising:

a write command; and

a read command.

4 . The method of claim 2 , wherein the first command is a first unmap command, the second command is a second unmap command that is sequential to the first unmap command and the third command is a third unmap command that is non-sequential to the second unmap command.

5 . The method of claim 1 , further comprising:

receiving a third command from the host device;

determining one or more characteristics associated with the third command; and

maintaining the pause on the garbage collection process based, at least in part, on the one or more characteristics associated with the third command.

6 . The method of claim 1 , wherein the one or more characteristics associated with the first command and the one or more characteristics associated with the second command include one or more of:

a LBA range associated with the first command and the second command;

a size of data associated with the first command and the second command; and

a number of sectors associated with the first command and the second command.

7 . The method of claim 1 , wherein the one or more characteristics of the first command and the one or more characteristics of the second command are associated with garbage collection pausing criteria.

8 . The method of claim 1 , further comprising resuming the garbage collection process based, at least in part, on an operating state of a data storage device.

9 . A data storage device, comprising:

a controller; and

a command analysis system operable to:

analyze one or more command parameters associated with a first command and a second command;

determine, based at least in part, on the one or more command parameters whether a logical block address (LBA) associated with the second command is sequential to a LBA associated with the first command and whether to pause a garbage collection process associated with at least one of the first command and the second command; and

pause the garbage collection process based, at least in part, on the determination.

10 . The data storage device of claim 9 , wherein the command analysis system is further operable to:

analyze one or more command parameters associated with a third command; and

resume the garbage collection process associated with the at least one of the first command and the second command based, at least in part, on the one or more command parameters associated with the third command.

11 . The data storage device of claim 10 , wherein the third command is one of a write command or a read command.

12 . The data storage device of claim 10 , wherein the first command is a first unmap command, the second command is a second unmap command that is sequential to the first unmap command and the third command is a third unmap command that is non-sequential to the second unmap command.

13 . The data storage device of claim 9 , wherein the command analysis system is further operable to:

analyze one or more command parameters associated with a third command; and

maintain the pause on the garbage collection process associated with the at least one of the first command and the second command based, at least in part, on the one or more command parameters associated with the third command.

14 . The data storage device of claim 9 , wherein the one or more command parameters associated with the first command and the one or more command parameters associated with the second command include one or more of:

a LBA range associated with the first command and the second command;

a size of data associated with the first command and the second command; and

a number of sectors associated with the first command and the second command.

15 . The data storage device of claim 9 , wherein the one or more command parameters of the first command and the one or more command parameters of the second command are associated with garbage collection pausing criteria.

16 . The data storage device of claim 9 , wherein the command analysis system is further operable to resume the garbage collection process based, at least in part, on an operating state of the data storage device.

17 . A data storage device, comprising:

a control means; and

a command analysis means operable to:

analyze one or more command parameters associated with a first command and a second command; and

determine based, at least in part, on the one or more command parameters whether a logical block address (LBA) associated with the second command is sequential to a LBA associated with the first command; and

determine whether to pause a garbage collection process associated with at least one of the first command and the second command based, at least in part, on determining the LBA associated with the second command is sequential to the LBA associated with the first command; and

a garbage collection control means operable to pause the garbage collection process in response to the command analysis means determining the garbage collection process will be paused.

18 . The data storage device of claim 17 , wherein the command analysis means is further operable to analyze one or more command parameters associated with a third command and wherein the garbage collection control means is further operable to resume the garbage collection process based, at least in part, on the one or more command parameters associated with the third command.

19 . The data storage device of claim 18 , wherein the third command is one of a write command or a read command.

20 . The data storage device of claim 18 , wherein the first command is a first unmap command, the second command is a second unmap command that is sequential to the first unmap command and the third command is a third unmap command that is non-sequential to the second unmap command.

Assignments (7)
PARTIAL RELEASE OF SECURITY INTERESTS Recorded Apr 25, 2025
From: JPMORGAN CHASE BANK, N.A., AS AGENT
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 071382/0001 →
SECURITY AGREEMENT Recorded Apr 25, 2025
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 071050/0001 →
PATENT COLLATERAL AGREEMENT Recorded Aug 23, 2024
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS THE AGENT
Reel/Frame 068762/0494 →
CHANGE OF NAME Recorded Jun 27, 2024
From: SANDISK TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067982/0032 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2024
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067567/0682 →
PATENT COLLATERAL AGREEMENT (AR) Recorded May 15, 2024
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS THE AGENT
Reel/Frame 067417/0329 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 23, 2024
From: TURAGA, DHEEMAHI; REMELLA, SANTOSHI SRAVYA; BANAPPA, SHARADA
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 066215/0719 →
Continuity (1)
Related Publication 20250238367A1 · Jul 24, 2025
References Cited (2)
US 20160041762A1 · Kanno · 2016 [cited by examiner]
US 20210271757A1 · Horspool · 2021 [cited by examiner]