Age | Commit message (Collapse) | Author |
|
* file-exec.c (diskfs_S_file_exec): Fix typo and braino in last change.
* init-startup.c (diskfs_startup_diskfs): Fix braino in last change.
|
|
|
|
|
|
* frobauth-mod.c (frobauth_modify): Don't use MOVE_SEND in Hurd RPC.
* msgport.c (do_setfd, cmd_chcwdir, cmd_cdroot, cmd_chcrdir):
Likewise.
|
|
* symlink.c (main): Don't use MAKE_SEND in Hurd RPC.
|
|
* main.c (main): Don't use MAKE_SEND in Hurd RPC.
|
|
* clookup.c (file_name_lookup_carefully): Don't use MOVE_SEND in
Hurd RPC.
|
|
* main.c (arrange_shutdown_notification): Don't use MAKE_SEND in
Hurd RPC.
|
|
* cache.c (create_cached_handle): Add comment.
|
|
* startup.c (trivfs_startup): Don't use MAKE_SEND in Hurd RPC.
|
|
* exec-reauth.c (exec_reauth): Always destroy REF, even when we
get errors.
|
|
* file-exec.c (netfs_S_file_exec): Don't use MAKE_SEND in Hurd
RPC.
* init-startup.c (netfs_startup): Likewise.
|
|
* fetch-root.c (fshelp_fetch_root): Don't use MAKE_SEND in Hurd
RPC.
|
|
* boot-start.c (diskfs_S_fsys_init, diskfs_start_bootstrap): Don't
use MOVE_SEND in Hurd RPC.
* file-exec.c (diskfs_S_file_exec): Don't use MAKE_SEND in Hurd
RPC.
* init-startup.c (diskfs_startup_diskfs, _diskfs_init_completed):
Likewise.
|
|
* init.c (launch_core_servers): Don't use MOVE_SEND in Hurd RPCs.
|
|
* main.c (S_exec_init): Don't use MOVE_SEND in Hurd RPC.
|
|
* boot.c (S_io_reauthenticate): Don't use MACH_MSG_TYPE_MAKE_SEND
in Hurd RPC.
|
|
|
|
* dir-lookup.c (diskfs_S_dir_lookup): Use ports_get_send_right.
|
|
* crash.c (S_crash_dump_task): Use ports_get_send_right.
|
|
* io-ops.c (S_io_reauthenticate): Use ports_get_send_right.
|
|
* users.c (send_signal): Use ports_get_send_right.
|
|
* devio.c (devio_abandon_physical_output): Use ports_get_send_right.
(initial_open): Use ports_get_send_right.
(device_open_reply): Use ports_get_send_right.
|
|
* exec.c (do_exec): Use ports_get_send_right.
|
|
* main.c (main): Use ports_get_send_right.
|
|
* io-reauthenticate.c (netfs_S_io_reauthenticate): Use
ports_get_send_right.
|
|
* dir-lookup.c (netfs_S_dir_lookup): Use ports_get_send_right.
Deallocate DIRPORT after fshelp_fetch_root.
|
|
* io-reauthenticate.c (trivfs_S_io_reauthenticate): Use
ports_get_send_right.
|
|
* io-reauthenticate.c (diskfs_S_io_reauthenticate): Use
ports_get_send_right.
|
|
* boot-start.c (diskfs_start_bootstrap): Use ports_get_send_right.
(diskfs_execboot_fsys_startup): Use ports_get_send_right.
(diskfs_S_fsys_init): Use ports_get_send_right.
(start_execserver): Use ports_get_send_right.
|
|
* get-send-right.c: New file.
* ports.h: Declare ports_get_send_right.
* Makefile (SRCS): Add get-send-right.c.
|
|
|
|
* get-right.c (gdb_loses): Remove global variable.
(ports_get_right): Use a local instead.
|
|
|
|
* start-translator-long.c (service_fsys_startup): If mach_msg fails
with MACH_SEND_INTERRUPTED, clean up the send right in the
pseudo-received request message.
|
|
|
|
* mgt.c (S_proc_exception_raise): Check for
MACH_SEND_NOTIFY_IN_PROGRESS rather than MACH_SEND_INVALID_NOTIFY.
Don't deallocate THREAD and TASK ports before the switch, since the
successful case uses THREAD again and the failure case uses TASK
again. Instead, deallocate them at the end of the successful case.
At the end of the error case, use mach_port_destroy on THREAD only.
|
|
|
|
* stubs.c (send_signal): Don't use mach_msg_destroy, since it wants
the local/remote ports reversed. Destroy the rights by hand instead.
|
|
|
|
* stubs.c (send_signal): Make MESSAGE auto instead of static.
Take new argument TIMEOUT, passed to mach_msg instead of zero.
(send_signal): For MACH_SEND_TIMED_OUT failure, destroy the
pseudo-received message to avoid leaking send rights.
* init.c (process_signal): Pass new argument, timeout of 500 ms.
|
|
* stubs.c (struct msg_sig_post_request): New type, broken out of
send_signal, where it was anonymous.
(struct msg_spec): Type removed.
(blocking_message_send): Change type to any_t -> any_t.
Don't call cthread_wire; it's a no-op in GNU anyway.
Just return instead of calling cthread_exit.
Argument is now a pointer to struct msg_sig_post_request.
Check mach_msg return value for sanity assert.
(send_signal): Make MESSAGE auto instead of static, use new type name.
This problem tracked down by Mark Kettenis <kettenis@gnu.org>.
|
|
|
|
* exec.c [! EXECDATA_STREAM] (prepare_stream): Replace no-op with real
function to initialize map_* members to zero.
|
|
* priv.h (EXECDATA_STREAM): Define this only #ifdef BFD.
The non-BFD exec server is now completely independent of stdio magic;
it uses only those interfaces documented in the C library manual,
which are provided both by old GNU stdio and by GNU libio.
Resurrecting the BFD exec server will require using magic again,
for which libio-specific magic needs to be written.
|
|
|
|
* priv.h (EXECDATA_STREAM): New macro, always defined for now.
(struct execdata) [! EXECDATA_STREAM]: Add members
map_buffer, map_bsize, map_fsize, map_filepos in place of stream.
(map_buffer, map_filepos, map_set_fsize): New macros for accessing
those or stream.
[! EXECDATA_STREAM] (map_fsize, map_vsize): Define using new members.
* exec.c (map): Rewritten purely using those accessor macros.
(input_room): Set the __target, __bufp, __error, and __eof members,
which are no longer set by map.
[! EXECDATA_STREAM] (prepare_stream, prepare_in_memory): Make no-ops.
(input_room, close_exec_stream, fake_seek, prepare_stream,
prepare_in_memory): Conditionalize these defns on [EXECDATA_STREAM].
(load_section): Always use map instead of stdio.
Replace bcopy with memcpy.
(check_gzip: zipread): Rewrite using map instead of stdio.
(check_bzip2: zipread): Likewise.
|
|
|
|
* hashexec.c (check_hashbang): Fix up multiple fencepost brainos.
|
|
|