summaryrefslogtreecommitdiffstats
path: root/freebsd
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2018-07-26 12:03:45 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2018-07-26 12:03:45 +0200
commit6fb003f5880405d664f532ce9313f0bd666ca675 (patch)
tree69f4042fce391bf1c705f5b2535ca0e309306a53 /freebsd
parentAvoid malloc() in getsockaddr() (diff)
downloadrtems-libbsd-6fb003f5880405d664f532ce9313f0bd666ca675.tar.bz2
Fix sporadic test failures via uma_timeout()
Diffstat (limited to 'freebsd')
-rw-r--r--freebsd/sys/vm/uma.h3
-rw-r--r--freebsd/sys/vm/uma_core.c12
2 files changed, 15 insertions, 0 deletions
diff --git a/freebsd/sys/vm/uma.h b/freebsd/sys/vm/uma.h
index 5e0bdd7c..c968e67e 100644
--- a/freebsd/sys/vm/uma.h
+++ b/freebsd/sys/vm/uma.h
@@ -695,4 +695,7 @@ struct uma_percpu_stat {
void uma_reclaim_wakeup(void);
void uma_reclaim_worker(void *);
+#ifdef __rtems__
+void rtems_uma_drain_timeout(void);
+#endif /* __rtems__ */
#endif /* _VM_UMA_H_ */
diff --git a/freebsd/sys/vm/uma_core.c b/freebsd/sys/vm/uma_core.c
index fbae47cb..02f743d2 100644
--- a/freebsd/sys/vm/uma_core.c
+++ b/freebsd/sys/vm/uma_core.c
@@ -3814,3 +3814,15 @@ DB_SHOW_COMMAND(umacache, db_show_umacache)
}
#endif /* DDB */
#endif /* __rtems__ */
+#ifdef __rtems__
+/*
+ * This is a helper routine for test programs. The uma_timeout() may need some
+ * dynamic memory. This could disturb out of memory tests.
+ */
+void
+rtems_uma_drain_timeout(void)
+{
+
+ callout_drain(&uma_callout);
+}
+#endif /* __rtems__ */