Age | Commit message (Collapse) | Author |
|
Modify tmpfs to keep a reference (by mapping it into its
own space) to each memory object created by the user, so they don't get
inmediately terminated at the end of the current operation.
* tmpfs/tmpfs.h (struct disknode): Add `memref' field.
* tmpfs/node.c (diskfs_get_filemap): vm_map() the first page of the
newly-allocated object, store in `memref' field.
(diskfs_free_node) vm_deallocate the page pointed by `memref' field.
|
|
As suggested by Sergio Lopez.
* serverboot/default_pager.c (S_default_pager_object_set_size): Exchange
`seqno' and `reply_to' parameters.
|
|
* serverboot/default_pager.c (struct dstruct): Add boolean_t external field.
(default_pager_add): Set ds->external to TRUE or FALSE depending whether the
object is external.
(default_read): Add external parameter. If no_block(block) returns 1, if
external is TRUE, zero fill the page and return PAGER_SUCCESS instead of
PAGER_ABSENT.
(seqnos_memory_object_data_request): Pass ds->external as additional
parameter to default_read.
|
|
* serverboot/default_pager.c (pager_read_offset): Properly unlock the mutex
before returning NO_BLOCK.
|
|
* libps/procstat.c (proc_stat_set_flags): Cast &ps->umask into (int*)
before calling ps_msg_get_init_int.
|
|
|
|
The fetch_procinfo function failed to set the PSTAT_TASK_EVENTS when
those has been retreived. It should be noted that GNU Mach does not
support the TASK_EVENTS_INFO flavor, so this is of minor importance.
The new code also checks that all the requested proc server flags
related to a given proc_stat flags have been returned before setting the
proc_stat flag in question.
* libps/procstat.c (fetch_procinfo): Add map array containing `ps_flags_t' and
`procinfo' flags. Use it in a loop to check for flags in `need' and `have' and
set them in `pi_flags'. Likewise to check for flags in `pi_flags' and set them
in `have'.
|
|
The thread_waits field was never freed; this change adds the code to do
so if the corresponding flag is set.
Users are also warned of the consequences, namely, that they should not
free process proc_stats before all their associated thread ones are
gone, since the latter may reference the former's thread_waits field.
However, with the normal interface (ie. ps_context_free), all
proc_stats are freed at once, so this is not an issue.
* libps/procstat.c (_proc_stat_free): Free ps->thread_waits if
PSTAT_THREAD_WAITS flag is set.
* libps/ps.h (_proc_stat_free): Document that thread proc_stats must be
freed before process proc_stat can be.
|
|
PSTAT_PROCINFO is a set of flags, some of which can be obtained in
alternative ways. In this case, _proc_stat_free will try to deallocate
an uninitialised field. PSTAT_PROC_INFO is the flag we want.
* libps/procstat.c (_proc_stat_free): Use PSTAT_PROC_INFO instead of
PSTAT_PROCINFO.
|
|
Part stores are used for debian-installer, and they're considered more
elegant than kernel partition devices. This patch makes sure they're
included in the build unless the user disables them explicitely.
* Makeconf: add $(PARTED_LIBS) to static binaries which use libstore_part.a.
* configure.in: look for libparted again (see also 7c7a04eb).
* libstore/Makefile (store-types): include the 'part' store type when
appropriate, remove the previous attempt.
Signed-off-by: Jeremie Koenig <jk@jk.fr.eu.org>
|
|
init/init.c (S_msg_sig_post_untraced): Ignore result of
msg_sig_post_untraced_reply.
(S_msg_sig_post): Likewise.
|
|
* pfinet/io-ops.c (S_io_read): Check return value.
* pfinet/socket-ops.c (S_socket_recv): Likewise.
|
|
* sutils/Makefile (SRCS): Add `clookup.c', `fstab.c', and `update.c'.
|
|
* libthreads/Makefile (lndist, lndist-map-file): New targets. Link
`libthreads.map' to the distribution directory.
|
|
* libcons/Makefile (LCLHDRS): Add `$(installhdrs)'.
|
|
* include/Makefile (lndist): New target. Copy `Makefile' and
`$(installhdrs)' to the distribution directory.
|
|
* exec/Makefile (SRCS): Refer to `$(gzip-sources)' and
`$(bzip2-sources)' instead of listing files individually.
(gzip-sources, bzip2-sources): New variable.
(gzip-objects, bzip2-objects): Derive from the above variables.
|
|
* daemons/Makefile (SRCS): Add `runsystem.sh'.
|
|
This patch updates the list of headers to be included in the
distribution, and makes it so that `kdioctlServer.c' isn't built and
distributed by "make dist".
* console-client/Makefile (PC_KBD_SO_SRCS): Remove `kdioctlServer.c'.
(LCLHDRS): Remove `vga.h', add `vga-support.h' and `trans.h'.
(OBJS): Add `kdioctlServer.o'.
(pc_kbd.so.$(hurd-version)): Add dependency on `kdioctlServer_pic.o'.
|
|
|
|
* hurd/console.h (CONS_WCHAR_MASK, CONS_WCHAR_CONTINUED): New macros.
* console/console.c: Include <locale.h>
(main): Call setlocale.
* console/display.c (display_output_one): Call wcwidth() to know the
width of the character to be displayed. Iterate over this with to insert
characters with the additional CONS_WCHAR_CONTINUED flag. Update
screen_shift_right and display_record_filechange calls accordingly.
* console-client/vga-dynafont.c (WCHAR_BOLD, WCHAR_ITALIC, WCHAR_MASK):
Change macro values.
(dynafont_new): Use glyph->bbox.{width,height} instead of
df->font->bbox.{width,height}.
(dynafont_change_font): Likewise.
(dynafont_lookup_internal): Likewise.
Mask out CONS_WCHAR_CONTINUED before calling bdf_find_glyph, but test it
for the second position of a double-width glyph.
(dynafont_activate): Enable 9-bit width only when font width is not
dividable by 8.
|
|
* libpager/data-request.c (_pager_seqnos_memory_object_data_request):
Use allow_release_out label instead of re-doing unlocks by hand.
|
|
DEV_GET_SIZE values overflow with large devices, rather use
DEV_GET_RECORDS.
* mach-defpager/setup.c (S_default_pager_paging_storage): Use DEV_GET_RECORDS
instead of DEV_GET_SIZE.
|
|
* libtrivfs/file-reparent.c (trivfs_S_file_reparent): Call
trivfs_S_io_duplicate.
|
|
exec_exec() probably triggers a call to file_exec(), so the exec server
port needs to be cached earlier.
* libdiskfs/boot-start.c: Move caching the exec server port to just
after initializing it.
|
|
* console-client/vga.c (parse_opt): Reverse -g and -m option effect to
match documentation.
|
|
* pflocal/socket.c (S_socket_getopt): Add SO_TYPE support.
(S_socket_setopt): Fix return value.
|
|
This reverts commit 1bb5a381a2e2f345beb1ca8d019b6174b13bb125.
storeio can actually pass the device port to other processes, through
file_get_storage_info for instance, these may then want to use it, even after
storeio has closed its port.
|
|
* pfinet/io-ops.c (S_io_read): On error, free data array if it was
allocated.
|
|
* pfinet/glue-include/linux/sched.h (schedule_timeout): Make the
automatically-allocated wait_queue pointer static instead of dynamic (and lost).
|
|
* libstore/device.c (dclose): Call device_close before deallocating the device
port.
|
|
* utils/mount.c (do_mount): Ignore the "defaults" option.
|
|
* libstore/Makefile (store-types): Remove part.
[HAVE_PARTED] (store-types): Add part.
[HAVE_PARTED] (libstore.so-LDLIBS): Add -lparted.
|
|
* libstore/Makefile (store-types): Add part.
* libstore/part.c: Do not include <parted/device_gnu.h>
(PED_SECTOR_SIZE): Define to PED_SECTOR_SIZE_DEFAULT if undefined.
(store_part_create): Do not check value returned by ped_disk_destroy.
|
|
* Makeconf (%): Don't depend on removed files. Remove excess backslashes.
|
|
* libpager/data-request.c (_pager_seqnos_memory_object_data_request):
when _pager_pagemap_resize returns an error, instead of goto
release_out, goto new label allow_release_out thats calls
_pager_allow_termination before proceeding with release_out.
|
|
2010-02-06 Carl Fredrik Hammar <hammy.lite@gmail.com>
* ext2fs/storeinfo.c (diskfs_S_file_get_storage_info):
Return EOPNOTSUPP instead of store if file contains holes.
|
|
2010-02-02 Carl Fredrik Hammar <hammy.lite@gmail.com>
* utils/ps.c (main): Move format parsing to parse_opt() and pass
state to parse_enum().
|
|
* tmpfs/tmpfs.h (tmpfs_dirent): Add padding field to push the
name field after its position in struct dirent.
|
|
* sutils/MAKEDEV.sh (cmd, st, lose, mkdev): Remove function, add
().
(mkdev): Use ${I#???} instead of ${I:3}.
|
|
* proc/info.c (S_proc_register_version): Do not deallocate port
`credential' when err != 0.
|
|
* exec/hashexec.c (check_hashbang): Set `e->error' to 0 before
calling map(). On error, check `e->error' instead of `errno', and
default `e->error' to ENOEXEC.
|
|
* proc/notify.c (do_mach_notify_dead_name): Do not call
mach_port_deallocate on `deadport' on failure.
|
|
* exec/exec.c (do_exec): Do not deallocate oldtask when
newtask != oldtask before the `out:' label since it is done
again after it.
|
|
* auth/auth.c (S_auth_server_authenticate): On MIG stub failure,
deallocate the reply port by hand instead of letting the main
message loop do it, since the latter would deallocate newport
too, which we passed to the user.
|
|
* auth/auth.c (S_auth_user_authenticate): Do not return
EINTR if user is not pending any more, i.e. server actually
already answered.
(S_auth_server_authenticate): Do not return EINTR if server is
not pending any more, i.e. user actually already answered.
|
|
* auth/auth.c (S_auth_server_authenticate): Check result of
auth_server_authenticate_reply stub.
* init/init.c (S_msg_sig_post_untraced): Check result of
msg_sig_post_untraced_reply
(S_msg_sig_post): Check result of msg_sig_post_reply.
|
|
* libfshelp/exec-reauth.c (fshelp_exec_reauth): Set gid in eff_gids and
avail_gids instead of in eff_uids, and avail_uids.
|
|
* libps/fmt.c (_fmt_create): Put NUL terminator only when there is room
for it. When there is not it is there already anyway.
|
|
* console-client/current-vcs.c (vcs_repeat_init): Rename function into...
(current_vcs_init): ... this.
(vcs_repeat_start): Rename function into...
(current_vcs_start): ... this.
(vcs_repeat_fini): Rename function into...
(current_vcs_fini): ... this.
|