lkml.org 
[lkml]   [2010]   [Sep]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    SubjectRe: [PATCH] PM: Prevent waiting forever on asynchronous resume after abort
    From
    On Thu, Sep 2, 2010 at 1:45 PM, Alan Stern <stern@rowland.harvard.edu> wrote:
    > On Thu, 2 Sep 2010, Colin Cross wrote:
    >
    >> >> I think it would be better to change device_pm_init() and add a
    >> >> complete_all().
    >> >
    >> > I agree.
    >> That would work, and was my first solution, but it increases the
    >> reliance on the completion variable being left completed between state
    >> transitions, which is undocumented and unnecessary.  It seems more
    >> straightforward to me to only wait on the parent if the parent is
    >> suspended.
    >
    > How about calling complete_all() from within dpm_prepare() as well?
    > Then it will get initialized properly at the beginning of every sleep
    > transition.
    That would work, but I still don't see why it's better. With either
    of your changes, the power.completion variable is storing state, and
    not just used for notification. However, the exact meaning of that
    state is unclear, especially during the transition from an aborted
    suspend to resume, and the state is duplicating power.status. Setting
    it to complete in dpm_prepare is especially confusing, because at that
    point nothing is completed, it hasn't even been started.
    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2010-09-02 23:05    [W:0.031 / U:29.912 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site