linux-input.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
To: "Arve Hjønnevåg" <arve@android.com>
Cc: "Greg Kroah-Hartman" <gregkh@suse.de>,
	"Sven Neumann" <s.neumann@raumfeld.com>,
	"Jesse Barnes" <jbarnes@virtuousgeek.org>,
	"Oleg Nesterov" <oleg@redhat.com>,
	"Tero Saarni" <tero.saarni@gmail.com>,
	linux-input@vger.kernel.org,
	"Linux-pm mailing list" <linux-pm@lists.linux-foundation.org>,
	"Arjan van de Ven" <arjan@infradead.org>,
	"Alexey Dobriyan" <adobriyan@gmail.com>,
	"Matthew Garrett" <mjg@redhat.com>,
	"Len Brown" <len.brown@intel.com>,
	"Jacob Pan" <jacob.jun.pan@linux.intel.com>,
	"Daniel Mack" <daniel@caiaq.de>,
	linux-omap@vger.kernel.org, "Liam Girdwood" <lrg@slimlogic.co.uk>,
	"Daniel Walker" <dwalker@codeaurora.org>,
	"Theodore Ts'o" <tytso@mit.edu>,
	"Márton Németh" <nm127@freemail.hu>,
	"Brian Swetland" <swetland@google.com>,
	"Mark Brown" <broonie@opensource.wolfsonmicro.com>
Subject: Re: [PATCH 0/8] Suspend block api (version 6)
Date: Tue, 25 May 2010 15:28:14 -0700	[thread overview]
Message-ID: <20100525222814.GB4928@core.coreip.homeip.net> (raw)
In-Reply-To: <AANLkTinz4wUJFkvhpMuYDEpQogBJtj-nhSRoEIFQBK6_@mail.gmail.com>

On Tue, May 25, 2010 at 03:05:41PM -0700, Arve Hjønnevåg wrote:
> On Tue, May 25, 2010 at 11:33 AM, Dmitry Torokhov
> <dmitry.torokhov@gmail.com> wrote:
> > On Tue, May 25, 2010 at 02:25:08PM -0400, Alan Stern wrote:
> >> On Tue, 25 May 2010, Dmitry Torokhov wrote:
> >>
> >> > BTW, If you are concerned about events that already "left" physical
> >> > device but has not reached userspace yet - maybe instead of suspend
> >> > blockers we should make sure that all drivers throughout the chain
> >> > implement suspend/resume and refuse suspending if their queues are not
> >> > empty.  In input land that would mean extending suspend routine in
> >> > input_dev and adding one to evdev.
> >>
> >> That's not the only problem.  We also have to consider events that have
> >> reached userspace but not yet been fully processed.  The user thread
> >> handling the event needs some way to prevent the system from suspending
> >> until it is all done.
> >>
> >
> > It is a problem if kernel initiated suspend transition on its own. I
> > believe that it is userspace responsibility to initiate sustend (and
> > make sure that needs of userspace, including processing of certain
> > events, are served beforehand).
> 
> That only works if a single user-space thread initiates suspend

Yes, there should be a single entity controlling suspend.

> and
> consumes all wakeup events (or if the user-space code that initiates
> suspend implements suspend blockers),

Yes.

> and even then the kernel would
> still need to block suspend in same places as it does if the kernel
> initiates suspend. If a wakeup event happens right after user-space
> initiates suspend, that suspend must be aborted.

This is true regardless of whether we use suspend blockers or not. If,
after initiating suspend, we detect wake up event that event shoudl be
acted upon and suspend should be ignored.

> By only initiating
> suspend from user-space, you force this to be a polling operation.
>

I am not sure what you mean by this.

-- 
Dmitry

      reply	other threads:[~2010-05-25 22:28 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1272667021-21312-1-git-send-email-arve@android.com>
     [not found] ` <1272667021-21312-2-git-send-email-arve@android.com>
     [not found]   ` <1272667021-21312-3-git-send-email-arve@android.com>
     [not found]     ` <1272667021-21312-4-git-send-email-arve@android.com>
     [not found]       ` <1272667021-21312-5-git-send-email-arve@android.com>
     [not found]         ` <1272667021-21312-6-git-send-email-arve@android.com>
     [not found]           ` <1272667021-21312-7-git-send-email-arve@android.com>
2010-04-30 22:37             ` [PATCH 7/8] Input: Block suspend while event queue is not empty Arve Hjønnevåg
     [not found] ` <87wrvl5479.fsf@deeprootsystems.com>
     [not found]   ` <20100503180741.GB2098@rakim.wolfsonmicro.main>
     [not found]     ` <201005032318.35383.rjw@sisk.pl>
     [not found]       ` <87sk68r1zh.fsf@deeprootsystems.com>
     [not found]         ` <s2qd6200be21005031709r28420f0ezf3cf286517ee9114@mail.gmail.com>
2010-05-14 20:27           ` [PATCH 0/8] Suspend block api (version 6) Paul Walmsley
2010-05-14 22:18             ` Arve Hjønnevåg
2010-05-15  2:25               ` Alan Stern
2010-05-15  4:02                 ` Arve Hjønnevåg
2010-05-15 21:25                   ` Alan Stern
2010-05-17  4:54                     ` Arve Hjønnevåg
2010-05-18  2:26               ` Paul Walmsley
2010-05-18  3:21                 ` Arve Hjønnevåg
2010-05-18  7:03                   ` Henrik Rydberg
2010-05-18 19:39                     ` Rafael J. Wysocki
2010-05-25  9:41                   ` Paul Walmsley
2010-05-25 23:08                     ` Arve Hjønnevåg
2010-05-26  7:23                       ` Linus WALLEIJ
2010-05-26 16:01                         ` Alan Stern
2010-05-27  7:46                           ` Linus WALLEIJ
2010-05-27  8:04                             ` Florian Mickler
2010-05-27  8:40                             ` Arve Hjønnevåg
2010-05-27 15:33                             ` Alan Stern
2010-05-28 11:54                               ` Linus WALLEIJ
2010-05-20 23:37                 ` David Brownell
2010-05-25 16:51               ` Dmitry Torokhov
2010-05-25 18:25                 ` Alan Stern
2010-05-25 18:33                   ` Dmitry Torokhov
2010-05-25 22:05                     ` Arve Hjønnevåg
2010-05-25 22:28                       ` Dmitry Torokhov [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20100525222814.GB4928@core.coreip.homeip.net \
    --to=dmitry.torokhov@gmail.com \
    --cc=adobriyan@gmail.com \
    --cc=arjan@infradead.org \
    --cc=arve@android.com \
    --cc=broonie@opensource.wolfsonmicro.com \
    --cc=daniel@caiaq.de \
    --cc=dwalker@codeaurora.org \
    --cc=gregkh@suse.de \
    --cc=jacob.jun.pan@linux.intel.com \
    --cc=jbarnes@virtuousgeek.org \
    --cc=len.brown@intel.com \
    --cc=linux-input@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=linux-pm@lists.linux-foundation.org \
    --cc=lrg@slimlogic.co.uk \
    --cc=mjg@redhat.com \
    --cc=nm127@freemail.hu \
    --cc=oleg@redhat.com \
    --cc=s.neumann@raumfeld.com \
    --cc=swetland@google.com \
    --cc=tero.saarni@gmail.com \
    --cc=tytso@mit.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).