Re: [PATCH] Use extents for recording what swap is allocated.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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 [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux