Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1601826 > unrolled thread

Re: sun50i-a64-pinctrl WARN_ON drivers/base/dd.c:349

Started byGreg Kroah-Hartman <gregkh@linuxfoundation.org>
First post2017-03-16 02:10 +0100
Last post2017-03-17 17:40 +0100
Articles 4 — 3 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: sun50i-a64-pinctrl WARN_ON drivers/base/dd.c:349 Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2017-03-16 02:10 +0100
    Re: sun50i-a64-pinctrl WARN_ON drivers/base/dd.c:349 Tejun Heo <tj@kernel.org> - 2017-03-17 15:20 +0100
      Re: sun50i-a64-pinctrl WARN_ON drivers/base/dd.c:349 Tejun Heo <tj@kernel.org> - 2017-03-17 15:50 +0100
        Re: sun50i-a64-pinctrl WARN_ON drivers/base/dd.c:349 Adam Borowski <kilobyte@angband.pl> - 2017-03-17 17:40 +0100

#1601826 — Re: sun50i-a64-pinctrl WARN_ON drivers/base/dd.c:349

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2017-03-16 02:10 +0100
SubjectRe: sun50i-a64-pinctrl WARN_ON drivers/base/dd.c:349
Message-ID<tls5r-7wD-7@gated-at.bofh.it>
On Thu, Mar 16, 2017 at 12:24:38AM +0800, Icenowy Zheng wrote:
> 
> 
> 16.03.2017, 00:14, "Adam Borowski" <kilobyte@angband.pl>:
> > Hi!
> > On Pine64, since mid-February's -next, I get the following non-fatal warning:
> 
> I don't think this is from any bug in sun50i-a64-pinctrl driver, as the PC even
> didn't enter sun50i-a64-pinctrl driver...
> 
> Maybe you should send this email also to the maintainer of the basical driver
> framework.
> 
> He's "Greg Kroah-Hartman <gregkh@linuxfoundation.org> (supporter:DRIVER
> CORE, KOBJECTS, DEBUGFS, KERNFS AND SYSFS)"
> 
> I added him to the "To" list of this reply.

Well, Tejun added that line, way back in 2.6.21, it's not exactly "new
code".  It says something is wrong with the devres list for the device,
that the bus and driver control, probe of your driver hasn't happened
yet though, so I don't really know what this is trying to check for.

Tejun?

rest of the email left below for context for Tejun..

thanks,

greg k-h

