IP Library Granted Patent US 7,120,717
Granted Patent B2
US 7,120,717 · App. 10/779,017 · Granted Oct 10, 2006

Method and apparatus for controlling interrupt storms

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 7,120,717
App. No.
10/779,017
Granted
Oct 10, 2006
Kind
B2
Abstract

An apparatus and method for detecting and controlling interrupt storms in a computer system. More specifically, there is provided a method that comprises detecting whether or not a device is producing an interrupt storm, and if the device is producing an interrupt storm, disabling the interrupt being generated by the device, and a system for implementing the method.

Claims (75)

1. A method comprising:

detecting whether a device is producing an interrupt storm;

if the device is producing an interrupt storm:

disabling an interrupt being generated by the device; and

starting a timer;

after the timer expires, determining whether or not the device is still producing the interrupt storm;

if the device is still producing the interrupt storm, restarting the timer; and

if the device is no longer producing the interrupt storm, enabling the interrupt generated by the device.

2. The method as set forth in claim 1 , wherein detecting whether a device is producing an interrupt storm comprises:

receiving an interrupt from the device;

determining a number of interrupts that have been received from the device over a period of time; and

determining if the number of interrupts that have been received from the device over the period of time exceeds a threshold.

3. The method as set forth in claim 1 , wherein determining whether or not the device is still producing the interrupt storm comprises checking an indicator indicative of whether or not the device is generating the interrupt storm.

4. The method as set forth in claim 1 , comprising:

if the device is still producing the interrupt storm restarting the timer.

5. The method as set forth in claim 1 , comprising producing a notification that the device is producing the interrupt storm.

6. The method as set forth in claim 1 , wherein detecting whether a device is producing an interrupt storm comprises detecting whether an I/O device is producing an interrupt storm.

7. The method as set forth in claim 1 , wherein detecting whether a device is producing an interrupt storm comprises detecting whether a memory device is producing an interrupt storm.

8. A method comprising:

receiving an interrupt;

updating an interrupt rate to reflect receiving the interrupt;

determining if the updated interrupt rate exceeds an interrupt rate threshold;

if the interrupt rate exceeds the interrupt rate threshold:

disabling the interrupt; and

initiating a timer; and

after an expiration of the timer:

determining if the interrupt rate still exceeds the interrupt rate threshold;

if the interrupt rate still exceeds the interrupt rate threshold, restarting the timer; and

if the interrupt rate does not still exceed the interrupt rate threshold, enabling the interrupt.

9. The method as set forth in claim 8 , comprising processing the interrupt if the interrupt rate does not exceed the interrupt rate threshold.

10. A computer-readable storage medium storing computer instructions for:

detecting whether a device is producing an interrupt storm;

if the device is producing an interrupt storm:

disabling an interrupt being generated by the device; and

starting a timer configured to count down to zero;

after the timer counts down to zero, determining whether or not the device is still producing the interrupt storm;

if the device is still producing the interrupt storm, restarting the timer; and

if the device is no longer producing the interrupt storm, enabling the interrupt generated by the device.

11. The computer-readable storage medium as set forth in claim 10 , wherein the instructions for detecting whether a device is producing an interrupt storm comprise instructions for:

receiving an interrupt from the device;

determining the number of interrupts that have been received from the device over a period of time; and

determining if the number of interrupts that have been received from the device over the period of time exceeds a threshold.

12. The computer-readable storage medium as set forth in claim 10 , wherein the instructions for detecting whether the device is producing an interrupt storm comprise instructions for checking an indicator indicative of whether or not the device is generating the interrupt storm.

13. The computer-readable storage medium as set forth in claim 10 , comprising instructions for producing a notification that the device is producing the interrupt storm.

14. The computer-readable storage medium as set forth in claim 10 , wherein the instructions for detecting whether a device is producing an interrupt storm comprise instructions for detecting whether an I/O device is producing an interrupt storm.

15. The computer-readable storage medium as set forth in claim 10 , wherein the instructions for detecting whether a device is producing an interrupt storm comprise instructions for detecting whether a memory device is producing an interrupt storm.

16. A tangible storage medium comprising:

a routine for receiving an interrupt;

a routine for updating an interrupt rate to reflect receiving the interrupt;

a routine for determining if the updated interrupt rate exceeds an interrupt rate threshold; and

a routine for, disabling the interrupt and initiating a timer if the interrupt rate exceeds the interrupt rate threshold;

a routine for determining if the interrupt rate still exceeds the interrupt rate threshold after an expiration of the timer;

a routine for restarting the timer if the interrupt rate still exceeds the interrupt rate threshold; and

a routine for enabling the interrupt if the interrupt rate does not still exceed the interrupt rate threshold.

17. The tangible storage medium as set forth in claim 16 , comprising a routine for processing the interrupt if the interrupt rate does not exceed the interrupt rate threshold.

18. A computer system comprising:

a first component configured to detect whether a device is producing an interrupt storm; and

a second component configured to disable an interrupt if the first component detects an interrupt storm, wherein the second component is configured:

to start a timer after disabling the interrupt;

to restart the timer after the timer expires if the first component still detects the interrupt storm; and

to enable the interrupt after the timer expires if the first component no longer detects the interrupt storm.

19. The computer system as set forth in claim 18 , wherein the first component is a processor.

20. The computer system as set forth in claim 18 , wherein the first component is a chipset.

21. The computer system as set forth in claim 18 , wherein the first component is an interrupt controller.

22. The computer system as set forth in claim 18 , wherein the first component is an I/O device.

23. The computer system as set forth in claim 18 , wherein the first component is a memory device.

24. The computer system as set forth in claim 18 , wherein the second component is a processor.

25. The computer system as set forth in claim 18 , wherein the second component is an interrupt controller.

26. The computer system as set forth in claim 18 , wherein the second component is a chipset.

27. The computer system as set forth in claim 18 , wherein the second component is an I/O device.

28. The computer system as set forth in claim 18 , wherein the second component is a memory device.

29. The computer system as set forth in claim 18 , wherein the first component is further configured to:

receive an interrupt from the device;

determine the number of interrupts that have been received from the device over a period of time; and

determine if the number of interrupts that have been received from the device over the period of time exceeds a threshold.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 26, 2021
From: OT PATENT ESCROW, LLC
To: VALTRUS INNOVATIONS LIMITED
Reel/Frame 057650/0537 →
PATENT ASSIGNMENT, SECURITY INTEREST, AND LIEN AGREEMENT Recorded Jan 26, 2021
From: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP; HEWLETT PACKARD ENTERPRISE COMPANY
To: OT PATENT ESCROW, LLC
Reel/Frame 055269/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 9, 2015
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 037079/0001 →