lkml.org 
[lkml]   [2006]   [Oct]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH] Use extents for recording what swap is allocated.
From
Date
Hi.

On Tue, 2006-10-24 at 21:42 +0100, Christoph Hellwig wrote:
> On Mon, Oct 23, 2006 at 02:14:17PM +1000, Nigel Cunningham wrote:
> > Switch from bitmaps to using extents to record what swap is allocated;
> > they make more efficient use of memory, particularly where the allocated
> > storage is small and the swap space is large.
> >
> > This is also part of the ground work for implementing support for
> > supporting multiple swap devices.
>
> In addition to the very useful comments from Rafael there's some observations
> of my own:
>
> - there's an awful lot of opencoded list manipulation, any chance you
> could use list.h instead?

IIRC, I avoided list.h because I only wanted a singly linked list (it
never gets traversed backwards). List.h looks to me like all doubly
linked lists. Do you know if there are any other singly linked list
implementations I could piggy-back?

That said, since there's normally not that many extents, I could switch
quite easily and it wouldn't normally waste much memory.

> - what unit are the extent values in? The usage of unsigned long rings
> warning bells for me, shouldn't this be something like pgoff_t or
> sector_t depending on what you describe with it?

For this use, they're swap extents. For another use I have in suspend2,
they're sector_t >> block_device_size. That's why I picked ul; something
generic in what's supposed to be a generic implementation.

Thanks for the comments.

Nigel

-
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/

\
 
 \ /
  Last update: 2006-10-25 00:09    [W:0.194 / U:0.064 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site