Home | History | Annotate | Download | only in libpuffs
History log of /src/lib/libpuffs/subr.c
RevisionDateAuthorComments
 1.28  23-Sep-2019  christos Restore binary compatibility by using the statvfs90 structure internally.
 1.27  17-Feb-2011  pooka branches: 1.27.44;
Support rest of file types in vtype -> s_ifmt
 1.26  17-Feb-2011  pooka st_blocks is in units of DEV_BSIZE, not st_blksize.

from Derrik Pates
 1.25  15-Jul-2010  pooka branches: 1.25.2;
Default f_namemax to MAXNAMLEN, mostly for initial statvfs struct
passed to kernel in mount.

XXX: there's currently no way for a file server to override the
one passed in mount.
 1.24  28-Dec-2008  christos fix for dev_t 64 bits.
 1.23  12-Aug-2008  pooka Replace void * by puffs_cookie_t where appropriate. No functional change.
 1.22  19-Dec-2007  pooka branches: 1.22.6;
Add generic getattr routine.
 1.21  30-Nov-2007  pooka 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.
 1.20  27-Nov-2007  pooka 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.
 1.19  21-Oct-2007  pooka typo in comment
 1.18  01-Jul-2007  pooka branches: 1.18.4;
Instead of supplying a plain pid, supply an abstract struct puffs_cid *,
which can currently be used to query the pid and lwpid.
 1.17  06-Jun-2007  pooka 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...
 1.16  20-Mar-2007  pooka implement counterpart of vaccess()
 1.15  16-Mar-2007  pooka va->va_mode doesn't contain the full argument to the mknod() system call,
so introduce puffs_addvtype2mode() and use that in null.c to generate the
proper syscall argument
 1.14  15-Feb-2007  pooka generic node reclaim, which just puts a puffs_node
 1.13  11-Jan-2007  pooka Add preliminary code for a nullfs layer, which can be used to mount
a directory hierarchy to another point, just like with the kernel
nullfs. This is not really a layering scheme yet, but it should
evolve into one. Currently it can just be used to do 1:1 mapping.
 1.12  06-Jan-2007  pooka * get rid of the mount callback; it's no great surprise to the
server that it needs to mount the file system backend if it wants
to call mount
* provide some options for getmntopts(), assume that callers will parse
command line (or fstab) args
* reorganize the puffs_cc interface just a bit, preparing for a bigger
revamp later
 1.11  29-Dec-2006  pooka checkpoint some experimental work-in-progress, namely:

Add support for having multiple outstanding operations. This is done
by exposing enough interfaces so that it is convenient to have the
main event loop in the implementation itself and by providing a
continuation framework for convinient blocking and rescheduling.

works fine, but will undergo further cleanup & development
 1.10  07-Dec-2006  pooka rototill the operation callbacks: unify the ops under struct puffs_ops
and namespace them
 1.9  21-Nov-2006  pooka mode_t to enum vtype conversion
 1.8  14-Nov-2006  pooka namespace previous change under puffs_vfsnop to avoid confusions
 1.7  14-Nov-2006  pooka implement unmount, sync and statvfs as dummies for file system which
couldn't care less about implementing them
 1.6  23-Oct-2006  mrg use casts to properly truncate some assignments. (sparc64 gcc complained.)
 1.5  23-Oct-2006  christos put back the comparison in a lint friendly way to appease pooka.
 1.4  23-Oct-2006  dogcow comment out comparison of unsigned expression to >= 0
 1.3  23-Oct-2006  pooka still check for array bounds, fix off-by-one
 1.2  23-Oct-2006  christos pass lint; fix install.
 1.1  22-Oct-2006  pooka add libpuffs - the userspace programming interface for puffs

This work was initially started and completed for Google SoC 2005
and tweaked to work a bit better in the past few weeks. While
being far from complete, it is functional enough to be able and
stable to host a fairly general-purpose in-memory file system in
userspace. Even so, puffs should be considered experimental and
no binary compatibility for interfaces or crash-freedom or zero
security implications should be relied upon just yet.

The GSoC project was mentored by William Studenmund and the final
review for the code was done by Christos.
 1.18.4.2  09-Jan-2008  matt sync with HEAD
 1.18.4.1  06-Nov-2007  matt sync with HEAD
 1.22.6.1  18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.25.2.1  05-Mar-2011  bouyer Sync with HEAD
 1.27.44.1  13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411

RSS XML Feed