aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--configure.ac1
-rw-r--r--libdiskfs/boot-start.c3
-rw-r--r--libmachdev/trivfs_server.c3
3 files changed, 7 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac
index 6dbb97e6..182548f2 100644
--- a/configure.ac
+++ b/configure.ac
@@ -153,6 +153,7 @@ AC_CACHE_CHECK([for libio],
# Check if libc contains these functions.
AC_CHECK_FUNCS(file_exec_paths exec_exec_paths _hurd_exec_paths)
+AC_CHECK_FUNCS(_hurd_libc_proc_init)
# Compatibility with glibc < 2.28
AC_CHECK_FUNCS(file_futimens)
diff --git a/libdiskfs/boot-start.c b/libdiskfs/boot-start.c
index fa59e1b2..0ae90144 100644
--- a/libdiskfs/boot-start.c
+++ b/libdiskfs/boot-start.c
@@ -634,6 +634,9 @@ diskfs_S_fsys_init (struct diskfs_control *pt,
portarray[INIT_PORT_CRDIR] = root_pt;
portarray[INIT_PORT_CWDIR] = root_pt;
_hurd_init (0, diskfs_argv, portarray, INIT_PORT_MAX, NULL, 0);
+#ifdef HAVE__HURD_LIBC_PROC_INIT
+ _hurd_libc_proc_init(diskfs_argv);
+#endif
}
err = get_privileged_ports (&host, 0);
diff --git a/libmachdev/trivfs_server.c b/libmachdev/trivfs_server.c
index 4d9b415d..833bfbff 100644
--- a/libmachdev/trivfs_server.c
+++ b/libmachdev/trivfs_server.c
@@ -318,6 +318,9 @@ trivfs_S_fsys_init (struct trivfs_control *fsys,
portarray[INIT_PORT_CRDIR] = root;
portarray[INIT_PORT_CWDIR] = root;
_hurd_init (0, machdev_argv, portarray, INIT_PORT_MAX, NULL, 0);
+#ifdef HAVE__HURD_LIBC_PROC_INIT
+ _hurd_libc_proc_init(diskfs_argv);
+#endif
/* Mark us as important. */
proc = getproc ();