WARNING: CPU: 3 PID: 33 at /build/linux-raspi2-LrAkG8/linux-raspi2-4.15.0/drivers/spi/spidev.c:730 spidev_probe+0x13c/0x200

Bug #1858658 reported by Juerg Haefliger
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
linux-raspi2 (Ubuntu)
New
Undecided
Unassigned
Bionic
New
Undecided
Unassigned

Bug Description

After upgrading from 4.15.0-1052-raspi2 to 4.15.0-1053-raspi2:

ubuntu@ubuntu:~$ cat /proc/device-tree/model
Raspberry Pi 3 Model B Rev 1.2

[ 3.129125] ------------[ cut here ]------------
[ 3.222394] random: fast init done
[ 4.894369] /soc/spi@7e204000/spidev@0: buggy DT: spidev listed directly in DT
[ 4.904121] WARNING: CPU: 0 PID: 35 at /build/linux-raspi2-LrAkG8/linux-raspi2-4.15.0/drivers/spi/spidev.c:730 spidev_probe+0x13c/0x200
[ 4.918910] Modules linked in: aes_neon_bs aes_neon_blk crypto_simd cryptd aes_arm64
[ 4.929200] CPU: 0 PID: 35 Comm: kworker/0:1 Tainted: G W 4.15.0-1053-raspi2 #57-Ubuntu
[ 4.941032] Hardware name: Raspberry Pi 3 Model B Rev 1.2 (DT)
[ 4.949434] Workqueue: events deferred_probe_work_func
[ 4.957132] pstate: 40400005 (nZcv daif +PAN -UAO)
[ 4.964468] pc : spidev_probe+0x13c/0x200
[ 4.971010] lr : spidev_probe+0x13c/0x200
[ 4.977517] sp : ffff00000814b7a0
[ 4.983301] x29: ffff00000814b7a0 x28: 0000000000000000
[ 4.991117] x27: 0000000000000000 x26: 0000000000000000
[ 4.998917] x25: ffff256606df7000 x24: 0000000000000005
[ 5.006697] x23: ffff256606cb8a38 x22: 0000000000000000
[ 5.014466] x21: 0000000000000000 x20: ffffc79d73473000
[ 5.022247] x19: ffff256606cb8a18 x18: 0000000000000001
[ 5.030015] x17: 0000000000000001 x16: 0000000000000001
[ 5.037762] x15: ffff256606269000 x14: 0000000000000020
[ 5.045496] x13: 0000000000000000 x12: 00000000ffffffff
[ 5.053210] x11: 0000000000000001 x10: ffff256606c09c40
[ 5.060900] x9 : 00000000ff000000 x8 : ffff256605c14968
[ 5.068561] x7 : ffffc79d79563d60 x6 : 0000000000000104
[ 5.076159] x5 : 0000000000000000 x4 : 0000000000000000
[ 5.083790] x3 : ffffffffffffffff x2 : ffff256606c2a308
[ 5.091391] x1 : f9b69bb55a180d00 x0 : 0000000000000000
[ 5.098999] Call trace:
[ 5.103646] spidev_probe+0x13c/0x200
[ 5.109523] spi_drv_probe+0x80/0xd0
[ 5.115290] driver_probe_device+0x2fc/0x468
[ 5.121757] __device_attach_driver+0xa0/0x138
[ 5.128397] bus_for_each_drv+0x74/0xd8
[ 5.134398] __device_attach+0xe0/0x160
[ 5.140347] device_initial_probe+0x24/0x30
[ 5.146669] bus_probe_device+0x9c/0xa8
[ 5.152636] device_add+0x3fc/0x618
[ 5.158215] spi_add_device+0xfc/0x1a0
[ 5.164082] of_register_spi_device+0x1e4/0x368
[ 5.170747] spi_register_controller+0x1e0/0x738
[ 5.177497] devm_spi_register_controller+0x4c/0xa0
[ 5.184513] bcm2835_spi_probe+0x2a8/0x3d0
[ 5.190674] platform_drv_probe+0x60/0xc0
[ 5.196734] driver_probe_device+0x2fc/0x468
[ 5.203056] __device_attach_driver+0xa0/0x138
[ 5.209563] bus_for_each_drv+0x74/0xd8
[ 5.215459] __device_attach+0xe0/0x160
[ 5.221346] device_initial_probe+0x24/0x30
[ 5.227580] bus_probe_device+0x9c/0xa8
[ 5.233443] deferred_probe_work_func+0x60/0x180
[ 5.240101] process_one_work+0x1d8/0x490
[ 5.246140] worker_thread+0x248/0x478
[ 5.251897] kthread+0x134/0x138
[ 5.257051] ret_from_fork+0x10/0x1c
[ 5.262549] ---[ end trace c44065d7c3da2ac2 ]---
[ 5.269391] usb 1-1: New USB device found, idVendor=0424, idProduct=9514
[ 5.269672] ------------[ cut here ]------------
[ 5.278071] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 5.284598] /soc/spi@7e204000/spidev@1: buggy DT: spidev listed directly in DT
[ 5.294158] hub 1-1:1.0: USB hub found
[ 5.303012] WARNING: CPU: 0 PID: 35 at /build/linux-raspi2-LrAkG8/linux-raspi2-4.15.0/drivers/spi/spidev.c:730 spidev_probe+0x13c/0x200
[ 5.308736] hub 1-1:1.0: 5 ports detected
[ 5.322971] Modules linked in: aes_neon_bs aes_neon_blk crypto_simd cryptd aes_arm64
[ 5.322991] CPU: 0 PID: 35 Comm: kworker/0:1 Tainted: G W 4.15.0-1053-raspi2 #57-Ubuntu
[ 5.322995] Hardware name: Raspberry Pi 3 Model B Rev 1.2 (DT)
[ 5.357822] Workqueue: events deferred_probe_work_func
[ 5.364924] pstate: 40400005 (nZcv daif +PAN -UAO)
[ 5.371672] pc : spidev_probe+0x13c/0x200
[ 5.377622] lr : spidev_probe+0x13c/0x200
[ 5.383568] sp : ffff00000814b7a0
[ 5.388811] x29: ffff00000814b7a0 x28: 0000000000000000
[ 5.396097] x27: 0000000000000000 x26: 0000000000000000
[ 5.403379] x25: ffff256606df7000 x24: 0000000000000006
[ 5.410667] x23: ffff256606cb8a38 x22: 0000000000000000
[ 5.417951] x21: 0000000000000000 x20: ffffc79d73472000
[ 5.425200] x19: ffff256606cb8a18 x18: 0000000000000001
[ 5.432482] x17: 0000000000000001 x16: 0000000000000001
[ 5.439763] x15: ffff256606269000 x14: 0000000000000020
[ 5.447042] x13: 0000000000000000 x12: 00000000ffffffff
[ 5.454329] x11: 0000000000000001 x10: ffff256606c09c40
[ 5.461607] x9 : 00000000ff000000 x8 : ffff256605c14968
[ 5.468894] x7 : ffffc79d795636a0 x6 : 0000000000000015
[ 5.476143] x5 : 0000000000000000 x4 : 0000000000000000
[ 5.483418] x3 : ffffffffffffffff x2 : ffff256606c2a308
[ 5.490700] x1 : f9b69bb55a180d00 x0 : 0000000000000000
[ 5.497983] Call trace:
[ 5.502330] spidev_probe+0x13c/0x200
[ 5.507898] spi_drv_probe+0x80/0xd0
[ 5.513399] driver_probe_device+0x2fc/0x468
[ 5.519616] __device_attach_driver+0xa0/0x138
[ 5.526004] bus_for_each_drv+0x74/0xd8
[ 5.531772] __device_attach+0xe0/0x160
[ 5.537540] device_initial_probe+0x24/0x30
[ 5.543669] bus_probe_device+0x9c/0xa8
[ 5.549440] device_add+0x3fc/0x618
[ 5.554855] spi_add_device+0xfc/0x1a0
[ 5.560542] of_register_spi_device+0x1e4/0x368
[ 5.567027] spi_register_controller+0x1e0/0x738
[ 5.573589] devm_spi_register_controller+0x4c/0xa0
[ 5.580421] bcm2835_spi_probe+0x2a8/0x3d0
[ 5.586460] platform_drv_probe+0x60/0xc0
[ 5.592399] driver_probe_device+0x2fc/0x468
[ 5.598613] __device_attach_driver+0xa0/0x138
[ 5.605005] bus_for_each_drv+0x74/0xd8
[ 5.610777] __device_attach+0xe0/0x160
[ 5.616553] device_initial_probe+0x24/0x30
[ 5.622681] bus_probe_device+0x9c/0xa8
[ 5.628450] deferred_probe_work_func+0x60/0x180
[ 5.635027] process_one_work+0x1d8/0x490
[ 5.640949] worker_thread+0x248/0x478
[ 5.646627] kthread+0x134/0x138
[ 5.651777] ret_from_fork+0x10/0x1c
[ 5.657256] ---[ end trace c44065d7c3da2ac3 ]---

