NetBSD/lib/libpuffs
pooka d1d05d65b9 Implement lazy contexts for file systems using puffs_mainloop().
Previously each request was executed on its own callcontext and
switched to every time the request was being processed.  Now requests
borrow the mainloop context and switch only if/when they yield.
This takes two context switches away from a file system request
bringing down the typical amounts 2->0 (e.g. dtfs) and 4->2 (e.g.
psshfs).

The interfaces for manually executing requests changed a bit:
puffs_dispatch_create() and puffs_dispatch_exec() must now be used.
They are not tested, as nothing in-tree wants them and I doubt
anyone else is really interested in them either.

Also do some misc code cleanup related to execution contexts.  The
"work-in-progress checkpoint" committed over a year ago was starting
to look slightly weed-infested.
2008-01-28 18:35:49 +00:00
..
callcontext.c Implement lazy contexts for file systems using puffs_mainloop(). 2008-01-28 18:35:49 +00:00
creds.c Now that "l" is gone both as an argument to operations and from 2007-12-08 19:57:02 +00:00
dispatcher.c Implement lazy contexts for file systems using puffs_mainloop(). 2008-01-28 18:35:49 +00:00
flush.c free flushbuffer after use 2007-12-05 18:55:19 +00:00
framebuf.c Implement lazy contexts for file systems using puffs_mainloop(). 2008-01-28 18:35:49 +00:00
Makefile Part 3/n of extensive changes to message handling: 2007-12-04 21:24:10 +00:00
null.c Rototill. 2007-11-30 19:02:28 +00:00
opdump.c For operations with a target (remove, rmdir, link), print the 2008-01-27 00:29:24 +00:00
paths.c Move puffs to a two clause license where it already isn't so. And 2007-06-06 01:54:59 +00:00
pnode.c Add accessors for struct puffs_node to prepare for removal from 2007-08-17 17:25:31 +00:00
puffs_cc.3 Implement lazy contexts for file systems using puffs_mainloop(). 2008-01-28 18:35:49 +00:00
puffs_cred.3 Fix a typo that has migrated across files. 2007-12-01 19:18:49 +00:00
puffs_flush.3 Fix another persistent spello. 2007-12-01 19:54:01 +00:00
puffs_framebuf.3 Fix typo, remove superfluous minus and describe "fd" as file descriptor 2007-12-08 10:56:06 +00:00
puffs_node.3 Fix a typo that has migrated across files. 2007-12-01 19:18:49 +00:00
puffs_ops.3 Clarify that link_target in node_symlink is null-terminated. 2007-12-16 19:10:58 +00:00
puffs_path.3 Flesh this out a bit more. Unfortunately it's still unfinished, 2007-12-27 18:50:42 +00:00
puffs_priv.h Implement lazy contexts for file systems using puffs_mainloop(). 2008-01-28 18:35:49 +00:00
puffs_suspend.3 Fix spellos. 2007-01-28 07:58:05 +00:00
puffs.3 Implement lazy contexts for file systems using puffs_mainloop(). 2008-01-28 18:35:49 +00:00
puffs.c Implement lazy contexts for file systems using puffs_mainloop(). 2008-01-28 18:35:49 +00:00
puffs.h Implement lazy contexts for file systems using puffs_mainloop(). 2008-01-28 18:35:49 +00:00
puffsdump.h For operations with a target (remove, rmdir, link), print the 2008-01-27 00:29:24 +00:00
requests.c Implement lazy contexts for file systems using puffs_mainloop(). 2008-01-28 18:35:49 +00:00
shlib_version
subr.c Add generic getattr routine. 2007-12-19 14:01:16 +00:00
suspend.c fix request size 2007-11-17 17:12:11 +00:00
TODO stuff 2007-07-19 07:48:10 +00:00