Subject: Re: some puffs rototill (fyi)
To: None <>
From: Antti Kantee <>
List: current-users
Date: 07/02/2007 13:30:48
On Mon Jul 02 2007 at 02:11:35 +0300, Antti Kantee wrote:
> Hi all,
> I was going to make some backward incompatible changes to the
> programming interface for a new feature, so I decided to flush a
> couple other changes I'd been wanting to make.  Here's a short
> summary of what changed.  In-tree file systems are up-to-date.
> * puffs_cred is now totally opaque.  it was opaque in principle
>   also before this, so any direct users were naughty anyway.
>   as a side-effect, pcn_cred is now a pointer
> * the pid_t parameter in some methods and puffs_cn has been replaced  
>   by puffs_cid (caller id ;).  method signatures need editing.  
>   use puffs_cid_getpid() to get the pid.  note that this no longer
>   overloads the swapper pid for non-process contexts.
> * instead of an array of random pointers passed to creation functions
>   (lookup, create, mknod, mkdir, symlink, fhtovp), struct puffs_newinfo
>   is now passed.  signatures need to be modified.  information on the
>   new node can be set using puffs_newinfo_set{cookie,vtype,size,rdev}.
> Yea, and as it turned out, I didn't need to introduce the incompatibility
> for the change that sparked all of this .... ;)

Missed one yesterday:
inactive no longer comes with the silly int *refs parameter.  Use
puffs_setback(pcc, PUFFS_SETBACK_NOREF_N1) if you want to achieve
"*refs = 0;".

(not that puffs_setback isn't silly, but at least it's less silly)

Antti Kantee <>                     Of course he runs NetBSD                
    "la qualité la plus indispensable du cuisinier est l'exactitude"