WARNING: remove_proc_entry: removing non-empty directory 'irq/22', leaking at least 'fsl_spi' [bisected to 500a32abaf81 ("spi: fsl: Call irq_dispose_mapping in err path")]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Liu,

While booting latest kernel on by 83xx board, I get the following WARNING.
Reverting your commit 500a32abaf81 ("spi: fsl: Call irq_dispose_mapping in err path") removes the warning.

I think that's because irq_dispose_mapping() is called too early, before devm frees the irq registered with devm_request_irq() in fsl_spi_probe()

[    1.510229] ------------[ cut here ]------------
[ 1.514845] remove_proc_entry: removing non-empty directory 'irq/22', leaking at least 'fsl_spi' [ 1.523852] WARNING: CPU: 0 PID: 1 at fs/proc/generic.c:682 remove_proc_entry+0x198/0x1c0 [ 1.532021] CPU: 0 PID: 1 Comm: swapper Not tainted 5.4.0-02248-g93532430a4ff-dirty #2559
[    1.540860] NIP:  c0197694 LR: c0197694 CTR: c0050d80
[ 1.545898] REGS: df4a5af0 TRAP: 0700 Not tainted (5.4.0-s3k-dev-02248-g93532430a4ff-dirty)
[    1.554472] MSR:  00029032 <EE,ME,IR,DR,RI>  CR: 22028222  XER: 00000000
[    1.561178]
[ 1.561178] GPR00: c0197694 df4a5ba8 df4a0000 00000054 00000000 00000000 00004a38 00000010 [ 1.561178] GPR08: c07c5a30 00000800 00000000 00001032 22000208 00000000 c0004b14 00000000 [ 1.561178] GPR16: 00000000 00000000 00000000 00000000 00000000 00000000 c0830000 c07fc078 [ 1.561178] GPR24: c08e8ca0 df663d10 fffffdfb c07c9db8 00000001 df621ae3 df621a80 df43f8e3
[    1.595982] NIP [c0197694] remove_proc_entry+0x198/0x1c0
[    1.601283] LR [c0197694] remove_proc_entry+0x198/0x1c0
[    1.606484] Call Trace:
[ 1.608935] [df4a5ba8] [c0197694] remove_proc_entry+0x198/0x1c0 (unreliable)
[    1.615977] [df4a5bd8] [c0067acc] unregister_irq_proc+0x5c/0x70
[    1.621896] [df4a5bf8] [c005fbc4] free_desc+0x3c/0x80
[    1.626944] [df4a5c18] [c005fe2c] irq_free_descs+0x70/0xa8
[    1.632437] [df4a5c38] [c033d3fc] of_fsl_spi_probe+0xdc/0x3d0
[    1.638184] [df4a5c88] [c02f0f64] platform_drv_probe+0x44/0xa4
[    1.644009] [df4a5c98] [c02eee44] really_probe+0x1ac/0x418
[    1.649489] [df4a5cc8] [c02ed3e8] bus_for_each_drv+0x64/0xb0
[    1.655141] [df4a5cf8] [c02ef950] __device_attach+0xd4/0x128
[    1.660793] [df4a5d28] [c02ed61c] bus_probe_device+0xa0/0xbc
[    1.666443] [df4a5d48] [c02ebbe8] device_add+0x544/0x74c
[ 1.671756] [df4a5d88] [c0382b7c] of_platform_device_create_pdata+0xa4/0x100
[    1.678791] [df4a5da8] [c0382cf8] of_platform_bus_create+0x120/0x20c
[    1.685135] [df4a5df8] [c0382d54] of_platform_bus_create+0x17c/0x20c
[    1.691479] [df4a5e48] [c0382e8c] of_platform_bus_probe+0x9c/0xf0
[ 1.697568] [df4a5e68] [c0751404] __machine_initcall_cmpcpro_cmpcpro_declare_of_platform_devices+0x74/0x1a4
[    1.707290] [df4a5e98] [c072a4cc] do_one_initcall+0x8c/0x1d4
[    1.712944] [df4a5ef8] [c072a768] kernel_init_freeable+0x154/0x204
[    1.719118] [df4a5f28] [c0004b2c] kernel_init+0x18/0x110
[    1.724432] [df4a5f38] [c00122ac] ret_from_kernel_thread+0x14/0x1c
[    1.730590] Instruction dump:
[ 1.733553] 2c030000 4182004c 3863ffb0 3c80c05f 80e3005c 388436a0 3c60c06d 7fa6eb78 [ 1.741295] 7fe5fb78 38840280 3863417c 4be8c611 <0fe00000> 4bffff6c 3c60c071 7fe4fb78
[    1.749222] ---[ end trace a98e3613df89cf38 ]---

Christophe



[Index of Archives]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux