summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--c/src/exec/libnetworking/rtems/rtems_glue.c3
-rw-r--r--c/src/lib/libnetworking/rtems/rtems_glue.c3
-rw-r--r--c/src/libnetworking/rtems/rtems_glue.c3
-rw-r--r--cpukit/libnetworking/rtems/rtems_glue.c3
4 files changed, 8 insertions, 4 deletions
diff --git a/c/src/exec/libnetworking/rtems/rtems_glue.c b/c/src/exec/libnetworking/rtems/rtems_glue.c
index 8ef1626906..e57401a6b3 100644
--- a/c/src/exec/libnetworking/rtems/rtems_glue.c
+++ b/c/src/exec/libnetworking/rtems/rtems_glue.c
@@ -157,7 +157,8 @@ bsd_init ()
* Set up mbuf data structures
*/
- p = malloc(nmbuf * MSIZE);
+ p = malloc(nmbuf * MSIZE + MSIZE - 1);
+ p = (char *)(((unsigned long)p + MSIZE - 1) & ~(MSIZE - 1));
if (p == NULL)
rtems_panic ("Can't get network memory.");
for (i = 0; i < nmbuf; i++) {
diff --git a/c/src/lib/libnetworking/rtems/rtems_glue.c b/c/src/lib/libnetworking/rtems/rtems_glue.c
index 8ef1626906..e57401a6b3 100644
--- a/c/src/lib/libnetworking/rtems/rtems_glue.c
+++ b/c/src/lib/libnetworking/rtems/rtems_glue.c
@@ -157,7 +157,8 @@ bsd_init ()
* Set up mbuf data structures
*/
- p = malloc(nmbuf * MSIZE);
+ p = malloc(nmbuf * MSIZE + MSIZE - 1);
+ p = (char *)(((unsigned long)p + MSIZE - 1) & ~(MSIZE - 1));
if (p == NULL)
rtems_panic ("Can't get network memory.");
for (i = 0; i < nmbuf; i++) {
diff --git a/c/src/libnetworking/rtems/rtems_glue.c b/c/src/libnetworking/rtems/rtems_glue.c
index 8ef1626906..e57401a6b3 100644
--- a/c/src/libnetworking/rtems/rtems_glue.c
+++ b/c/src/libnetworking/rtems/rtems_glue.c
@@ -157,7 +157,8 @@ bsd_init ()
* Set up mbuf data structures
*/
- p = malloc(nmbuf * MSIZE);
+ p = malloc(nmbuf * MSIZE + MSIZE - 1);
+ p = (char *)(((unsigned long)p + MSIZE - 1) & ~(MSIZE - 1));
if (p == NULL)
rtems_panic ("Can't get network memory.");
for (i = 0; i < nmbuf; i++) {
diff --git a/cpukit/libnetworking/rtems/rtems_glue.c b/cpukit/libnetworking/rtems/rtems_glue.c
index 8ef1626906..e57401a6b3 100644
--- a/cpukit/libnetworking/rtems/rtems_glue.c
+++ b/cpukit/libnetworking/rtems/rtems_glue.c
@@ -157,7 +157,8 @@ bsd_init ()
* Set up mbuf data structures
*/
- p = malloc(nmbuf * MSIZE);
+ p = malloc(nmbuf * MSIZE + MSIZE - 1);
+ p = (char *)(((unsigned long)p + MSIZE - 1) & ~(MSIZE - 1));
if (p == NULL)
rtems_panic ("Can't get network memory.");
for (i = 0; i < nmbuf; i++) {