summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Hellstrom <daniel@gaisler.com>2017-02-24 12:49:07 +0100
committerDaniel Hellstrom <daniel@gaisler.com>2020-05-14 21:37:15 +0200
commita5218fc1b71a100d37096f9cbdaabcb82106be19 (patch)
tree48c1467fd3fa4410823d288832ab36b77e6c0dfa
parentfa98c0c5e155790e05b6e9d276622084e4a88c82 (diff)
GRSPW_PKT: fix descriptor table memory leak on grspw_close()
-rw-r--r--c/src/lib/libbsp/sparc/shared/spw/grspw_pkt.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/sparc/shared/spw/grspw_pkt.c b/c/src/lib/libbsp/sparc/shared/spw/grspw_pkt.c
index ce2983e85c..3c3a81ce4e 100644
--- a/c/src/lib/libbsp/sparc/shared/spw/grspw_pkt.c
+++ b/c/src/lib/libbsp/sparc/shared/spw/grspw_pkt.c
@@ -648,6 +648,12 @@ int grspw_close(void *d)
}
grspw_hw_stop(priv);
+ /* Free descriptor table memory if allocated using malloc() */
+ if (priv->bd_mem_alloced) {
+ free((void *)priv->bd_mem_alloced);
+ priv->bd_mem_alloced = 0;
+ }
+
/* Mark not open */
priv->open = 0;
rtems_semaphore_release(grspw_sem);