> > [ 2.895375] platform 1c20800.pinctrl: Retrying from deferred list
> > [ 2.901945] bus: 'platform': driver_probe_device: matched device 1c20800.pinctrl with driver sun50i-a64-pinctrl
> > [ 2.912660] bus: 'platform': really_probe: probing driver sun50i-a64-pinctrl with device 1c20800.pinctrl
> > [ 2.922826] ------------[ cut here ]------------
> > [ 2.927751] WARNING: CPU: 2 PID: 65 at drivers/base/dd.c:350 driver_probe_device.part.1+0x37c/0x390
> > [ 2.937339] Modules linked in:
> > [ 2.940578]
> > [ 2.942165] CPU: 2 PID: 65 Comm: kworker/2:1 Not tainted 4.11.0-rc1-00037-g4ca6f786aed9 #2
> > [ 2.950913] Hardware name: Pine64+ (DT)
> > [ 2.954989] Workqueue: events deferred_probe_work_func
> > [ 2.960449] task: ffff80007c690c80 task.stack: ffff80007c698000
> > [ 2.966741] PC is at driver_probe_device.part.1+0x37c/0x390
> > [ 2.972658] LR is at driver_probe_device.part.1+0x140/0x390
> > ...
> > [ 3.173581] [<ffff000008555794>] driver_probe_device.part.1+0x37c/0x390
> > [ 3.180602] [<ffff00000855595c>] __device_attach_driver+0xac/0x150
> > [ 3.187162] [<ffff000008553610>] bus_for_each_drv+0x58/0x98
> > [ 3.193081] [<ffff000008555374>] __device_attach+0xc4/0x150
> > [ 3.198991] [<ffff000008555b40>] device_initial_probe+0x10/0x18
> > [ 3.205265] [<ffff0000085547f4>] bus_probe_device+0x94/0xa0
> >
> > (this log has drivers/base/dd.c:350 not :349 because of added "#define
> > DEBUG" at the start of that file)
> >
> > Full console output until that point attached.
> >
> > --
> > ⢀⣴⠾⠻⢶⣦⠀ Meow!
> > ⣾⠁⢠⠒⠀⣿⡁
> > ⢿⡄⠘⠷⠚⠋⠀ Collisions shmolisions, let's see them find a collision or second
> > ⠈⠳⣄⠀⠀⠀⠀ preimage for double rot13!

[toc] | [next] | [standalone]


#1603350

FromTejun Heo <tj@kernel.org>
Date2017-03-17 15:20 +0100
Message-ID<tm0Tv-7D7-11@gated-at.bofh.it>
In reply to#1601826
Hello,

On Thu, Mar 16, 2017 at 10:06:15AM +0900, Greg Kroah-Hartman wrote:
> > > [ 2.895375] platform 1c20800.pinctrl: Retrying from deferred list
> > > [ 2.901945] bus: 'platform': driver_probe_device: matched device 1c20800.pinctrl with driver sun50i-a64-pinctrl
> > > [ 2.912660] bus: 'platform': really_probe: probing driver sun50i-a64-pinctrl with device 1c20800.pinctrl
> > > [ 2.922826] ------------[ cut here ]------------
> > > [ 2.927751] WARNING: CPU: 2 PID: 65 at drivers/base/dd.c:350 driver_probe_device.part.1+0x37c/0x390
> > > [ 2.937339] Modules linked in:
> > > [ 2.940578]
> > > [ 2.942165] CPU: 2 PID: 65 Comm: kworker/2:1 Not tainted 4.11.0-rc1-00037-g4ca6f786aed9 #2
> > > [ 2.950913] Hardware name: Pine64+ (DT)
> > > [ 2.954989] Workqueue: events deferred_probe_work_func
> > > [ 2.960449] task: ffff80007c690c80 task.stack: ffff80007c698000
> > > [ 2.966741] PC is at driver_probe_device.part.1+0x37c/0x390
> > > [ 2.972658] LR is at driver_probe_device.part.1+0x140/0x390
> > > ...
> > > [ 3.173581] [<ffff000008555794>] driver_probe_device.part.1+0x37c/0x390
> > > [ 3.180602] [<ffff00000855595c>] __device_attach_driver+0xac/0x150
> > > [ 3.187162] [<ffff000008553610>] bus_for_each_drv+0x58/0x98
> > > [ 3.193081] [<ffff000008555374>] __device_attach+0xc4/0x150
> > > [ 3.198991] [<ffff000008555b40>] device_initial_probe+0x10/0x18
> > > [ 3.205265] [<ffff0000085547f4>] bus_probe_device+0x94/0xa0

It's warning that the device has resources associated with it on
probe.  There gotta be something fishy going on with the probing
sequence.  How reproducible is the problem?

Thanks.

-- 
tejun

[toc] | [prev] | [next] | [standalone]


#1603370

FromTejun Heo <tj@kernel.org>
Date2017-03-17 15:50 +0100
Message-ID<tm1my-7VB-25@gated-at.bofh.it>
In reply to#1603350
On Fri, Mar 17, 2017 at 10:28:34PM +0800, Icenowy Zheng wrote:
> > It's warning that the device has resources associated with it on
> > probe. There gotta be something fishy going on with the probing
> > sequence. How reproducible is the problem?
> 
> Do you mean in the first probing trial the driver didn't clean up well?

Possibly but devres should have released all resources after the
previous probe failure or driver disassociation, so I have no idea how
there can be resources left on that list.

> With the same driver I didn't see this problem in 4.11-rc{1,2}.

devres hasn't changed, so I have no idea what changed that.  Which
kernels are affected?  Can you bisect if the problem is easily
reproducible?

Thanks.

-- 
tejun

[toc] | [prev] | [next] | [standalone]


#1603450

FromAdam Borowski <kilobyte@angband.pl>
Date2017-03-17 17:40 +0100
Message-ID<tm350-Ro-19@gated-at.bofh.it>
In reply to#1603370
On Fri, Mar 17, 2017 at 10:44:22AM -0400, Tejun Heo wrote:
> On Fri, Mar 17, 2017 at 10:28:34PM +0800, Icenowy Zheng wrote:
> > > It's warning that the device has resources associated with it on
> > > probe. There gotta be something fishy going on with the probing
> > > sequence. How reproducible is the problem?
> > 
> > Do you mean in the first probing trial the driver didn't clean up well?
> 
> Possibly but devres should have released all resources after the
> previous probe failure or driver disassociation, so I have no idea how
> there can be resources left on that list.
> 
> > With the same driver I didn't see this problem in 4.11-rc{1,2}.
> 
> devres hasn't changed, so I have no idea what changed that.  Which
> kernels are affected?

It's a not-yet-mainlined part (that's why I sent the report to Icenowy and
Andre Przywara -- they work on the DT bindings and the driver itself).

The exact kernel is based on git@github.com:Icenowy/linux.git
(icenowy/sunxi64-4.11-rc1); I've removed all additional commits that could
possibly be related.  I need at the very least a f2fs fix to boot this
machine (without reformatting).  I did not bother trimming things that are
obviously irrelevant (n_tty, vt, btrfs, sd); lemme retry with 4.11-rc2 that
has just the f2fs fix and "#define DEBUG" in drivers/base/dd.c to be sure.

I've first noticed the warning on pre-4.11 -next; because of very intense
work in these areas Icenowy, Andre and the rest are doing the pine64 parts
are hard to naively rebase -- and thus I haven't run intermediate versions.

> Can you bisect if the problem is easily reproducible?

While it reproduces 100%, the churn in required commits atop mainline would
make bisecting pretty tricky.  Do you have some other ideas over debugging
the hard way?  (I don't know these parts of the kernel myself thus I
reported first.)


In case my exact .config and tree are relevant:
https://angband.pl/tmp/config-kb-ice-4.11-rc1.xz
git@github.com:kilobyte/linux.git kb-ice-4.11-rc1
-- 
⢀⣴⠾⠻⢶⣦⠀ Meow!
⣾⠁⢠⠒⠀⣿⡁
⢿⡄⠘⠷⠚⠋⠀ Collisions shmolisions, let's see them find a collision or second
⠈⠳⣄⠀⠀⠀⠀ preimage for double rot13!

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web