Cache only queue option for cache controller
AssigneeRed Hat, Inc.
InventorAlan Cox
Life of this patent
Estimating the term…
Abstract
A disk input/output (I/O) system includes a controller, a cache, a disk I/O subsystem, and a command queue. The load on the queue is monitored and when it reaches a threshold, commands are designated cache only. Cache only commands are added to the queue only if they can be completed without accessing the disk I/O subsystem. If the disk I/O subsystem would be accessed in order to complete a cache only command, the command is returned to the operating system with an error. The operating system can then add the command to an operating system or back-up queue.
Claims8
A method for controlling an input/output (I/O) control system that includes a cache and an underlying I/O subsystem, the method comprising:
- determining if a load on an I/O queue exceeds a threshold;
- if the load on the I/O queue exceeds the threshold, designating an I/O command as cache only;
- either before or after designating the I/O command as cache only, sending the I/O command to an I/O controller;
- and
- if the I/O command is designated as cache only:
- adding the I/O command to the I/O queue if the I/O command can be completed without accessing the underlying I/O subsystem;
- and
- returning the I/O command without adding the I/O command to the I/O queue to be executed if completion of the I/O command involves accessing the underlying I/O subsystem.
A method for controlling an input/output (I/O) control system that includes a cache, an I/O queue, and an underlying I/O subsystem, the method comprising:
- sending an I/O command to an I/O controller;
- determining if a load on the I/O queue exceeds a threshold;
- if the load on the I/O queue exceeds the threshold and completion of the I/O command involves accessing the underlying I/O subsystem, returning the I/O command without adding the I/O command to the I/O queue to be executed;
- and
- otherwise, adding the I/O command to the I/O queue.
A computer program product, residing on a computer-readable medium, for use in controlling an I/O control system, the computer program product comprising instructions for causing a processor to:
- receive an I/O command;
- if the I/O command is designated as cache only and the I/O command can be completed without accessing an underlying I/O subsystem, add the I/O command to an I/O queue;
- if the I/O command is designated as cache only and completion of the I/O command involves accessing the underlying I/O subsystem, return the I/O command without adding the I/O command to the I/O queue to be executed;
- and
- if the I/O command is not designated as cache only, add the I/O command to the I/O queue.
A computer program product, residing on a computer-readable medium, for use in controlling an I/O control system, the computer program product comprising instructions for causing a processor to:
- determine if a load on an I/O queue exceeds a threshold;
- if the load exceeds the threshold, designate an I/O command as cache only;
- send an I/O command;
- and
- if an I/O command that has been designated as cache only is returned with an error condition indicating that the command involved accessing an underlying I/O subsystem, add the command to a back-up queue without adding the command to the I/O queue to be executed.
Dependencies are inferred from the claim text.