[lkml]   [2015]   [Apr]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Patch in this message
SubjectRe: [LKP] [mtd] 6b44d910ae7: WARNING: CPU: 0 PID: 0 at kernel/locking/lockdep.c:3547 check_flags+0xae/0x17b()
On Thu, Apr 16, 2015 at 7:27 AM, Huang Ying <> wrote:
> FYI, we noticed the below changes on
> git:// master
> commit 6b44d910ae7de5316fcf1fc828ff4a8d48cac5e2 ("mtd: core: set some defaults when dev.parent is set")
> <panic>

I would then expect that this is actually caused by
29b4dacc55b0cb079e5b4be2fbc494e138a7d110 (mtd: nand: docg4: show
parent device in sysfs), which effectively replaces mtd->owner with
the automated value. I just noticed that
module_platform_driver_probe() doesn't set the owner like
module_platform_driver() does. I think I expected this with the spi
based drivers, but not the platform devices.

I think we'd best fix module_platform_driver_probe, but I'm happy to
send in a patch that restores "mtd->owner = THIS_MODULE" with these
drivers, if that's preferred.

I don't have a device around that actually uses
module_platform_driver_probe, so to confirm that this is actually the
problem, could you try the appended patch (hoping that the gmail
interface doesn't mess with the whitespace)?

Thanks for catching,

drivers/mtd/nand/docg4.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/mtd/nand/docg4.c b/drivers/mtd/nand/docg4.c
index 510c12d..0d44636 100644
--- a/drivers/mtd/nand/docg4.c
+++ b/drivers/mtd/nand/docg4.c
@@ -1380,6 +1380,7 @@ static int __exit cleanup_docg4(struct
platform_device *pdev)
static struct platform_driver docg4_driver = {
.driver = {
.name = "docg4",
+ .owner = THIS_MODULE,
.suspend = docg4_suspend,
.resume = docg4_resume,

 \ /
  Last update: 2015-04-16 10:01    [W:0.112 / U:0.192 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site