Re: LogFS take five

Jörn Engel
2007-08-08T16:39:43Z

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