lkml.org 
[lkml]   [2006]   [Oct]   [25]   [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 Wed, 2006-10-25 at 10:42 +0200, Pavel Machek wrote:
> Hi!
>
> > > > With the code I have in Suspend2 (which is what I'm working towards),
> > > > the value includes the swap_type, so there's no overlap. Assuming the
> > > > swap allocator does it's normal thing and swap allocated is contiguous,
> > > > you'll probably end up with two extents: one containing the swap
> > > > allocated on the first device, and the other containing the swap
> > > > allocated on the second device. So (with the current version), striping
> > > > would use 6 * sizeof(unsigned long) instead of 3 * sizeof(unsigned
> > > > long).
> > >
> > > And now, can you do same computation assuming the swap allocator goes
> > > completely crazy, and free space is in 1-page chunks?
> >
> > The worst case is 3 * sizeof(unsigned long) *
> > number_of_swap_extents_allocated bytes.
>
> Okay, so if we got 4GB of swap space, thats 1MB swap pages, worst case
> is you have one extent per page, on x86-64 that's 24MB. +kmalloc
> overhead, I assume?

Sounds right.

> And you do linear walks over those extents, leading to O(n^2)
> algorithm, no? That has bitten us before...

We start from where we last added an extent on the chain by default.

You're not going to respond to the other bit of my reply? I was
beginning to think you were being more reasonable this time. Oh well.

Regards,

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 11:05    [W:0.079 / U:0.152 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site