Subject: Re: dinode: di_spare[2]
To: None <tech-kern@NetBSD.ORG>
From: Darren Reed <darrenr@cyber.com.au>
List: tech-kern
Date: 12/02/1997 09:29:09
In some mail I received from John Kohl, sie wrote
>
> >>>>> "JS" == Jonathan Stone <jonathan@DSG.Stanford.EDU> writes:
>
> JS> Matthew Jacob <mjacob@ns.feral.com> writes:
>
> >> This is a pretty interesting idea. I'd like to point out that there's
> >> a performance penalty in this (if I understand what you're proposing)
> >> while the implied 'spare' usage allows NAS (amongst others) to directly
> >> use (locally) the spare fields for HSM.
What is NAS and HSM ?
> JS> Are these by any chance the same inode bits AFS steals? If so, that
> JS> would tend to interfere with any *BSD-specific usage, at least at many
> JS> academic sites.
>
> In theory, these uses could collide. However, (a) the AFS modules for
> NetBSD do not include server volume support, and (b) even if it did, AFS
> would have to use something other than the spare fields since there are
> not enough spares for AFS's needs in 4.4BSD FFS.
Do you (or anyone else ?) have any more detailed information on what AFS
does here ? I do know that SunOS 4 uses the last 16 bytes in their
"dinode" structure for storing values used in the kernel only:
/*
* XXX - the disk spares were used to avoid changing
* the size of the incore inode in a minor release.
* Fix for 5.0 release.
* Also remove the code in iget, iupdat that clears them.
*/
long ic_delaylen; /* 112: delayed writes, units=bytes */
long ic_delayoff; /* 116: where we started delaying */
long ic_nextrio; /* 120: where to start the next clust */
long ic_writes; /* 124: number of outstanding writes */
but that shouldn't be a problem - it's an earlier verison of `UFS' (0),
which already has certain differences to UFS versions 1 and 2.
Darren