Client partition scheduling and prioritization of service partition work
First Claim
1. A method in a data processing system for processing a service request, the method comprising:
- obtaining by a service partition of the data processing system a service request from a logical partition of the data processing system, the logical partition and the service partition each having been created by and executing above a hypervisor of the data processing system, and the hypervisor having assigned a processor quantum to the logical partition;
processing the service request by the service partition utilizing the processor quantum assigned to the logical partition by the hypervisor and donated by the logical partition to the service partition;
controlling by the logical partition scheduling of the service partition, the controlling comprising queuing the service request at the logical partition until the logical partition decides to schedule execution of the service request by the service partition; and
at least one of;
(i) monitoring by the service partition for expiration of the processor quantum prior to completion of processing of the service request, and when detected, automatically posting a partition busy interrupt signal by the hypervisor for the logical partition, saving service partition state information by the hypervisor, and dispatching the logical partition to process the partition busy interrupt signal, wherein processing the partition busy interrupt signal by the logical partition comprises determining whether to currently schedule the service request for further execution by the service partition;
or(ii) monitoring by the hypervisor for receipt of an interrupt or timeout parameter requiring servicing by the service partition on behalf of the logical partition, and when detected, automatically posting a partition busy interrupt signal by the hypervisor for the logical partition, saving service partition state information by the hypervisor, and dispatching the logical partition to process the partition busy interrupt signal, wherein processing the partition busy interrupt signal comprises determining by the logical partition whether to currently schedule the service partition for processing of the interrupt or timeout parameter requiring servicing, or whether to delay processing of the interrupt or timeout parameter requiring servicing, pending execution of higher priority work by the logical partition.
1 Assignment
0 Petitions
Accused Products
Abstract
A method in a data processing system is provided for processing a service request of a client partition. The method includes: obtaining by a service partition of the data processing system the service request from the client partition, wherein both the client and service partitions execute above a hypervisor of the data processing system; and processing the service request by the service partition utilizing a processor quantum assigned to the client partition and donated by the client partition to the service partition. The client partition controls scheduling of the service partition by queuing the service request at the client partition until the client partition decides to proceed with execution of the service request by the service partition. In one implementation, the service partition is a partition adjunct of the data processing system, which utilizes donated virtual address space of the client partition.
63 Citations
13 Claims
-
1. A method in a data processing system for processing a service request, the method comprising:
-
obtaining by a service partition of the data processing system a service request from a logical partition of the data processing system, the logical partition and the service partition each having been created by and executing above a hypervisor of the data processing system, and the hypervisor having assigned a processor quantum to the logical partition; processing the service request by the service partition utilizing the processor quantum assigned to the logical partition by the hypervisor and donated by the logical partition to the service partition; controlling by the logical partition scheduling of the service partition, the controlling comprising queuing the service request at the logical partition until the logical partition decides to schedule execution of the service request by the service partition; and at least one of; (i) monitoring by the service partition for expiration of the processor quantum prior to completion of processing of the service request, and when detected, automatically posting a partition busy interrupt signal by the hypervisor for the logical partition, saving service partition state information by the hypervisor, and dispatching the logical partition to process the partition busy interrupt signal, wherein processing the partition busy interrupt signal by the logical partition comprises determining whether to currently schedule the service request for further execution by the service partition;
or(ii) monitoring by the hypervisor for receipt of an interrupt or timeout parameter requiring servicing by the service partition on behalf of the logical partition, and when detected, automatically posting a partition busy interrupt signal by the hypervisor for the logical partition, saving service partition state information by the hypervisor, and dispatching the logical partition to process the partition busy interrupt signal, wherein processing the partition busy interrupt signal comprises determining by the logical partition whether to currently schedule the service partition for processing of the interrupt or timeout parameter requiring servicing, or whether to delay processing of the interrupt or timeout parameter requiring servicing, pending execution of higher priority work by the logical partition. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A data processing system comprising:
-
at least one processing environment comprising a logical partition and a service partition to process a service request for the logical partition, the logical partition and the service partition each having been created by and executing above a hypervisor of the data processing system, the hypervisor having assigned a processor quantum to the logical partition; wherein the service request is processed by the service partition utilizing the processor quantum assigned to the logical partition by the hypervisor and donated by the logical partition to the service partition with a call to the service partition to process the service request; wherein the logical partition controls scheduling of the service partition, and wherein control of scheduling by the logical partition includes queuing the service request at the logical partition until the logical partition decides to schedule execution of the service request by the service partition; and at least one of; (i) the hypervisor monitors for expiration of the processor quantum prior to completion of processing of the service request by the service partition, and when detected, automatically posts a partition busy interrupt signal for the logical partition, and the hypervisor saves service partition state information, and dispatches the logical partition to process the partition busy interrupt signal, wherein processing the partition busy interrupt signal comprises determining whether to currently schedule the service partition for further execution of the service request;
or(ii) the hypervisor monitors for receipt of an interrupt or timeout parameter requiring servicing by the service partition on behalf of the logical partition, and when detected, automatically posts a partition busy interrupt signal for the logical partition, and saves service partition state information and dispatches the logical partition to process the partition busy interrupt signal, wherein the logical partition processes the partition busy interrupt signal by determining whether to currently schedule the service partition for processing of the interrupt or timeout parameter requiring servicing, or whether to delay processing of the interrupt or timeout parameter requiring servicing, pending execution of higher priority work by the logical partition. - View Dependent Claims (9, 10, 11)
-
-
12. An article of manufacture comprising:
at least one non-transitory computer-usable medium having computer-readable program code logic defining a method of processing a service request within a data processing system, the computer-readable program code logic when executing on a processor performing; obtaining by a service partition of the data processing system a service request from a logical partition of the data processing system, the logical partition and the service partition each having been created by and executing above a hypervisor of the data processing system, and the hypervisor having assigned a processor quantum to the logical partition; processing the service request by the service partition utilizing the processor quantum assigned to the logical partition by the hypervisor and donated by the logical partition to the service partition; and wherein the performing further comprises monitoring by the service partition for expiration of the processor quantum prior to completion of processing of the service request by the service partition, and when detected, automatically posting a partition busy interrupt signal by the hypervisor for the logical partition, saving service partition state information by the hypervisor, and dispatching the logical partition to process the partition busy interrupt signal, wherein processing the partition busy interrupt signal by the logical partition comprises determining whether to currently schedule the service request for further execution by the service partition. - View Dependent Claims (13)
Specification