Subject: Re: CVS commit: src/sys/ufs
To: None <abuse@spamalicious.com>
From: YAMAMOTO Takashi <yamt@mwd.biglobe.ne.jp>
List: source-changes
Date: 12/20/2004 14:49:25
> > > Remove some unnecessary (int32_t) casts that would cause us to screw up
> > > the top bit in block addresses.
> > >
> > > Also, change some daddr_t->int32_t casts (mostly as arguments to
> > > ufs_rw32(), where they would get promoted anyway) to u_int32_t.
> >
> > i don't think these changes are correct.
> > at least lfs depends on signed daddr_t.
> 
> How could that possibly matter?  daddr_t is 64 bits.  Any u_int32_t would get 
> promoted as is.  As far as I'm aware, neither FFS nor LFS put negative block 
> numbers *on disk*.

lfs uses special block number, UNWRITTEN (== -2).
although they shouldn't go to disk, you can find them in
in-core inodes/indirect blocks.

YAMAMOTO Takashi