nuttx icon indicating copy to clipboard operation
nuttx copied to clipboard

[BUG] STM32H7 tickless mode stops filesystem from initializing

Open bskdany opened this issue 1 month ago • 6 comments

Description / Steps to reproduce the issue

The filesystem fails to initialize when SCHED_TICKLESS is enabled. Would love some direction to debug such issue.

Logs:

nx_mount: found procfs
stm32_sdio_initialize: Initializing SDIO slot 0
stm32_sdio_initialize: Bind SDIO to the MMC/SD driver, minor=0
mmcsd_slotinitialize: minor: 0
mmcsd_hwinitialize: DMA supported: 1
mmcsd_hwinitialize: Attached MMC/SD interrupts
mmcsd_slotinitialize: MMC/SD slot is empty
mmcsd_slotinitialize: MMC: /dev/mmcsd0 0KB 1-bit backwards compatibility mode
stm32_sdio_initialize: Successfully bound SDIO to the MMC/SD driver
mmcsd_mediachange: arg: 0x2400bec0
mmcsd_probe: type: 0 probed: 0
mmcsd_removed: type: 0 present: 1
mmcsd_widebus: No card inserted.
mmcsd_probe: Card present.  Probing....
mmcsd_cardidentify: Identifying card...
mmcsd_cardidentify: SD V2.x card
mmcsd_cardidentify: R3: 00ff8000
mmcsd_cardidentify: R3: 00ff8000
mmcsd_cardidentify: R3: 00ff8000
mmcsd_cardidentify: R3: 00ff8000
mmcsd_cardidentify: R3: 00ff8000
mmcsd_cardidentify: R3: 00ff8000
mmcsd_cardidentify: R3: 00ff8000
mmcsd_cardidentify: R3: 00ff8000
mmcsd_cardidentify: R3: 00ff8000
mmcsd_cardidentify: R3: 00ff8000
mmcsd_cardidentify: R3: 00ff8000
mmcsd_cardidentify: ERROR: Failed to identify card
mmcsd_probe: ERROR: Failed to initialize card: -5
find_blockdriver: pathname="/dev/mmcsd0"
find_blockdriver: ERROR: Failed to find /dev/mmcsd0
open_blockdriver: ERROR: Failed to file /dev/mmcsd0 block driver
stm32_bringup: Partition 0 did not register
find_blockdriver: pathname="/dev/mmcsd0"
find_blockdriver: ERROR: Failed to find /dev/mmcsd0
open_blockdriver: ERROR: Failed to file /dev/mmcsd0 block driver
stm32_bringup: Partition 1 did not register
find_blockdriver: pathname="/dev/mmcsd0p0"
find_blockdriver: ERROR: Failed to find /dev/mmcsd0p0
nx_mount: ERROR: Failed to find block driver /dev/mmcsd0p0
stm32_bringup: ERROR: Could not mount fat partition -15:

NuttShell (NSH)
nsh>

On which OS does this issue occur?

[OS: Mac]

What is the version of your OS?

MacOs latest

NuttX Version

release/12.12

Issue Architecture

[Arch: arm]

Issue Area

[Area: File System]

Host information

No response

Verification

  • [x] I have verified before submitting the report.

bskdany avatar Nov 21 '25 18:11 bskdany

For fun, see if it works before #17204

linguini1 avatar Nov 21 '25 19:11 linguini1

I'm on release/12.12 which is before that commit. Master doesn't work either. Time to bisect

bskdany avatar Nov 21 '25 19:11 bskdany

@bskdany to speed up your bisect process you can just use some old release, like 12.0 and then if it fails you move to 12.6 (do a binary search with releases first before using git bisect).

acassis avatar Nov 22 '25 14:11 acassis

@bskdany to speed up your bisect process you can just use some old release, like 12.0 and then if it fails you move to 12.6 (do a binary search with releases first before using git bisect).

Doing git bisect on NuttX is hard because you need to do it with nuttx-apps at same time, so doing with official releases first is easy

acassis avatar Nov 22 '25 14:11 acassis

Yes doing it with the apps simultaneously is a huge PITA. I think it might actually be worthwhile to come up with a tool for helping with this (i.e. perform the bisect, then run the tool and it can tell based on the data of the current nuttx commit which commit to check out on nuttx-apps and does it for you). You also usually have to make distclean in between to not confuse the build system which sucks.

linguini1 avatar Nov 22 '25 15:11 linguini1

Yes, I think some script to help in this process will be useful.

acassis avatar Nov 23 '25 10:11 acassis