| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
* libmachdev/trivfs_server.c (machdev_trivfs_init): Call fsys_getpriv
only when bootstrapping.
|
|
|
|
|
|
|
|
|
|
| |
* pci-arbiter/pcifs.h (init_root_node): Restore underlying_node
parameter.
* pci-arbiter/pcifs.c (underlying_stat): Drop global variable.
(init_root_node): Restore getting the stat from the underlying node.
* pci-arbiter/main.c (main): Restore calling netfs_startup in
non-bootstrap case, and pass underlying node to init_root_node. Only
call pcifs_startup in bootstrap case.
|
|
|
|
| |
Message-Id: <20210404033750.143411-1-damien@zamaudio.com>
|
|
|
|
|
|
|
| |
We may not have io_identity called before io_stat, and programs like
diff rely on inode numbers being different for different files.
* pflocal/io.c (S_io_stat): Allocate socket id if not already allocated.
|
|
|
|
|
|
|
|
|
|
| |
* libmachdev/trivfs_server.c (parent_task): New global variable.
(machdev_trivfs_init): Remove parent_task local variable.
(trivfs_S_fsys_init): Pass parent's proc port to fsys_init call.
Accept EPERM error from proc_mark_important for bootstrap case. Check
errors from proc_set_exe call.
Message-Id: <20210319021512.823541-1-damien@zamaudio.com>
|
| |
|
|
|
|
|
| |
* Makeconf (vpath): Add $(libdir)/ for libpthread.%, libbz2.%, and
libz.%.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
So that distributions can use the --libexecdir configure parameter.
* configure.ac (AC_CONFIG_FILES): Add daemons/runsystem.hurd.sh.
* config/ttys: Rename to ttys.in, replace /libexec with @libexecdir@.
* config/Makefile (ttys): Generate from ttys.in
* daemons/runsystem.hurd.sh.in (prefix): Define to @prefix@.
(exec_prefix): Define to @exec_prefix@.
(RUNCOM, RUNTTYS): Replace /libexec with @libexecdir@.
* init/Makefile (init-CPPFLAGS): Define LIBEXECDIR.
* init/init.c (main): Use LIBEXECDIR instead of hardcoding /libexec.
* startup/Makefile (startup-CPPFLAGS): Define LIBEXECDIR.
* startup/startup.c (start_child, launch_something): Use LIBEXECDIR instead of
hardcoding /libexec.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* libmachdev/trivfs_server.c (bootstrapped): Rename to bootstrapping.
(trivfs_S_fsys_startup): Call fsys_startup on the bootstrap port.
(essential_task): New function.
(trivfs_S_fsys_init): Call fsys_init on the bootstrap port. Configure
proc. Mark us as essential when bootstrapping even without a devnode.
(arrange_shutdown_notification): Do not configure proc.
(machdev_trivfs_init): Always get the bootstrap port from the kernel,
leave it MACH_PORT_NULL if unavailable. Call fsys_getpriv on it if it
is.
* pci-arbiter/Makefile (SRCS): Remove startup.c.
* pci-arbiter/startup.c: Delete file.
* pci-arbiter/startup.h: Delete file.
* pci-arbiter/main.c: Do not include "startup.h"
(pci_device_shutdown): Do not try to lokup the dosync_handle.
(pcifs_startup): Always create the pci_control_port right on the
control port.
(main): Call machdev_device_init after machdev_trivfs_init. Do not call
arrange_shutdown_notification.
* rumpdisk/main.c (netfs_server_name): Don't pretend to be the arbiter anymore
(main): Call machdev_device_init after machdev_trivfs_init.
Message-Id: <20210316054715.788725-1-damien@zamaudio.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* pci-arbiter/Makefile
Add machdev lib and simplify
* pci-arbiter/main.c
(pci_device_{open,close,shutdown}): New methods
(netfs_server_func): Thread the demuxer loop
(pcifs_startup): Custom startup method
(main): Use machdev for server and detach worker threads
* pci-arbiter/options.{c,h}
Add disk-server-task and priv ports
* pci-arbiter/startup-ops.c
Delete file
Message-Id: <20210308130457.693821-4-damien@zamaudio.com>
|
|
|
|
|
|
|
|
| |
* acpi/netfs_impl.c (get_dirents): Fix computing number of
elements to be returned. Simplify computing the data size.
* pci-arbiter/netfs_impl.c (get_dirents): Likewise.
(netfs_get_dirents): Fix passing max_data_len rather than max_entries a
second time.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* libmachdev/machdev-device_emul.h
(struct machdev_device_emulation_ops): Add shutdown method.
* libmachdev/ds_routines.c (machdev_device_shutdown): Take dosync_handle
handle and pass it to shutdown method.
* libmachdev/machdev.h (machdev_device_shutdown): Update prototype.
* libmachdev/trivfs_server.c (S_startup_dosync): Pass shutdown handle to
machdev_device_shutdown call.
* rumpdisk/block-rump.c (rumpdisk_device_shutdown): Take dosync_handle
parameter.
|
|
|
|
|
|
| |
* pci-arbiter/pcifs.c (underlying_stat): New variable.
(init_file_system): When underlying_node is nul, use the underlying_stat
content.
|
|
|
|
| |
* pci-arbiter/pci-ops.c: Fix typo in comment.
|
|
|
|
|
| |
* rumpdisk/main.c (main): Call pthread_exit(NULL) to let server threads
continue.
|
|
|
|
| |
Message-Id: <20210302114137.592230-3-damien@zamaudio.com>
|
|
|
|
|
|
|
|
| |
* libnetfs/init-init.c (netfs_init): Also call maptime_map with
use_mach_dev set to 1 so libnetfs can be used before the root
filesystem.
Message-Id: <20210202072945.53483-2-damien@zamaudio.com>
|
|
|
|
|
|
| |
* pfinet/ethernet.c(ethernet_close): Add 'return 0;' at the
end of function.
Message-Id: <20210123221255.11791-2-gfleury@disroot.org>
|
|
|
|
|
|
| |
* pfinet/glue-include/linux/socket.h: include '<string.h>' for 'memcpy'
and '<stdlib.h>' for 'abort'.
Message-Id: <20210123221255.11791-1-gfleury@disroot.org>
|
|
|
|
| |
* proc/wait.c (WNOWAIT): Define if not already defined.
|
|
|
|
| |
* proc/wait.c (S_proc_mark_cont): Set p_status to __W_CONTINUED.
|
|
|
|
|
| |
* proc/wait.c (S_proc_waitid): When options contains WNOWAIT, do not set
p_waited or complete child death.
|
|
|
|
| |
* hurd/version.h (HURD_INTERFACE_VERSION): Bump to 20201227.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
proc_wait assumes that the caller always wants WEXITED, but waitid()
does not. The new proc_waitid RPC requires the caller to specify at
least one of WEXITED, WSTOPPED, or WCONTINUED.
* hurd/process.defs (proc_waitid): New RPC.
* hurd/process_reply.defs (proc_waitid): New RPC.
* hurd/process_request.defs (proc_waitid): New RPC.
* proc/proc.h (struct proc): Add p_continued field.
* proc/wait.c (WCONTINUED, WEXITED): Define if not already defined.
(S_proc_wait): Rename implementation to S_proc_waitid, and modify to
stop assuming WEXITED. Add support for WCONTINUED.
(S_proc_wait): Reimplement by just calling S_proc_waitid with an
additional WEXITED.
(proc_mark_stop): Clear p_continued.
(proc_mark_cont): Set p_continued, clear p_waited, wake any waiting
parent.
|
|
|
|
|
| |
* proc/wait.c (S_proc_mark_cont): When parent has not set nostopcld,
send a SIGCHLD with CLD_CONTINUED.
|
|
|
|
|
|
|
|
| |
* proc/stubs.c (send_signal): Add a sigcode argument.
* proc/proc.h (send_signal): Declare the sigcode argument.
* proc/pgrp.c (leave_pgrp): Specify a null sigcode.
* proc/wait.c (alert_parent): Use CLD_EXITED for SIGCHLD on exit.
(S_proc_mark_stop): Use CLD_STOPPED for SIGCHLD on stop.
|
| |
|
|
|
|
|
|
|
|
| |
This will allow to relieve constraints in callers, e.g. dir_lookup("") would
otherwise produce a warning with gcc-11 since char[1024] would mean that
dir_lookup would read all 1024 characters while it is not.
* hurd/hurd_types.h (const_string_t): New type.
|
|
|
|
| |
* sutils/MAKEDEV.sh (cd*): Set MASTER to @/dev/disk:.
|
|
|
|
|
|
|
|
|
| |
When deadling with multiple levels of symlinks, we really need double
buffering between the current path and the symlink target, and thus cannot
reuse pathbuf.
* libdiskfs/dir-lookup.c (diskfs_S_dir_lookup): Always use alloca for
pathbuf.
|
|
|
|
|
|
|
|
|
|
| |
This is used by parted to reload the partition table. Since we do not
actually implement partition tables, we can just ignore it.
* rumpdisk/block-rump.c (BLKRRPART): New macro.
(rumpdisk_device_set_status): New function.
(rump_block_emulation_ops): Set device_set_status field to
rumpdisk_device_set_status.
|
|
|
|
|
| |
* storeio/dev.c (dev_buf_fill): When store returns less bytes than the
block size, assume an EIO.
|
|
|
|
|
|
|
|
|
|
|
| |
* libps/Makefile (SRCS): Add ../utils/msgids.c.
(../utils/msgids-CPPFLAGS): Add DATADIR macro.
* libps/spec.c: Include "../utils/msgids.h".
(get_rpc_name): Implement with msgid_info.
* utils/msgids.c (parse_opt): Move end code to ...
(msgids_scan_std): ... new function.
* utils/msgids.h (msgids_scan_std): New prototype.
* utils/ps.c (main): Call msgids_scan_std.
|
|
|
|
|
| |
* libshouldbeinlibc/assert-backtrace.c (__assert_fail_base_backtrace):
If returned backtrace is smaller than skip we cannot print anything.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* acpi/acpifs.c (create_dir_entry): Fix terminating entry->name string.
diff --git a/eth-multiplexer/vdev.c b/eth-multiplexer/vdev.c
index 367623d9..c76cfbfd 100644
--- a/eth-multiplexer/vdev.c
+++ b/eth-multiplexer/vdev.c
@@ -139,7 +139,8 @@ add_vdev (char *name, size_t size)
vdev->dev_port = ports_get_right (vdev);
ports_port_deref (vdev);
- strncpy (vdev->name, name, IFNAMSIZ);
+ strncpy (vdev->name, name, IFNAMSIZ-1);
+ vdev->name[IFNAMSIZ-1] = '\0';
vdev->if_header_size = ETH_HLEN;
vdev->if_mtu = ETH_MTU;
vdev->if_header_format = HDR_ETHERNET;
|
|
|
|
| |
* eth-multiplexer/vdev.c (add_vdev): Fix terminating vdev->name string.
|
|
|
|
|
| |
* libfshelp-tests/test-fcntl.c (parse_args): Do not call error() with a
NULL pointer.
|
|
|
|
|
| |
* libfshelp-tests/test-lockf.c (parse_args): Do not call error() with a
NULL pointer.
|
|
|
|
| |
* libfshelp-tests/test-lockf.c (main): Fix format for off_t.
|
|
|
|
|
| |
* libfshelp-tests/test-flock.c (parse_args): Do not call error() with a
NULL pointer.
|
|
|
|
| |
* libfshelp-tests/race.c: Include <stdlib.h>
|
|
|
|
|
| |
* sutils/clookup.c (file_name_lookup_carefully): Make head a non-const
char *.
|
|
|
|
| |
* trans/crash.c (template_make_file_name): Fix format for time_t.
|
|
|
|
| |
* mach-defpager/default_pager.h (panic): Add noreturn function attribute.
|
|
|
|
| |
* pflocal/sock.c: Include <unistd.h>.
|
|
|
|
|
| |
* proc/stubs.c (send_signal): Add missing warning in union inside
mach_msg_header_t.
|
|
|
|
| |
* libtrivfs/make-node.c (init_node): Remove unused empty function.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The commit [1] updated rlock.h and fshelp.h to use
FSHELP_DEFINE_EXTERN_INLINE but it's never defined
because FSHELP_EXTERN_INLINE is used in
libfshelp/extern-inline.c.
Update this file to use define FSHELP_DEFINE_EXTERN_INLINE.
[1] ca3d36201329f0e21b995d831ce9f6f03b6b985e
* libfshelp/extern-inline.c: define FSHELP_DEFINE_EXTERN_INLINE.
* libfshelp/fshelp.h: define FSHELP_EXTERN_INLINE __extern_inline
if FSHELP_DEFINE_EXTERN_INLINE is not defined.
* libfshelp/rlock.h: Likewise
Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Samuel Thibault <samuel.thibault@gnu.org>
Message-Id: <20201120230347.2432672-1-romain.naour@gmail.com>
|
|
|
|
|
|
|
|
| |
* console-client/trans.c (netfs_get_dirents): Fix counting the start
node. Return 0 when there are no entries left, instead of trying to mmap
zero bytes.
(console_create_consnode): Set inode number, other entries get ignored
by glibc's readdir().
|