On 11/22/2011 06:18 AM, Eric Blake wrote:
On 11/09/2011 05:05 AM, Srivatsa S. Bhat wrote:
> Add the core functions that implement the functionality of the API.
> Suspend is done by using an asynchronous mechanism so that we can return
> the status to the caller successfully before the host gets suspended. This
> asynchronous operation is achieved by suspending the host in a separate
> thread of execution.
>
> To resume the host, an RTC alarm is set up (based on how long we want
> to suspend) before suspending the host. When this alarm fires, the host
> gets woken up.
>
> Signed-off-by: Srivatsa S. Bhat <srivatsa.bhat(a)linux.vnet.ibm.com>
> ---
>
[...]
> +
> +#define MAX_SUSPEND_DURATION 365*24*60*60 /* 1 year, a reasonable max? */
Any time you impose an arbitrary limit (and 1 year can be deemed
arbitrary), you are risking problems. There should be a real technical
reason why (and if) we have to impose a limit, not an arbitrary time
duration; otherwise, I would favor letting the user sleep as long as the
RTC clock supports (even if the sleep amount seems ridiculous to me).
This is as far as I got on my review today; I'll pick up here tomorrow.
Hi Eric,
Thanks a lot for the review comments! I'll address them in my next
iteration of the patchset and post out soon.
Thanks,
Srivatsa S. Bhat
IBM Linux Technology Center