Messages in this thread | | | Date | Wed, 8 Aug 2007 18:35:45 +0200 | From | Jörn Engel <> | Subject | Re: LogFS take five |
| |
On Wed, 8 August 2007 19:27:17 +0300, Artem Bityutskiy wrote: > On Wed, 2007-08-08 at 18:12 +0200, Jörn Engel wrote: > > It has been a while, mainly because I found a bunch of races and didn't > > want to publish anything before those were fixed. Patch is still > > against 2.6.21 and just for review. > > I'm very interested how do you account free/dirty space in LogFS:
Independently of the position where data goes. There is a known amount of space. Each write decreases that, each delete increases that. -ENOSPC when it gets too low.
> * When you need to write new data, how do you select the place where to > write?
Next position in the appropriate segment (you remember the level concept, I'm sure).
> * When you run out of space, how do select find the segment to > garbage-collect?
Most amount of free space usually. If space gets really tight, lower levels are ignored.
> For any given segment (or eraseblock), how do you find amount of free > and dirty space in it?
Scanning. I don't have seperate accounting yet.
Jörn
-- When in doubt, use brute force. -- Ken Thompson - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |