Patent ID: 8935700
Filing Date: 2015-01-13
Classification: G06F

Abstract:
1. A method, comprising: acquiring, by a first thread running on a first processor of a plurality of processors in a multiprocessor system, a first lock corresponding to a resource, wherein the first lock is global with respect to the plurality of processors; spinning, by a second thread running on a second processor of the plurality of processors, at a low hardware-thread priority on the first lock such that the second processor does not yield processor cycles to a hypervisor that implements power-saving policies; spinning, by a third thread running on a third processor of the plurality of processors, on a second local lock on a unshared memory local to the third processor such that the third processor is configured to yield processor cycles to the hypervisor, wherein the second local lock is a per CPU bit associated with the third processor; acquiring the first lock and the corresponding resource by the second thread; and in response to the acquiring of the first lock by the second thread, after notification by the hypervisor, spinning, by the third thread, at the low hardware-thread priority on the first lock rather than the second local lock such that the third processor does not yield processor cycles to the hypervisor.