Revision history for this message
Juerg Haefliger (juergh) wrote :
Revision history for this message
Juerg Haefliger (juergh) wrote :

Probably due to:

commit c5d736105ab2d84096e35ecc71a265345d66a25c
Author: Trent Piepho <email address hidden>
Date: Thu Sep 20 19:18:34 2018 +0000

    spi: spidev: Fix OF tree warning logic

    BugLink: https://bugs.launchpad.net/bugs/1854216

    [ Upstream commit 605b3bec73cbd74b4ac937b580cd0b47d1300484 ]

    spidev will make a big fuss if a device tree node binds a device by
    using "spidev" as the node's compatible property.

    However, the logic for this isn't looking for "spidev" in the
    compatible, but rather checking that the device is NOT compatible with
    spidev's list of devices.

    This causes a false positive if a device not named "rohm,dh2228fv", etc.
    binds to spidev, even if a means other than putting "spidev" in the
    device tree was used. E.g., the sysfs driver_override attribute.

    Signed-off-by: Trent Piepho <email address hidden>
    Reviewed-by: Jan Kundrát <email address hidden>
    Tested-by: Jan Kundrát <email address hidden>
    Reviewed-by: Geert Uytterhoeven <email address hidden>
    Signed-off-by: Mark Brown <email address hidden>
    Signed-off-by: Sasha Levin <email address hidden>
    Signed-off-by: Kamal Mostafa <email address hidden>
    Signed-off-by: Khalid Elmously <email address hidden>

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Bug attachments

Remote bug watches

Bug watches keep track of this bug in other bug trackers.