diff options
-rw-r--r-- | freebsd/sys/kern/kern_sysctl.c | 9 | ||||
-rw-r--r-- | libbsd.txt | 2 |
2 files changed, 7 insertions, 4 deletions
diff --git a/freebsd/sys/kern/kern_sysctl.c b/freebsd/sys/kern/kern_sysctl.c index a1270a5c..23cd6a70 100644 --- a/freebsd/sys/kern/kern_sysctl.c +++ b/freebsd/sys/kern/kern_sysctl.c @@ -1108,22 +1108,23 @@ sysctl_handle_opaque(SYSCTL_HANDLER_ARGS) req2 = *req; retry: generation = curthread->td_generation; +#else /* __rtems__ */ + int error; +#endif /* __rtems__ */ error = SYSCTL_OUT(req, arg1, arg2); if (error) return (error); +#ifndef __rtems__ tries++; if (generation != curthread->td_generation && tries < 3) { *req = req2; goto retry; } +#endif /* __rtems__ */ error = SYSCTL_IN(req, arg1, arg2); return (error); -#else /* __rtems__ */ - /* FIXME */ - return (0); -#endif /* __rtems__ */ } /* @@ -103,6 +103,8 @@ the current Git submodule commit is this * TIMEOUT(9): Maybe use special task instead of timer server to call callout_tick(). +* sysctl_handle_opaque(): Implement reliable snapshots. + [listing] ---- /* sysinit section? */ |