於 四,2013-09-05 於 11:31 +0100,Matt Fleming 提到:
On Thu, 05 Sep, at 06:13:36PM, joeyli wrote:
This S4WakeKey is a VOLATILE variable that could not modify by SetVariable() at runtime. So, it's read only even through efivars.
Does it what your concern?
No, the UEFI spec probibits certain runtime functions from being executed concurrently on separate cpus and the spinlock used in the efivars code ensures that we adhere to that restriction. See table 31 in section 7.1 of the UEFI 2.4 spec for the list of services that are non-reentrant.
The problem isn't that we want to avoid simultaneous access to S4WakeKey, it's that we can't invoke any of the variable runtime service functions concurrently.
I see! I will use efivar api to access EFI variable. Thanks a lot! Joey Lee -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org