> int
> cwfree(Device *dev, Off addr)
> {
> int state;
>
> if(dev->type == Devcw) {
> state = cwio(dev, addr, 0, Ofree);
> if(state != Cdirty)
> return 1; /* do not put in freelist */
> }
> return 0; /* put in freelist */
> }
>
> now, such a Cdirty block could just sit in the freelist for a while no?
> while the filesystem does many dump generations. if that Cdirty block
> becomes part of the filesystem again because it is allocated, then
> the next cwrecur() should pick it up and call split() on it.
why wouldn't it be marked for dump on the very
first dump?
- erik