LibBSD | beatnik/mve: interrupt handler is installed before the nexus softc is initialized (#105)
Sang Woo Kim (@physwkim)
gitlab at rtems.org
Fri Jul 31 07:30:57 UTC 2026
Issue created by Sang Woo Kim: https://gitlab.rtems.org/rtems/pkg/rtems-libbsd/-/work_items/105
## Summary
Affected files: `rtemsbsd/sys/dev/mve/if_mve.c`, `if_mve_nexus.c`
Affected BSP: beatnik (MVME5500/MVME6100)
`BSP_mve_create()` installs `mveth_isr` on a shared vector, but `mve_attach()` sets `sc->mp` and `sc->daemonTid` only after it returns. An interrupt in that window — another device on the line, or one left pending by the MOTLoad-initialized hardware — reaches `mve_isr()` with `sc->mp == NULL` and crashes. Guarding the NULL instead would return without acknowledging the source: an interrupt storm.
Distinct from #94 (the argument the handler is installed with); that window remains once #94 is fixed.
Fix: install the handler from `mve_attach()` once the softc is complete. MR follows.
--
View it on GitLab: https://gitlab.rtems.org/rtems/pkg/rtems-libbsd/-/work_items/105
You're receiving this email because of your account on gitlab.rtems.org. Unsubscribe from this thread: https://gitlab.rtems.org/-/sent_notifications/4-4kfs1ufp7ryljiw3hoojtsk9o-k/unsubscribe | Manage all notifications: https://gitlab.rtems.org/-/profile/notifications | Help: https://gitlab.rtems.org/help
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/bugs/attachments/20260731/af391dac/attachment-0001.htm>
More information about the bugs
mailing list