Issue created by Sebastian Huber: https://gitlab.rtems.org/rtems/rtos/rtems/-/work_items/5767
`BSP_com_inch()` of `bsps/mips/malta/console/printk_support.c` polls the device in a loop until it reads a character. `BSP_poll_char` references that function. The specification of `BSP_poll_char` states the opposite. A referenced function dequeues the least recently received character of the device. Where the device holds none, the function returns minus one at once. The generated documentation of `cpukit/include/rtems/bspIo.h` carries that sentence. `ts-validation-io-kernel` calls `getchark()` while the device holds no character. The loop never ends, so the suite makes no progress on `mips/malta`. It prints nothing and the runner ends it on a timeout. A backtrace of the hung system stands in `ns16550_inch_polled()` below `BSP_com_inch()`. `mips/jmr3904` sets `BSP_poll_char` to NULL, which the specification allows, so the suite passes there. Return the result of the polled read. `ns16550_inch_polled()` already gives minus one for an empty device. Found in the repair of the Malta BSP for the test suite. This description was created with Claude Code assistance. -- View it on GitLab: https://gitlab.rtems.org/rtems/rtos/rtems/-/work_items/5767 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/5-dvil6il7jfe77o2ok640jjmef-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
