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