summaryrefslogtreecommitdiffstats
path: root/cpukit
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2002-08-20 15:53:52 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2002-08-20 15:53:52 +0000
commit845f170ab55d40a8477f3f7beb48debaeec533a6 (patch)
tree7eaf443e3be74fa1294e796d4abebc9bcff47235 /cpukit
parent2002-08-19 Ralf Corsepius <corsepiu@faw.uni-ulm.de> (diff)
downloadrtems-845f170ab55d40a8477f3f7beb48debaeec533a6.tar.bz2
2002-08-20 Eric Norum <eric.norum@usask.ca>
* rtems/rtems_glue.c: Per PR270, the BSD network code expects that the value of the number of seconds since boot is non-zero. The RTEMS network initialization code assures this by waiting for a second. A more efficient technique is to simply wait until the number of seconds since boot is non-zero.
Diffstat (limited to 'cpukit')
-rw-r--r--cpukit/libnetworking/ChangeLog8
-rw-r--r--cpukit/libnetworking/rtems/rtems_glue.c3
2 files changed, 10 insertions, 1 deletions
diff --git a/cpukit/libnetworking/ChangeLog b/cpukit/libnetworking/ChangeLog
index 1ff9b97737..fb489465af 100644
--- a/cpukit/libnetworking/ChangeLog
+++ b/cpukit/libnetworking/ChangeLog
@@ -1,3 +1,11 @@
+2002-08-20 Eric Norum <eric.norum@usask.ca>
+
+ * rtems/rtems_glue.c: Per PR270, the BSD network code expects that
+ the value of the number of seconds since boot is non-zero. The
+ RTEMS network initialization code assures this by waiting for a
+ second. A more efficient technique is to simply wait until the
+ number of seconds since boot is non-zero.
+
2002-08-09 Joel Sherrill <joel@OARcorp.com>
* libc/getservent.c: Per PR265, add #include <netinet/in.h> for
diff --git a/cpukit/libnetworking/rtems/rtems_glue.c b/cpukit/libnetworking/rtems/rtems_glue.c
index 52c3361366..bc9d182236 100644
--- a/cpukit/libnetworking/rtems/rtems_glue.c
+++ b/cpukit/libnetworking/rtems/rtems_glue.c
@@ -114,7 +114,8 @@ rtems_bsdnet_malloc (unsigned long size, int type, int flags)
printf ("rtems_bsdnet_malloc still waiting.\n");
try = 0;
}
- rtems_task_wake_after (rtems_bsdnet_ticks_per_second);
+ while (rtems_bsdnet_seconds_since_boot() == 0)
+ rtems_task_wake_after(1);
rtems_bsdnet_semaphore_obtain ();
}
}