RCS file: /usr1/CVS/rtems/cpukit/libnetworking/Makefile.am,v
retrieving revision 1.28
diff -u -r1.28 Makefile.am
|
|
|
159 | 159 | rtems_C_FILES = rtems/sghostname.c rtems/issetugid.c rtems/rtems_glue.c rtems/rtems_syscall.c \ |
160 | 160 | rtems/rtems_bootp.c rtems/rtems_showmbuf.c rtems/rtems_showroute.c rtems/rtems_showifstat.c \ |
161 | 161 | rtems/rtems_showipstat.c rtems/rtems_showicmpstat.c rtems/rtems_showtcpstat.c \ |
162 | | rtems/rtems_showudpstat.c rtems/rtems_select.c rtems/mkrootfs.c |
| 162 | rtems/rtems_showudpstat.c rtems/rtems_select.c rtems/mkrootfs.c \ |
| 163 | rtems_bsdnet_malloc_starvation.c |
163 | 164 | OBJS += $(rtems_C_FILES:rtems/%.c=$(ARCH)/%.$(OBJEXT)) |
164 | 165 | |
165 | 166 | $(ARCH)/%.$(OBJEXT): rtems/%.c |
RCS file: /usr1/CVS/rtems/cpukit/libnetworking/rtems/rtems_bsdnet.h,v
retrieving revision 1.12
diff -u -r1.12 rtems_bsdnet.h
|
|
|
182 | 182 | |
183 | 183 | int rtems_bsdnet_synchronize_ntp (int interval, rtems_task_priority priority); |
184 | 184 | |
| 185 | /* |
| 186 | * Callback to report BSD malloc starvation. |
| 187 | * The default implementation just prints a message but an application |
| 188 | * can provide its own version. |
| 189 | */ |
| 190 | void rtems_bsdnet_malloc_starvation(void); |
| 191 | |
185 | 192 | #endif /* _RTEMS_BSDNET_ */ |
RCS file: /usr1/CVS/rtems/cpukit/libnetworking/rtems/rtems_glue.c,v
retrieving revision 1.29
diff -u -r1.29 rtems_glue.c
|
|
|
117 | 117 | return p; |
118 | 118 | rtems_bsdnet_semaphore_release (); |
119 | 119 | if (++try >= 30) { |
120 | | printf ("rtems_bsdnet_malloc still waiting.\n"); |
| 120 | rtems_bsdnet_malloc_starvation(); |
121 | 121 | try = 0; |
122 | 122 | } |
123 | | while (rtems_bsdnet_seconds_since_boot() == 0) |
124 | | rtems_task_wake_after(1); |
| 123 | rtems_task_wake_after (rtems_bsdnet_ticks_per_second); |
125 | 124 | rtems_bsdnet_semaphore_obtain (); |
126 | 125 | } |
127 | 126 | } |
… |
… |
|
272 | 271 | /* |
273 | 272 | * Ensure that `seconds' is greater than 0 |
274 | 273 | */ |
275 | | rtems_task_wake_after (rtems_bsdnet_ticks_per_second); |
| 274 | while (rtems_bsdnet_seconds_since_boot() == 0) |
| 275 | rtems_task_wake_after(1); |
276 | 276 | |
277 | 277 | /* |
278 | 278 | * Set up BSD-style sockets |