Home | History | Annotate | Download | only in libsyspuffs
History log of /src/sys/rump/fs/lib/libsyspuffs/puffs_rumpglue.c
RevisionDateAuthorComments
 1.16  26-Jan-2016  pooka Put the kernelside rump kernel headers into <rump-sys> instead of
sprinkling them around the faction directories. Avoids having
to add a CPPFLAGS (or several) to pretty much every component
Makefile.

Leave compat headers around in the old locations.

The commit changes some autogenerated files, but I'll fix the
generators shortly and regen.
 1.15  10-May-2015  christos PR/975220: Check return of kthread_create
 1.14  10-May-2015  christos CID 274829: Check error from fd_getfile to avoid NULL deref immediately
after.
 1.13  30-Apr-2013  pooka branches: 1.13.12;
Make hypercall calling conventions consistent: iff a hypercall can fail,
it returns an int containing the error value.
 1.12  29-Apr-2013  pooka Reduce hypercalls related to reading to essentially an amalgamation
of readv and preadv. ditto for writing. Hypercalls are so seldomly
used that it doesn't justify 3x the calls for syntactic sugar.
 1.11  14-Oct-2009  pooka branches: 1.11.12; 1.11.22;
"rumppriv" goes back to "rump" per internal interface naming change.
 1.10  14-Oct-2009  pooka Adjust rump sources for external/internal interfaces.
No functional change.
 1.9  08-Jan-2009  pooka Put syspuffs_glueinit in the rump kernel namespace.
 1.8  07-Oct-2008  pooka branches: 1.8.2;
check rump_init() return value
 1.7  05-Sep-2008  pooka fix broken break (oh the irony)
 1.6  02-Sep-2008  pooka Make syspuffs mount code supply mount_syspuffs_parseargs() like
the other mount binaries do. Now syspuffs can be used to run all
puffs file systems as utilities. This includes fuse file systems
and becomes interesting with the fs-utils project. We can now do
e.g. this:

ReFUSE ntfs-3g:
golem> echo hello | fsu_write/fsu_write ntfs-3g puffs ~/img/ntfs.img dafile
golem> fsu_cat/fsu_cat ntfs-3g puffs ~/img/ntfs.img dafile
hello
golem>

puffs sysctlfs:
golem> fsu_ls/fsu_ls mount_sysctlfs puffs sysctl -l ddb
total 0
-r-xr-xr-x 1 pooka users 1 Sep 2 22:11 commandonenter
-r-xr-xr-x 1 pooka users 2 Sep 2 22:11 fromconsole
-r-xr-xr-x 1 pooka users 3 Sep 2 22:11 lines
-r-xr-xr-x 1 pooka users 8 Sep 2 22:11 maxoff
-r-xr-xr-x 1 pooka users 3 Sep 2 22:11 maxwidth
-r-xr-xr-x 1 pooka users 2 Sep 2 22:11 onpanic
-r-xr-xr-x 1 pooka users 3 Sep 2 22:11 radix
-r-xr-xr-x 1 pooka users 2 Sep 2 22:11 tabstops
-r-xr-xr-x 1 pooka users 2 Sep 2 22:11 tee_msgbuf

Same works for psshfs etcetc.

In other words, this provides total integration for "normal"
in-kernel file systems and puffs/fuse file systems on the ukfs
library level.

Note: implementation is still "first stab" and the fs-utils usage
will no doubt change.
 1.5  15-Aug-2008  pooka Since putter wants complete frames, make sure we can hand them to it.
 1.4  29-Jul-2008  pooka Install rump libraries and utilities to the base system and remove the
private non-installed build infrastructure from sys/rump.

breakdown of commit:
* install relevant headers into /usr/include/rump
* build sys/rump/librump/rumpuser and sys/rump/librump/rumpkern
from src/lib and install as librumpuser and librump, respectively
+ this retains the ability to test a librump build with just the
kernel sources at hand
* move sys/rump/fs/lib/libukfs and sys/rump/fs/lib/libp2k to src/lib
for general consumption, they are not kernel-space dwellers anyway
* build and install sys/rump/fs/lib/lib$fs as librumpfs_$fs
* add chapter 3 manual pages for rump, rumpuser, ukfs and p2k
* build and install userspace kernel file system daemons if MKPUFFS=yes
is spexified
* retire fsconsole for now, it will make a comeback with an actually
implemented version shortly
 1.3  21-Mar-2008  ad branches: 1.3.4; 1.3.6; 1.3.8; 1.3.10;
Catch up with descriptor handling changes. See kern_descrip.c revision
1.173 for details.
 1.2  27-Jan-2008  pooka branches: 1.2.2; 1.2.8;
Use vfs_subr.c from sys/kern. This brings differences in the vnode
life cycle between rump and a real kernel to a minimum.
 1.1  02-Jan-2008  pooka branches: 1.1.2; 1.1.4; 1.1.6;
Add the ability to run puffs in userspace. This means that puffs
can now be developed in userspace using puffs for development
(I hate emulators, they are annoyingly clumsy).

To e.g. mount psshfs using puffs-on-puffs, run fs/bin/syspuffs/syspuffs
with the regular mount_psshfs command line as an argument:

golem> ./syspuffs /usr/sbin/mount_psshfs ftp.netbsd.org:/pub /puffs

This will make the mount appear as usual, with the exception that the
requests will be passed through puffs both in the kernel and userspace:

ftp.netbsd.org:/pub on /puffs type puffs|p2k|puffs|psshfs
 1.1.6.4  24-Mar-2008  yamt sync with head.
 1.1.6.3  04-Feb-2008  yamt sync with head.
 1.1.6.2  21-Jan-2008  yamt sync with head
 1.1.6.1  02-Jan-2008  yamt file puffs_rumpglue.c was added on branch yamt-lazymbuf on 2008-01-21 09:47:40 +0000
 1.1.4.3  23-Mar-2008  matt sync with HEAD
 1.1.4.2  09-Jan-2008  matt sync with HEAD
 1.1.4.1  02-Jan-2008  matt file puffs_rumpglue.c was added on branch matt-armv6 on 2008-01-09 01:57:57 +0000
 1.1.2.2  02-Jan-2008  bouyer Sync with HEAD
 1.1.2.1  02-Jan-2008  bouyer file puffs_rumpglue.c was added on branch bouyer-xeni386 on 2008-01-02 21:57:49 +0000
 1.2.8.3  17-Jan-2009  mjf Sync with HEAD.
 1.2.8.2  28-Sep-2008  mjf Sync with HEAD.
 1.2.8.1  03-Apr-2008  mjf Sync with HEAD.
 1.2.2.2  18-Feb-2008  mjf Sync with HEAD.
 1.2.2.1  27-Jan-2008  mjf file puffs_rumpglue.c was added on branch mjf-devfs on 2008-02-18 21:07:19 +0000
 1.3.10.1  19-Oct-2008  haad Sync with HEAD.
 1.3.8.1  31-Jul-2008  simonb Sync with head.
 1.3.6.2  10-Oct-2008  skrll Sync with HEAD.
 1.3.6.1  18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.3.4.2  11-Mar-2010  yamt sync with head
 1.3.4.1  04-May-2009  yamt sync with head.
 1.8.2.1  19-Jan-2009  skrll Sync with HEAD.
 1.11.22.2  03-Dec-2017  jdolecek update from HEAD
 1.11.22.1  23-Jun-2013  tls resync from head
 1.11.12.1  22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.13.12.2  19-Mar-2016  skrll Sync with HEAD
 1.13.12.1  06-Jun-2015  skrll Sync with HEAD

RSS XML Feed