- Fix for possible unset uid/gid in toproto
 - Fix for default mtree style
 - Update libelf
 - Importing libexecinfo
 - Resynchronize GCC, mpc, gmp, mpfr
 - build.sh: Replace params with show-params.
     This has been done as the make target has been renamed in the same
     way, while a new target named params has been added. This new
     target generates a file containing all the parameters, instead of
     printing it on the console.
 - Update test48 with new etc/services (Fix by Ben Gras <ben@minix3.org)
     get getservbyport() out of the inner loop
Change-Id: Ie6ad5226fa2621ff9f0dee8782ea48f9443d2091
		
	
			
		
			
				
	
	
		
			95 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
			
		
		
	
	
			95 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
.\"	$NetBSD: puffs_cc.3,v 1.14 2009/04/11 16:48:53 wiz Exp $
 | 
						|
.\"
 | 
						|
.\" Copyright (c) 2007, 2008 Antti Kantee.  All rights reserved.
 | 
						|
.\"
 | 
						|
.\" Redistribution and use in source and binary forms, with or without
 | 
						|
.\" modification, are permitted provided that the following conditions
 | 
						|
.\" are met:
 | 
						|
.\" 1. Redistributions of source code must retain the above copyright
 | 
						|
.\"    notice, this list of conditions and the following disclaimer.
 | 
						|
.\" 2. Redistributions in binary form must reproduce the above copyright
 | 
						|
.\"    notice, this list of conditions and the following disclaimer in the
 | 
						|
.\"    documentation and/or other materials provided with the distribution.
 | 
						|
.\"
 | 
						|
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
 | 
						|
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 | 
						|
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 | 
						|
.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
 | 
						|
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 | 
						|
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 | 
						|
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 | 
						|
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 | 
						|
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 | 
						|
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 | 
						|
.\" SUCH DAMAGE.
 | 
						|
.\"
 | 
						|
.Dd January 28, 2008
 | 
						|
.Dt PUFFS_CC 3
 | 
						|
.Os
 | 
						|
.Sh NAME
 | 
						|
.Nm puffs_cc
 | 
						|
.Nd puffs continuation routines
 | 
						|
.Sh LIBRARY
 | 
						|
.Lb libpuffs
 | 
						|
.Sh SYNOPSIS
 | 
						|
.In puffs.h
 | 
						|
.Ft void
 | 
						|
.Fn puffs_cc_yield "struct puffs_cc *pcc"
 | 
						|
.Ft void
 | 
						|
.Fn puffs_cc_continue "struct puffs_cc *pcc"
 | 
						|
.Ft void
 | 
						|
.Fn puffs_cc_schedule "struct puffs_cc *pcc"
 | 
						|
.Ft struct puffs_cc *
 | 
						|
.Fn puffs_cc_getcc "struct puffs_usermount *pu"
 | 
						|
.Sh DESCRIPTION
 | 
						|
These routines are used for the cooperative multitasking suite present
 | 
						|
in puffs.
 | 
						|
.Pp
 | 
						|
.Bl -tag -width xxxx
 | 
						|
.It Fn puffs_cc_yield "pcc"
 | 
						|
Suspend and save the current execution context and return control
 | 
						|
to the previous point.
 | 
						|
In practice, from the file system author perspective, control returns
 | 
						|
back to where either the mainloop or where
 | 
						|
.Fn puffs_dispatch_exec
 | 
						|
was called from.
 | 
						|
.It Fn puffs_cc_continue pcc
 | 
						|
Will suspend current execution and return control to where it was
 | 
						|
before before calling
 | 
						|
.Fn puffs_cc_yield .
 | 
						|
This is rarely called directly but rather through
 | 
						|
.Fn puffs_dispatch_exec .
 | 
						|
.It Fn puffs_cc_schedule "pcc"
 | 
						|
Schedule a continuation.
 | 
						|
As opposed to
 | 
						|
.Fn puffs_cc_continue
 | 
						|
this call returns immediately.
 | 
						|
.Fa pcc
 | 
						|
will be scheduled sometime in the future.
 | 
						|
.It Fn puffs_cc_getcc "pu"
 | 
						|
Returns the current pcc or
 | 
						|
.Dv NULL
 | 
						|
if this is the main thread.
 | 
						|
.Em NOTE :
 | 
						|
The argument
 | 
						|
.Ar pu
 | 
						|
will most likely disappear at some point.
 | 
						|
.El
 | 
						|
.Pp
 | 
						|
Before calling
 | 
						|
.Fn puffs_cc_yield
 | 
						|
a file system will typically want to record some cookie value into its
 | 
						|
own internal bookkeeping.
 | 
						|
This cookie should be hooked to the
 | 
						|
.Va pcc
 | 
						|
so that the correct continuation can be continued when the event it
 | 
						|
was waiting for triggers.
 | 
						|
Alternatively, the
 | 
						|
.Xr puffs_framebuf 3
 | 
						|
framework and
 | 
						|
.Fn puffs_mainloop
 | 
						|
can be used for handling this automatically.
 | 
						|
.Sh SEE ALSO
 | 
						|
.Xr puffs 3 ,
 | 
						|
.Xr puffs_framebuf 3
 |