File system deadlock troubleshooting
Mathew Benson
mbenson at windhoverlabs.com
Tue Oct 8 01:53:52 UTC 2019
I'm using RTEMS 5 on a LEON3. I'm troubleshooting a failure condition that
occurs when stress test reading and writing to and from RAM disk. RAM disk
to RAM disk. When the condition is tripped, it appears that I have 4 tasks
that are pending on conditions that just never happens. The task command
shows:
ID NAME SHED PRI STATE MODES EVENTS WAITINFO
------------------------------------------------------------------------------
0a01000c TSKA UPD 135 MTX P:T:nA NONE RFS
0a01001f TSKB UPD 135 CV P:T:nA NONE bdbuf access
0a010020 TSKC UPD 150 MTX P:T:nA NONE RFS
0a010032 TSKD UPD 245 MTX P:T:nA NONE RFS
None of my tasks appear to be failed. Nobody is pending on anything
noticeable except the 4 above. The conditional wait is a single shared
resource so any attempt to access the file system after this happens
results in yet another forever pended task.
Digging into source code, it appears that the kernel is waiting for a
specific response from a block device, but just didn't get what its
expecting. The next thing is to determine which block device the kernel is
pending on, what the expected response is, and what the block device
actually did. Can anybody shed some light on this or recommend some
debugging steps? I'm trying to exhaust all I can do before I start
manually decoding machine code.
--
*Mathew Benson*
CEO | Chief Engineer
Windhover Labs, LLC
832-640-4018
www.windhoverlabs.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/users/attachments/20191007/9f11eafa/attachment.html>
More information about the users
mailing list