IP Library Granted Patent US 11,748,031
Granted Patent B2
US 11,748,031 · App. 17/234,380 · Granted Sep 5, 2023

Running an independent task in connection with synchronous I/O operations

Inventors: Douglas E. LeCrone (Hopkinton, MA); Paul A. Linstead (Shrewsbury, MA)
Assignee: EMC IP Holding Company LLC
G06F3/0659G06F3/067G06F3/0613G06F3/0653
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 11,748,031
App. No.
17/234,380
Granted
Sep 5, 2023
Kind
B2
Abstract

Running an independent task in connection with a synchronous I/O operation between a storage system and a host includes starting the synchronous I/O operation, setting a timer for the synchronous I/O operation, starting the independent task that runs while waiting for completion of the synchronous I/O operation, and aborting the synchronous I/O operation in response to the timer expiring prior to completion of the synchronous I/O operation. The independent task may be ended in response to the timer expiring. The independent task may be ended in response to the I/O operation completing. The synchronous I/O operation may be performed using a high speed connection between the storage system and the host, which may be coupled to a smart network interface controller provided on a director board in the storage system. The smart network interface controller may include a system on a chip having a processor, memory, and non-volatile storage.

Claims (34)

1. A method of running an independent task in connection with a synchronous I/O operation between a storage system and a host, comprising:

starting the synchronous I/O operation;

setting a timer for the synchronous I/O operation;

starting the independent task that runs while waiting for completion of the synchronous I/O operation, wherein the independent task is ended in response to one of: the timer expiring or the I/O operation completing; and

aborting the synchronous I/O operation in response to the timer expiring prior to completion of the synchronous I/O operation.

2. A method, according to claim 1 , wherein the synchronous I/O operation is performed using an optical cable connection between the storage system and the host.

3. A method, according to claim 2 , wherein the optical cable connection is coupled to a smart network interface controller provided on a director board in the storage system.

4. A method, according to claim 3 , wherein the smart network interface controller includes a system on a chip having a processor, memory, and non-volatile storage.

5. A method, according to claim 4 , wherein the smart network interface controller is a LimeStoneDX SLIC running a PCI PEX8733 Draco chip from Broadcom Corporation of San Jose, Calif.

6. A method, according to claim 1 , further comprising:

performing an asynchronous I/O operation using data that was used for the synchronous operation in response to the timer expiring prior to completion of the synchronous I/O operation.

7. A method, according to claim 6 , wherein the asynchronous I/O operation is performed using an alternative connection between the host and the storage system.

8. A method, according to claim 7 , wherein the alternative connection is a Fibre Channel connection.

9. A non-transitory computer readable medium containing software that runs an independent task in connection with a synchronous I/O operation between a storage system and a host, comprising:

executable code that starts the synchronous I/O operation;

executable code that sets a timer for the synchronous I/O operation;

executable code that starts the independent task that runs while waiting for completion of the synchronous I/O operation, wherein the independent task is ended in response to one of: the timer expiring or the I/O operation completing; and

executable code that aborts the synchronous I/O operation in response to the timer expiring prior to completion of the synchronous I/O operation.

10. A non-transitory computer readable medium, according to claim 9 , wherein the synchronous I/O operation is performed using an optical cable connection between the storage system and the host.

11. A non-transitory computer readable medium, according to claim 10 , wherein the optical cable connection is coupled to a smart network interface controller provided on a director board in the storage system.

12. A non-transitory computer readable medium, according to claim 11 , wherein the smart network interface controller includes a system on a chip having a processor, memory, and non-volatile storage.

13. A non-transitory computer readable medium, according to claim 12 , wherein the smart network interface controller is a LimeStoneDX SLIC running a PCI PEX8733 Draco chip from Broadcom Corporation of San Jose, Calif.

14. A non-transitory computer readable medium, according to claim 9 , further comprising:

executable code that performs an asynchronous I/O operation using data that was used for the synchronous operation in response to the timer expiring prior to completion of the synchronous I/O operation.

15. A non-transitory computer readable medium, according to claim 14 , wherein the asynchronous I/O operation is performed using an alternative connection between the host and the storage system.

16. A non-transitory computer readable medium, according to claim 15 , wherein the alternative connection is a Fibre Channel connection.

17. A computer system, comprising:

a processor;

a controller, coupled to the processor, that communicates with a storage system coupled to the computer system;

a non-transitory computer readable medium coupled to the processor and the controller and containing software that runs an independent task in connection with a synchronous I/O operation between the storage system and the computer system, the software including executable code that starts the synchronous I/O operation, executable code that sets a timer for the synchronous I/O operation, executable code that starts the independent task that runs while waiting for completion of the synchronous I/O operation, wherein the independent task is ended in response to one of: the timer expiring or the I/O operation completing, and executable code that aborts the synchronous I/O operation in response to the timer expiring prior to completion of the synchronous I/O operation.

18. A computer system, according to claim 17 , wherein the synchronous I/O operation is performed using an optical cable connection between the storage system and the host.

19. A computer system, according to claim 18 , wherein the optical cable connection is coupled to a smart network interface controller provided on a director board in the storage system.

20. A computer system, according to claim 19 , wherein the smart network interface controller includes a system on a chip having a processor, memory, and non-volatile storage.

21. A computer system, according to claim 17 , wherein the software also includes executable code that uses the controller to perform an asynchronous I/O operation with data that was used for the synchronous operation in response to the timer expiring prior to completion of the synchronous I/O operation.

Assignments (10)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (056295/0280) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 062022/0255 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (056295/0124) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 062022/0012 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (056295/0001) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 062021/0844 →
RELEASE OF SECURITY INTEREST Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058297/0332 →
SECURITY INTEREST Recorded May 19, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 056295/0124 →
SECURITY INTEREST Recorded May 19, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 056295/0001 →
SECURITY INTEREST Recorded May 19, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 056295/0280 →
CORRECTIVE ASSIGNMENT TO CORRECT THE MISSING PATENTS THAT WERE ON THE ORIGINAL SCHEDULED SUBMITTED BUT NOT ENTERED PREVIOUSLY RECORDED AT REEL: 056250 FRAME: 0541. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded May 17, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 056311/0781 →
SECURITY AGREEMENT Recorded May 14, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 056250/0541 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 3, 2021
From: LECRONE, DOUGLAS E.; LINSTEAD, PAUL A.
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 056113/0011 →