Age | Commit message (Collapse) | Author |
|
* mgt.c (process_has_exited): Use mach_port_destroy instead of
mach_port_deallocate to release P->p_msgport.
(complete_exit): Likewise for P->p_task.
These changes eliminate a race; we are destroying the receiver of
the dead-name notifications on these ports, but if that means we
lose a notification, then the ref-count on the name will get
incremented and we can't re-decrement it since we never hear the
notification.
|
|
|
|
* primes.c: Fix last change.
|
|
|
|
* def_pager_setup.c (default_pager_setup): #if 0 out unused function.
|
|
* bootstrap.c (main: scrript_paging_file): Pass LINUX_SIGNATURE arg
through to add_paging_file.
|
|
* default_pager.c (default_pager_paging_file): Pass 0 for new
LINUX_SIGNATURE arg to add_paging_file.
|
|
* notify.c (do_mach_notify_dead_name): Deallocate reference to
DEADPORT.
|
|
* notify-dead-name.c (ports_do_mach_notify_dead_name): Deallocate
newly created reference to DEAD_NAME.
|
|
* start-translator-long.c (service_fsys_startup): Doc fixes, and
omit unused member `dead' from REQUEST.
|
|
* init.c (do_mach_notify_dead_name): Deallocate the extra
reference to NAME that the notification carries.
|
|
* group, passwd: Revert preceding change.
|
|
* passwd (bin): New entry with ID 0, for compatibility with BSD.
* group (bin, kmem): Likewise.
|
|
* dir-lookup.c (netfs_S_dir_lookup): Only set newnode to 1 if the
lookup does not need to be retried as a result of getting EEXIST.
|
|
* primes.c (_ihash_nextprime): Use a dynamically-sized array for
`seive' instead of alloca, so that if we are looping we won't
allocate more stack than necessary. Suggested by wesommer@mit.edu
(Bill Sommerfeld).
|
|
|
|
* pf.c (S_socket_whatis_address): Implement. Since we cannot tell
what our adress is, return an empty string as the file name.
|
|
* munge.c (output_width): If C is a tab, then the width is the
offset from LOC, not the total final position of the tab.
Reported by Kalle Olavi Niemitalo <tosi@ees2.oulu.fi).
|
|
|
|
* users.c (trivfs_S_io_revoke): Use ports_class_iterate.
|
|
* main.c (S_startup_dosync): Use ports_class_iterate.
(sigterm_handler): Likewise.
|
|
* destroy-right.c (ports_destroy_right): Return error_t (always 0).
* ports.h: Update decl.
* bucket-iterate.c (_ports_bucket_class_iterate): New function,
transmorgified from ports_bucket_iterate.
(ports_bucket_iterate): Now just call that to do the work.
* class-iterate.c: New file.
(ports_class_iterate): New function.
* ports.h: Declare ports_class_iterate and _ports_bucket_class_iterate.
* Makefile (SRCS): Add class-iterate.c.
|
|
* destroy-right.c (ports_destroy_right): Return error_t (always 0).
* ports.h: Update decl.
|
|
* bucket-iterate.c (_ports_bucket_class_iterate): New function,
transmorgified from ports_bucket_iterate.
(ports_bucket_iterate): Now just call that to do the work.
* class-iterate.c: New file.
(ports_class_iterate): New function.
* ports.h: Declare ports_class_iterate and _ports_bucket_class_iterate.
* Makefile (SRCS): Add class-iterate.c.
|
|
* io-revoke.c (netfs_S_io_revoke): Use ports_class_iterate.
|
|
* get-identity.c (fshelp_get_identity): Use ports_class_iterate.
|
|
* io-revoke.c (diskfs_S_io_revoke): Use ports_class_iterate.
* readonly.c (diskfs_set_readonly): Likewise.
|
|
|
|
* node.c (netfs_attempt_utimes): Fix typo in last change.
|
|
|
|
|
|
* def_pager_setup.c (add_paging_file): New arg CHECK_LINUX_SIGNATURE,
pass down to create_paging_partition.
* default_pager.c (create_paging_partition): New arg
CHECK_LINUX_SIGNATURE, pass down new_partition.
(new_partition): New arg CHECK_LINUX_SIGNATURE: if not < 0,
check first page of swap for Linux 2.0 or 2.2 signature page and obey
its bad-block map; if > 0, refuse the partition if no signature found.
* bootstrap.c (main): Add new boot script functions
`add-raw-paging-file', `add-linux-paging-file'. Make those
and `add-paging-file' all call add_paging_file with new
LINUX_SIGNATURE arg of -1, 1, and 0, respectively.
* default_pager.c (create_paging_partition): If new_partition returns
null, return and do nothing more.
|
|
|
|
* mount.sh: Use `awk' instead of `gawk'.
|
|
* end-rpc.c (ports_end_rpc): Signal ports_block anytime an rpc
ends and someone is waiting on an inhibition.
|
|
|
|
* users.c (trivfs_S_io_revoke): Protect the revocation by blocking
all other rpcs.
|
|
* io-revoke.c (netfs_S_io_revoke): Protect the revocation by
blocking other rpcs.
|
|
* io-revoke.c (diskfs_S_io_revoke): Protect the actual revocation
by blocking all other rpcs.
|
|
|
|
* users.c (trivfs_S_io_revoke): Release global_lock before
beginning the iteration.
* users.c (trivfs_S_io_revoke): Add reply, reply_type args.
|
|
* stubs.c (send_signal): Typo in comment.
|
|
* io-revoke.c (netfs_S_io_revoke): Release lock before iteration.
|
|
* io-revoke.c (diskfs_S_io_revoke): Release NP->lock before
beginning iteration.
|
|
* login.c (main): Correctly implement -f instead of always
acting as if it were set.
|
|
|
|
* login.c (main): When transitioning from no UID's to having UID's
create a new session like normal. Reported by Mark M. Kettenis
<kettenis@wins.uva.nl>.
|
|
* main.c (main): Initialize status from underlying node.
* users.c (check_access_hook): New function. Correctly implement
access permission checking.
(trivfs_check_access_hook): Initialize with check_access_hook.
(trivfs_S_file_check_access): Removed.
|
|
* trivfs.h (trivfs_check_access_hook): New variable.
* fsys-getroot.c (trivfs_S_fsys_getroot): Use
trivfs_check_acces_hook.
* dir-lookup.c (trivfs_S_dir_lookup): Likewise.
* file-access.c (trivfs_S_file_check_access): Likewise.
|
|
* MAKEDEV.sh (mkdev): put `time' in single-quotes; it's a reserved
word in bash 2.02 and this protects it. Reported by OKUJI
Yoshinori <okuji@kuicr.kyoto-u.ac.jp>.
|