linux-input.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Grygorii Strashko <grygorii.strashko@ti.com>
To: kernel test robot <ying.huang@linux.intel.com>,
	Grygorii Strashko <grygorii.Strashko@ti.com>,
	"Rafael J. Wysocki" <rafael.j.wysocki@intel.com>,
	Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: lkp@01.org, LKML <linux-kernel@vger.kernel.org>,
	Pavel Machek <pavel@ucw.cz>,
	Alan Stern <stern@rowland.harvard.edu>,
	linux-input@vger.kernel.org
Subject: Re: [lkp] [PM / sleep] 013c074f86: [drm:intel_opregion_init [i915]] *ERROR* No ACPI video bus found
Date: Tue, 12 Jan 2016 20:38:57 +0200	[thread overview]
Message-ID: <56954841.3080004@ti.com> (raw)
In-Reply-To: <871t9ub1l4.fsf@yhuang-dev.intel.com>

Hi All,

Cc: more people + linux-input@vger.kernel.org

On 01/07/2016 03:49 AM, kernel test robot wrote:
> FYI, we noticed the below changes on
> 
> https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
> commit 013c074f8642d8e815ad670601f8e27155a74b57 ("PM / sleep: prohibit devices probing during suspend/hibernation")
> 
> <4>[   33.021805] serio serio0: device_attach() failed for isa0060/serio0 (i8042 KBD port), error: -517
> <4>[   33.021813] serio serio1: device_attach() failed for isa0060/serio1 (i8042 AUX port), error: -517
> <6>[   33.021906] PM: resume of devices complete after 171.688 msecs
> 
> To reproduce:
> 
>          git clone git://git.kernel.org/pub/scm/linux/kernel/git/wfg/lkp-tests.git
>          cd lkp-tests
>          bin/lkp install job.yaml  # job file is attached in this email
>          bin/lkp run     job.yaml

I've done some investigation of the above log output:
1) Small introduction first: commit 013c074f8642 was created, because it was identified
that it's unsafe to bind/probe drivers during suspend resume, mainly because this will
cause changing of pointers on PM data structures on the fly for devices which already
tracked by Suspend core.

2) above log prints can be generated by the below call chain (I've checked the code only):

drivers/input/serio/serio.c
serio_resume()
 - serio_queue_event(serio, NULL, SERIO_RECONNECT_PORT)
   - queue_work(system_long_wq, &serio_event_work);
 ....
 - serio_handle_event()
   - serio_reconnect_port()
	- serio_reconnect_driver() --- return <0
		
	- serio_disconnect_port()
	  - device_release_driver() --- unbind
 	- serio_find_driver()
	   error = device_attach(&serio->dev);
	   if (error < 0)
		dev_warn(&serio->dev,
			 "device_attach() failed for %s (%s), error: %d\n",
			 serio->phys, serio->name, error);

  device_attach() will return -EPROBE_DEFER(-517) because the device probing is not allowed yet.

As per my understanding (and it's not clear from issue description), above situation
should not break functionality of the system - just device's probe will be delayed till the
end of dpm_complete(). So, I propose consider the option - do not print above warnings if 
return code from device_attach() is -EPROBE_DEFER.

diff --git a/drivers/input/serio/serio.c b/drivers/input/serio/serio.c
index 8f82897..1ca7f55 100644
--- a/drivers/input/serio/serio.c
+++ b/drivers/input/serio/serio.c
@@ -134,7 +134,7 @@ static void serio_find_driver(struct serio *serio)
        int error;
 
        error = device_attach(&serio->dev);
-       if (error < 0)
+       if (error < 0 && error != -EPROBE_DEFER)
                dev_warn(&serio->dev,
                         "device_attach() failed for %s (%s), error: %d\n",
                         serio->phys, serio->name, error);


[1] https://lkml.org/lkml/2015/9/11/554
-- 
regards,
-grygorii

       reply	other threads:[~2016-01-12 18:39 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <871t9ub1l4.fsf@yhuang-dev.intel.com>
2016-01-12 18:38 ` Grygorii Strashko [this message]
2016-01-12 20:11   ` [lkp] [PM / sleep] 013c074f86: [drm:intel_opregion_init [i915]] *ERROR* No ACPI video bus found Rafael J. Wysocki
2016-01-12 20:25     ` Dmitry Torokhov
2016-01-13 11:20       ` Grygorii Strashko

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=56954841.3080004@ti.com \
    --to=grygorii.strashko@ti.com \
    --cc=dmitry.torokhov@gmail.com \
    --cc=linux-input@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lkp@01.org \
    --cc=pavel@ucw.cz \
    --cc=rafael.j.wysocki@intel.com \
    --cc=stern@rowland.harvard.edu \
    --cc=ying.huang@linux.intel.com \
    /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).