IP Library Granted Patent US 10,356,015
Granted Patent B2
US 10,356,015 · App. 15/499,149 · Granted Jul 16, 2019

Execution traces

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 10,356,015
App. No.
15/499,149
Granted
Jul 16, 2019
Kind
B2
Abstract

In one or more embodiments, one or more systems, processes, and/or methods may utilize a trace unit that stores trace data via a trace buffer in a memory medium and may utilize a network interface that provides the trace data from the trace buffer to a network. In one example, the network interface may provide the trace data from the trace buffer to the network in response to a trigger. In one instance, the trigger may include a modification of a pointer to an address of the trace buffer. In another instance, the trigger may include an expiration of a timer. In another example, the trace unit may filter the trace data. In one or more embodiments, storing the traced data and providing the trace data to the network may be performed without involving a main processor of an information handling system that includes the trace unit.

Claims (65)

1. An information handling system, comprising:

a trace hub;

a network interface configured to be coupled to a network; and

a memory medium that stores a trace buffer accessible by the trace hub and the network interface;

wherein the trace hub is configured to:

store trace data via the trace buffer;

modify a pointer to an address of the trace buffer; and

modify a trace region header that stores an address of a tail of a circular queue that stores the trace data; and

wherein the network interface is configured to:

in response to the trace hub modifying the pointer to the address of the trace buffer and in response to the trace hub modifying the trace region header that stores the address of the tail of the circular queue that stores the trace data, retrieve the trace data from the trace buffer; and

provide the trace data from the trace buffer to the network.

2. The information handling system of claim 1 , wherein the trace buffer includes the circular queue; and

wherein the pointer to the address of the trace buffer stores the address of the tail of the circular queue.

3. The information handling system of claim 1 , wherein the network interface is further configured to, in response to an expiration of a timer that expires after an amount of time transpires, retrieve the trace data from the trace buffer.

4. The information handling system of claim 3 , wherein the trace hub is further configured to:

after the timer expires after the amount of time transpires, determine an amount of the trace data stored via the trace buffer;

if the amount of the trace data stored via the trace buffer is above a threshold, decrease the amount of time; and

if the amount of the amount of the trace data stored via the trace buffer is below the threshold, increase the amount of time.

5. The information handling system of claim 1 , wherein the trace hub is further configured to filter the trace data based on at least one of a subset of processor instructions and at least one event before the trace hub stores the trace data via the trace buffer.

6. The information handling system of claim 1 , wherein the trace hub is further configured to store the trace data via the trace buffer without involving a main processor of the information handling system and the network interface is further configured to provide the trace data from the trace buffer to the network without involving the main processor of the information handling system.

7. The information handling system of claim 1 , wherein at least one of a storage area network (SAN) and a network area storage (NAS) receives and stores the trace data.

8. The information handling system of claim 1 , further comprising:

a plurality of network interfaces that includes the network interface and another network interface, different from the network interface;

wherein the memory medium stores another trace buffer accessible by the trace hub and the other network interface;

wherein the trace hub is further configured to:

store further trace data via the other trace buffer; and

modify a pointer to an address of the other trace buffer; and

wherein the other network interface is configured to:

in response to the trace hub modifying the pointer to the address of the other trace buffer, retrieve the further trace data from the other trace buffer; and

provide the further trace data from the other trace buffer to the network.

9. A method, comprising:

a trace hub storing trace data via a trace buffer;

the trace hub modifying a pointer to an address of the trace buffer;

the trace hub modifying a trace region header that stores an address of a tail of a circular queue that stores the trace data; and

in response to the trace hub modifying the pointer to the address of the trace buffer and in response to the trace hub modifying the trace region header that stores the address of the tail of the circular queue that stores the trace data, at least one network interface retrieving the trace data from the trace buffer; and

the at least one network interface providing the trace data from the trace buffer to a network.

10. The method of claim 9 ,

wherein the trace buffer includes the circular queue; and

wherein the pointer to the address of the trace buffer stores the address of the tail of the circular queue.

11. The method of claim 9 , further comprising:

a timer expiring after an amount of time transpires; and

in response to the timer expiring after the amount of time transpires, the at least one network interface retrieving the trace data from the trace buffer.

12. The method of claim 11 , further comprising:

after the timer expiring after the amount of time transpires, determining an amount of the trace data stored via the trace buffer;

if the amount of the trace data stored via the trace buffer is above a threshold, decreasing the amount of time; and

if the amount of the amount of the trace data stored via the trace buffer is below the threshold, increasing the amount of time.

13. The method of claim 9 , further comprising:

before the trace hub storing the trace data via the trace buffer, filtering the trace data based on at least one of a subset of processor instructions and at least one event.

14. The method of claim 9 , wherein the trace hub storing the trace data via the trace buffer, the trace hub modifying the pointer to the address of the trace buffer, and the at least one network interface providing the trace data from the trace buffer to the network are preformed without involving a main processor of an information handling system that includes the trace hub.

15. The method of claim 9 , further comprising:

storing the trace data via at least one of a storage area network (SAN) and a network area storage (NAS).

16. The method of claim 9 ,

wherein the at least one network interface includes a plurality of network interfaces;

wherein the at least one network interface retrieving the trace data from the trace buffer includes a first network interface of the plurality of network interfaces retrieving the trace data from the trace buffer; and

wherein the at least one network interface providing the trace data from the trace buffer to the network includes the first network interface providing the trace data from the trace buffer to the network;

the method further comprising:

the trace hub storing further trace data via another trace buffer;

the trace hub modifying a pointer to an address of the other trace buffer;

in response to the trace hub modifying the pointer to the address of the other trace buffer, a second network interface, different from the first network interface, of the plurality of network interfaces retrieving the further trace data from the other trace buffer; and

the second network interface providing the further trace data from the other trace buffer to the network.

17. The information handling system of claim 1 , further comprising:

a main processor that includes the trace hub;

wherein the memory medium is coupled to the main processor; and

wherein the network interface is coupled to the main processor.

18. The method of claim 9 , wherein a processor of an information handling system includes the trace hub.

Assignments (8)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (042769/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO WYSE TECHNOLOGY L.L.C.)
Reel/Frame 059803/0802 →
RELEASE OF SECURITY INTEREST AT REEL 042768 FRAME 0585 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058297/0536 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
PATENT SECURITY INTEREST (CREDIT) Recorded Jun 12, 2017
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 042768/0585 →
PATENT SECURITY INTEREST (NOTES) Recorded Jun 12, 2017
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 042769/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 27, 2017
From: BUTCHER, WADE ANDREW; BOWMAN, KURTIS JOHN
To: DELL PRODUCTS L.P.
Reel/Frame 042164/0936 →