Sebastian Huber created a merge request: 
https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/1574

Project:Branches: sebhub/rtems:up/dl06-lcong48 to rtems/rtos/rtems:main
Author: Sebastian Huber

## Summary

Closes #5802.

**Problem:** The module of `dl06` calls `lcong48()`. With a Newlib built with 
`--enable-newlib-reent-thread-local`, the object file of `lcong48()` defines 
the thread-local rand48 state. A loaded module cannot provide thread-local 
objects, because the base image link fixes the TLS size of each thread. The 
load stops with "global symbol not found: _tls_rand48_add".

**Fix:**

- Link `lcong48()` into the base image with `-Wl,--undefined=lcong48`, so that 
the module resolves it there.
- Keep the expected failure of `dl06`. Its reason now names the remaining 
defects, #5801 and rtems/tools/rtems-tools#43 to rtems/tools/rtems-tools#45.

**Review hints:**

- The flag also holds under `--gc-sections` and needs no change of the test 
code.

## Test

Built with an `rtems-ld` which carries fixes for rtems/tools/rtems-tools#43 to 
rtems/tools/rtems-tools#45, on `aarch64/a53_lp64_qemu`, 
`arm/xilinx_zynq_a9_qemu`, `i386/pc586-sse`, `microblaze/petalogix_s3adsp1800`, 
`mips/jmr3904`, `mips/malta`, `powerpc/psim`, `riscv/rv64imafdc`, 
`sparc/gr712rc`, `sparc/gr740` and `sparc/gr765`:

| Build | `dl06` |
| --- | --- |
| this MR | the load fails at the relocation types of the RAP file, see #5801 |
| this MR and a loader fix for #5801 | `END OF TEST` on all 11 BSPs |

## AI Details
<!-- Make sure you have read our statement at 
https://www.rtems.org/generative-ai/ -->

### Prompt used

None as a single prompt.  The work was done in an interactive Claude Code 
session on the RTEMS tree.  Each change was directed and reviewed.

### AI model used

Claude Opus 5.5 (claude-opus-5-5), through Claude Code.

### How AI was used for the contribution

- ( ) Formatting
- ( ) Test creation.
- (x) Code comments.
- ( ) The entire contribution was generated using AI
- ( ) AI code completion such as Copilot in VSCode.

The implementation was produced in that session under my direction, and the 
commit message was drafted there.

### Access

I have not used a product which claims copyright in its output, and I have 
legitimate access to the one I used.

-- 
View it on GitLab: 
https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/1574
You're receiving this email because of your account on gitlab.rtems.org. 
Unsubscribe from this thread: 
https://gitlab.rtems.org/-/namespace/49/sent_notifications/6-d3iab39buhuivaqb00j8fk3p0-1d/unsubscribe
 | Manage all notifications: https://gitlab.rtems.org/-/profile/notifications | 
Help: https://gitlab.rtems.org/help


_______________________________________________
bugs mailing list
[email protected]
http://lists.rtems.org/mailman/listinfo/bugs

Reply via email to