Age | Commit message (Collapse) | Author |
|
|
|
* tmpfs.c (startup_argp): Use OPTIONS array in initializer.
|
|
|
|
* tmpfs.c (parse_opt): Grok % suffix on number to mean percentage
of the machine's RAM.
|
|
|
|
* tmpfs.c (options): New static const variable. Add --mode/-m.
(struct option_values): New type.
(parse_opt): Use that for VALUES. Grok -m to set VALUES->mode.
Grok ARGP_KEY_FINI and free our data structure.
(tmpfs_root_mode): New variable, set by -m.
(main): If -m was given, use that instead of underlying node's
permissions.
|
|
|
|
* tmpfs.c (main): Don't release REALNODE.
|
|
|
|
* node.c: Include "default_pager_U.h", not <mach/default_pager.h>.
(diskfs_truncate): Return early if page-rounded size is unchanged.
Call default_pager_object_set_size on the memory object.
(diskfs_grow): Likewise.
|
|
* Makefile (OBJS): Add default_pagerUser.o here.
|
|
|
|
* node.c (diskfs_S_file_get_storage_info): Implement it to return
the memory object port with STORAGE_MEMORY.
|
|
|
|
* tmpfs.c (main): Pass diskfs_demuxer to
diskfs_spawn_first_thread to conform to new libdiskfs semantics.
|
|
|
|
* node.c (diskfs_truncate): Set st_size before rounding it up,
and do set it when there is a memory object.
|
|
|
|
* tmpfs.c (main): Set diskfs_root_node->dn_stat.st_nlink to 2.
|
|
|
|
* dir.c (diskfs_get_directs): Total rewrite.
(diskfs_lookup_hard): Likewise.
(diskfs_enter_hard): Count node size in the size of the dirent so
diskfs_get_directs does not have to guess; this is only a few
bytes different. Check the amount of space correctly, i.e.
we cannot compare bytes and pages.
* node.c: (diskfs_free_node): We already hold
diskfs_node_refcnt_lock; do not try to lock it again.
(diskfs_cached_lookup): Use diskfs_nref, that is why we have it.
Link the nodes correctly.
(diskfs_set_translator): Add or remove S_IPTRANS from
np->dn_stat.st_mode as appropriate.
(diskfs_truncate): Set the new np->dn_stat.st_size.
(diskfs_grow): Move the assert up.
|
|
|
|
* tmpfs.c (diskfs_shortcurt_chrdev): Rename to diskfs_shortcut_chrdev.
(diskfs_shortcurt_blkdev): Rename to diskfs_shortcut_blkdev.
(diskfs_shortcurt_fifo): Rename to diskfs_shortcut_fifo.
(diskfs_shortcurt_ifsock): Rename to diskfs_shortcut_ifsock.
|
|
|
|
* node.c (diskfs_free_node): Reset hnext's hprevp.
(diskfs_node_norefs): Likewise.
(diskfs_cached_lookup): Fix insane code for finding existing node ptr.
(diskfs_get_filemap_pager_struct): Remove spurious assert.
(diskfs_get_filemap): Always add a reference to the send right.
|
|
|
|
* dir.c (diskfs_get_directs): When using st_size, calculate additional
space for . and .. entries. Skip . and .. entries when ENTRY says to.
Set d_fileno=2 for .. entry when it is the parent of the filesystem.
|
|
* node.c (diskfs_free_node): Reset hnext's hprevp.
(diskfs_node_norefs): Likewise.
(diskfs_cached_lookup): Fix insane code for finding existing node ptr.
|
|
* tmpfs.c (main): Don't lock diskfs_root_node after alloc,
which already locks it. In root node's mode, clear S_ITRANS bits
and set S_IROOT bit.
|
|
|
|
* node.c (diskfs_S_file_get_storage_info): New function.
* tmpfs.c (diskfs_synchronous): New variable.
* node.c: #include <mach/default_pager.h>.
|
|
* node.c (diskfs_S_file_get_storage_info): New function.
* tmpfs.c (diskfs_synchronous): New variable.
|
|
* dir.c (diskfs_lookup_hard): Look up .. disknode's in-core node.
|
|
* pager-stubs.c: New file.
* Makefile (SRCS): Add it.
|
|
* dir.c: Include <stddef.h>, <unistd.h>, <sys/mman.h>
(diskfs_get_directs): Cast *data to struct dirent *.
* node.c: Include <stddef.h>.
(diskfs_alloc_node): Remove unused variables err, st, np.
(diskfs_free_node): Use *np->dn, not *dn to calculate used space.
(recompute_blocks): Replace DT_DEV with DT_BLK.
(diskfs_node_norefs): Likewise.
(recompute_blocks): Take address of np->dn_stat for pointer st.
(diskfs_cached_lookup): New variable st.
(diskfs_cached_lookup): Set st to &np->dn_stat, not &dn->dn_stat.
(create_symlink_hook): Fix malloc call and return code check.
(read_symlink_hook): Return 0.
* tmpfs.c: Include <argp.h>, <string.h>, <inttypes.h>, <argz.h>,
<error.h>.
(parse_opt): Reverse second and third argument of strtoimax call.
* tmpfs.h (struct disknode): Remove blind passenger (unnamed copy
of anonymous struct {} reg).
Some of the above were also reported by Alexey Dejneka
<adejneka@comail.ru>.
|
|
|
|
* node.c (recompute_blocks): New function, broken out of ...
(diskfs_cached_lookup): here. Now use call that.
(diskfs_set_translator): Likewise.
(create_symlink_hook): Likewise. Do nothing for zero-length target.
|
|
|