Thomas Veerman [Wed, 26 Oct 2011 13:28:41 +0000 (13:28 +0000)]
Make AVFS deal intelligently with back calling FSes
PUFFS file systems need to make back calls for every operation we
send to them. Consequently, they cannot handle block reads and writes
themselves. Instead, the root file system has to do it (for now).
When the mount operation causes an FS to make a back call, AVFS now
concludes that every block read and write for that FS has to go
through the root file system.
Ben Gras [Mon, 26 Sep 2011 16:19:29 +0000 (16:19 +0000)]
update/fix manpage support
. add bsd-style MLINKS to minix man set, restoring aliases
(e.g. man add64 -> int64)
. update daily cron script to run makewhatis and restore makewhatis
in man Makefile (makedb), restores functionality of man -k
. netbsd imports of man, mdocml, makewhatis, libutil, apropos
. update man.conf with manpage locations, restoring man [-s] <section>
. throws out some obsolete manpages
Thomas Veerman [Mon, 12 Sep 2011 09:00:24 +0000 (09:00 +0000)]
Fix off-by-one errors and increase PATH_MAX to 1024
In some places it was assumed that PATH_MAX does not include a
terminating null character.
Increases PATH_MAX to 1024 to get in sync with NetBSD. Required some
rewriting in AVFS to keep memory usage low (the stack in use by a thread
is very small).
Ben Gras [Thu, 8 Sep 2011 16:49:54 +0000 (16:49 +0000)]
add -lminixfs with fs support routines
. move cache size heuristic from mfs there
so mfs and ext2 can share it
. add vfs credentials retrieving function, with
backwards compatability from previous struct
format, to be used by both ext2 and mfs
. fix for ext2 - STATICINIT was fed no.
of bytes instead of no. of elements, overallocating
memory by a megabyte or two for the superblock
Thomas Veerman [Fri, 26 Aug 2011 15:14:55 +0000 (15:14 +0000)]
Let FSes exit themselves upon system shutdown
During shutdown all processes are semi-exited and FSes are unmounted.
This semi-exit causes trouble for FUSE mounts as they still need access
to file descriptors and working directory in order to unmount.
Thomas Veerman [Fri, 26 Aug 2011 13:16:16 +0000 (13:16 +0000)]
Clean up tests and do runtime test for max name length
- Remove unused code
- Use standard functions declared in common.c
- Change tests to do a runtime test for the max name length of a path
component (aka NAME_MAX). The actual value might differ from the hard
coded NAME_MAX depending on the file system used.
Ben Gras [Thu, 18 Aug 2011 00:08:38 +0000 (00:08 +0000)]
use minix malloc
. default jemalloc is not too easy to compile without threads
libraries/types
. non-default malloc has odd virtual address space binge problem
. switch to ack/minix malloc in old libc for now
Ben Gras [Thu, 4 Aug 2011 23:15:16 +0000 (23:15 +0000)]
increase system-wide filename limit to 255
. move mfs-specific struct, constants to mfs/, so
mfs-specific, on-disk format structs and consts are
fully isolated from generic structs and functions
. removes de and readfs utils
Thomas Cort [Sun, 14 Aug 2011 12:41:39 +0000 (12:41 +0000)]
mkdir: allow 'mkdir -p' with trailing '/'
Let's suppose that /usr/tmp exists and one wants /usr/tmp/a/b
If one runs "mkdir -p /usr/tmp/a/b/" (the '/' at the end is
important), then a "File exists" error comes up. Example:
Ben Gras [Fri, 12 Aug 2011 20:59:23 +0000 (20:59 +0000)]
kernel: don't use -ffreestanding
. workaround for clang's stdint.h __STDC_HOSTED__ test
that causes the host stdint.h to be ignored for -ffreestanding,
causing a type to be double-defined in the kernel
Ben Gras [Mon, 1 Aug 2011 13:35:34 +0000 (15:35 +0200)]
kernel: invlpg facility
. only use for single-page invalidations initially
. shows tiny but statistically significant performance
improvement; will be more helpful in certain VM debug
modes