RTEMS 6.1 assertion fail in _Chain_Append_unprotected in ATA driver
Jens Gollasch
jens.gollasch at lss-lighting.de
Tue May 20 11:11:41 UTC 2025
Hi all,
i have a project (i386/pc686) running for some years fine in RTEMS 5.1,
now changed to 6.1.
Without any changes in my project I get now an assertion fail in the ATA
driver.
This is the call in my init task:
...
sc = rtems_bdbuf_init();
assert(sc == RTEMS_SUCCESSFUL);
...
if ((sc = rtems_bdpart_register_from_disk(CF_DISK)) ==
RTEMS_SUCCESSFUL)
...
I traced the problem down thru
rtems_bdpart_read( disk_name, &format, pt, &count);
rtems_bdbuf_read( dd, index, block);
rtems_bdbuf_execute_transfer_request (dd, req, true);
to the ata_ioctl
ata_add_to_controller_queue(ctrl_minor, areq);
and end up in
ata.c, ata_add_to_controller_queue(), line 540, in an call to
rtems_chain_append(&ata_ide_ctrls[ctrl_minor].reqs, &areq->link);
chainprotected.c, 97: _Chain_Append_unprotected( chain, node );
and in
chainimpl.h, 688: _Assert( _Chain_Is_node_off_chain( the_node ) );
give an assertion fail.
--------
assertion "_Chain_Is_node_off_chain( the_node )" failed: file
"../../../cpukit/include/rtems/score/chainimpl.h", line 69
1, function: _Chain_Append_unprotected
*** FATAL ***
fatal source: 7 (RTEMS_FATAL_SOURCE_ASSERT)
fatal code: 7049152 (0x006b8fc0)
RTEMS version: 6.1.0.not-released
RTEMS tools: 13.3.0 20240521 (RTEMS 6, RSB no-repo, Newlib 1b3dcfd)
executing thread ID: 0x0a010004
executing thread name: UI1
FATAL ERROR - Executive shutdown! Any key to reboot...
--------
I'm not an insider in this chain implementation.
It seems that the chain for ata_ide_ctrls[] is not correct?
The disk_driver data seems all to be good, because it is the same
physical device and with RTEMS 5.1 the ATA/IDE device works very well.
Are there any new changes what I have to do in RTEMS 6.1 before I call
rtems_bdpart_register_from_disk?
--
Mit freundlichen Grüßen
Jens Gollasch
Licht-, Steuer- und Schaltanlagenbau GmbH
NL Dresden
Warnemünder Straße 1, 01109 Dresden
Tel.: 0351/79565691
mail: jens.gollasch at lss-lighting.de
www.lss-lighting.de
-------------------------------------------------------------------
LSS Licht-, Steuer- und Schaltanlagenbau GmbH
Gesellschaft mit beschränkter Haftung
Sitz der Gesellschaft: Am Eichenberg 1, 04600 Altenburg
Registergericht: AmtsgerichtJena, HRB 206496
Geschäftsführer: Markus Kaminski
Steuer-Nummer: 161/113/04371; Finanzamt Altenburg
USt-ID: DE 150 516 887
-------------------------------------------------------------------
More information about the users
mailing list