[rtems commit] bsps: Fix rtems_interrupt_server_delete()

Sebastian Huber sebh at rtems.org
Mon Oct 19 15:45:00 UTC 2020


Module:    rtems
Branch:    master
Commit:    bb4e534014c589fd748ac8a9c1b2488b5bfa650c
Changeset: http://git.rtems.org/rtems/commit/?id=bb4e534014c589fd748ac8a9c1b2488b5bfa650c

Author:    Sebastian Huber <sebastian.huber at embedded-brains.de>
Date:      Mon Oct 19 17:39:10 2020 +0200

bsps: Fix rtems_interrupt_server_delete()

The ISR lock must be destroyed to prevent memory corruption if RTEMS_PROFILING
and RTEMS_SMP is enabled.

Close #4158.

---

 bsps/shared/irq/irq-server.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/bsps/shared/irq/irq-server.c b/bsps/shared/irq/irq-server.c
index fe96b59..19d03dc 100644
--- a/bsps/shared/irq/irq-server.c
+++ b/bsps/shared/irq/irq-server.c
@@ -682,6 +682,8 @@ static void bsp_interrupt_server_destroy_helper(void *arg)
   rtems_chain_extract_unprotected(&s->node);
   bsp_interrupt_unlock();
 
+  rtems_interrupt_lock_destroy(&s->lock);
+
   if (s->destroy != NULL) {
     (*s->destroy)(s);
   }



More information about the vc mailing list