pooka
3626443e21
Move the Delectable Test File System from share/examples/puffs/dtfs
...
to tests/fs/puffs/h_dtfs.
No functional change (apart from adjusting the Makefile for test builds).
2010-07-06 14:16:44 +00:00
pooka
14959b2e66
Reinstate the inactive operation (mostly dummy). This makes -i
...
work again and henceforth makes it possible to test inactive.
2010-07-06 13:56:40 +00:00
pooka
a3b4e31630
Use puffs_kernerr_abort as the error handler.
2009-12-05 20:54:40 +00:00
pooka
60c8f07a95
Remove no longer supported suspend code.
2009-12-04 13:43:28 +00:00
pooka
31a36acc43
puffs_setfhsize() in init
2008-11-26 14:03:48 +00:00
christos
fc978808f9
fix more A0
2008-09-12 14:40:46 +00:00
pooka
5ed3fcda15
Add -p for presenting the directory listing in the original case.
2008-08-12 15:14:00 +00:00
pooka
4d243cfc9d
use generic getattr
2007-12-19 14:01:30 +00:00
pooka
21913eabe5
Rototill.
...
Ok, ok, a few more words about it: stop holding puffs_cc as a holy
value and passing it around to almost every possible place (popquiz:
which kernel variable does this remind you of?). Instead, pass
the natural choice, puffs_usermount, and fetch puffs_cc via
puffs_cc_getcc() only in routines which actually need it. This
not only simplifies code, but (thanks to the introduction of
puffs_cc_getcc()) enables constructs which weren't previously sanely
possible, say layering as a curious example.
There's still a little to do on this front, but this was the major
fs interface blast.
2007-11-30 19:02:28 +00:00
pooka
6a3d9a187d
Remove "puffs_cid" from the puffs interface following l-removal
...
from the kernel vfs interfaces. puffs_cc_getcaller(pcc) can be
used now should the same information be desired.
2007-11-27 11:31:17 +00:00
pooka
4462e9454f
use puffs_daemon() instead of daemon()
2007-11-16 18:39:01 +00:00
pooka
ec865a5b29
Actually, daemonize the file servers before mounting. I might require
...
at some point that the local protocol handler does not change after
the file system has been mounted.
2007-11-05 17:54:31 +00:00
pooka
4b0f2948e2
Pull the daemonizing code out of the library mainloop into the file
...
servers. Calling daemon() (i.e. fork()ing) inside a library can
cause nice surprises for e.g. threaded programs. As discussed with
Greg Oster & others.
2007-11-05 17:48:17 +00:00
pooka
de3b90f940
add testing option -l, which causes the flush of the page cache of
...
the node under lookup (if found)
2007-10-11 23:03:00 +00:00
pooka
ceb690c88e
when removing file, free last block also
2007-10-11 13:50:42 +00:00
pooka
90900b0311
dtfs memsets all allocated block content to 0 immediately, so to
...
avoid wasting unbelievable amounts of memory, set the blocksize to
something more believable. Should fix the memset-part to act only
up to the size the file is extended to, though.
2007-09-27 12:03:31 +00:00
pooka
059aa1fbbc
fix usage. from Karl Jenkinson
2007-09-05 17:15:35 +00:00
pooka
25a346d4fb
Nuke PUFFSLOOKUP_FOO and move to NAMEI_FOO
2007-08-15 14:19:19 +00:00
pooka
37f06f1c57
sysctlfs was moved to base
2007-08-15 14:13:57 +00:00
pooka
ba4e596bc9
move sysctlfs from examples to base
2007-08-09 22:01:25 +00:00
pooka
5b593f2aeb
require standard mount_foo bar /path usage, where bar is ignored here
2007-08-09 21:54:27 +00:00
pooka
4a7c7712c6
* require standard mount_foo bar /path usage, where bar is ignored here
...
* allow only root callers to modify sysctl tree
2007-08-09 21:54:16 +00:00
pooka
e4b63c41f0
implement node_mmap and allow to specify accepted mappings on command line
2007-07-27 08:29:10 +00:00
pooka
27c5f7cba3
Match code with comment (can't really remember doing it often that
...
way around .. ) and initialize storage to zero when extending a file.
2007-07-22 13:19:38 +00:00
pooka
a53b2cab5e
missed one place to set dirent namelen - unmiss it
2007-07-22 12:26:58 +00:00
pooka
87429c840c
Oops, the cookies for nfs of course represent the *next* directory
...
entry offset, not the current one.
2007-07-19 10:14:53 +00:00
pooka
b4d2a683de
-m for setting maxreqlen
2007-07-19 07:58:56 +00:00
pooka
ce80f00ff3
With fullpath support we need to check name lengths also, otherwise
...
lookup for "foo" will match "foobar".
2007-07-17 16:33:27 +00:00
pooka
9ee5fb2795
nuke accidental debug printf
2007-07-17 16:00:56 +00:00
pooka
0038fe558b
Use "sysctlfs" as the type name instead of the mountpath.
...
Methinks it's nicer that way.
2007-07-17 12:03:46 +00:00
pooka
08db7d7534
* add mntfromname parameter to puffs_init()
...
* set it in file servers
2007-07-17 11:34:51 +00:00
pooka
3c01554a05
dtfs -f for PUFFS_KFLAG_LOOKUP_FULLPNBUF
2007-07-01 22:59:09 +00:00
pooka
6596e0c995
adapt: **newnode etc. pointers -> struct puffs_newinfo
2007-07-01 18:40:15 +00:00
pooka
fe7bbdec69
adapt: pid -> const struct puffs_cid *
2007-07-01 17:23:44 +00:00
pooka
1776bc7796
adapt: pcn->pcn_cred is now a pointer
2007-07-01 15:32:02 +00:00
pooka
53a4105885
Actually, keep PUFFS_KFLAG_NOCACHE and -o cache around as shorthand
...
to neither page- nor namecache.
2007-06-24 22:25:49 +00:00
pooka
5662e7f720
PUFFS_KFLAG_NOCACHE became two, so introduce the command line options
...
-o nonamecache and -o nopagecache and adapt file systems where necessary.
2007-06-24 22:18:38 +00:00
pooka
3aa77bc919
Just to demonstrate namemod a bit further, make this flip the case
...
of filenames / contents instead of rot13 if -f is given.
2007-06-24 18:59:27 +00:00
pooka
39542808a8
cast tolower() arg to unsigned char
2007-06-24 18:57:26 +00:00
pooka
0d05db1c32
use puffs_null_setops()
2007-06-24 18:43:30 +00:00
pooka
a2b6c72725
fix this also, had a similar rototill-typo as rot13fs
2007-06-24 18:37:40 +00:00
pooka
eb83bd6c94
I wasn't going to add any more silly examples, but I'll bite for
...
this one, since it's a good exercise ..
Add icfs, which does the same thing as the refuse-based icfs agc
added earlier this week, i.e. null-mounts & converts the entire
namespace to lowercase. However, it's a fun comparison, since this
is implemented in a completely different fashion from the refuse
version.
2007-06-24 18:32:00 +00:00
pooka
1c4b40e1bc
fix typo from previous rototill, makes this work again
2007-06-20 21:11:26 +00:00
pooka
f8326bf98e
Move puffs to a two clause license where it already isn't so. And
...
as agc pointed out, even files with the third clause were already
effectively two clause because of a slight bug in the language...
2007-06-06 01:54:59 +00:00
pooka
ae34899ec3
make getopt() actually accept -t also
2007-06-05 12:20:35 +00:00
pooka
1d9d9332f5
Use SETBACK_NOREF instead of SETBACK_INACT to control node removal.
...
Avoids one round of inactive (wheee!).
2007-05-18 15:53:07 +00:00
pooka
48d5a49e1f
"support" vop_poll enough for testing purposes. In short, yield every
...
poll request for a few seconds before returning.
2007-05-18 13:55:21 +00:00
pooka
c8b0a89198
reflect changes in fs mount: use puffs_mount() instead of
...
puffs_domount() & puffs_start()
2007-05-17 14:13:04 +00:00
pooka
9550017a8d
Adapt to changes with mounting file systems.
...
Introduce a parameter -r to control the root node type. For example
"dtfs -r 'lnk /etc' /puffs" mounts dtfs with the root node as a
symbolic link to /etc:
jojonaru# ./dtfs -r 'lnk /etc' /puffs
jojonaru# ls -l /puffs
lrw-rw-rw- 1 root wheel 4 May 17 14:06 /puffs -> /etc
jojonaru# cd /puffs
jojonaru# pwd
/etc
jojonaru#
Extra credit for figuring out how to unmount this file system with
umount(8).
Likewise, "dtfs -r 'chr 2 12' /puffs" makes /puffs (i386) /dev/zero etcetc.
2007-05-17 14:10:13 +00:00
pooka
d583f4a1ec
Unmount frequently requires some test code, so define it here as
...
a dummy instead of libpuffs to make plugging the test code in easier.
2007-05-07 17:22:50 +00:00