From: "Rafael J. Wysocki" <rjw@sisk.pl>
To: Nigel Cunningham <ncunningham@linuxmail.org>
Cc: Andrew Morton <akpm@osdl.org>,
LKML <linux-kernel@vger.kernel.org>, Pavel Machek <pavel@ucw.cz>
Subject: Re: [PATCH] Use extents for recording what swap is allocated.
Date: Wed, 25 Oct 2006 00:45:38 +0200 [thread overview]
Message-ID: <200610250045.38812.rjw@sisk.pl> (raw)
In-Reply-To: <1161727981.22729.18.camel@nigel.suspend2.net>
Hi,
On Wednesday, 25 October 2006 00:13, Nigel Cunningham wrote:
> Hi.
>
> On Tue, 2006-10-24 at 22:08 +0200, Rafael J. Wysocki wrote:
> > On Monday, 23 October 2006 06:14, 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.
> >
> > As I said before, I like the overall idea, but I have a bunch of comments.
>
> Thanks for them. Just a quick reply for the moment to say they're
> appreciated and I will revise accordingly.
>
> I should also mention that this isn't the only use of these functions in
> Suspend2.
Could we please focus on things that are on the table _now_?. You are
submitting the patch aganist the current code and I can only review it
in this context. I can't say if I like your _future_ patches at this moment! :-)
> There I also use extents to record the blocks to which the
> image will be written. I hope to submit modifications to swsusp to do
> that too in the near future.
>
> > > +/* Simplify iterating through all the values in an extent chain */
> > > +#define suspend_extent_for_each(extent_chain, extentpointer, value) \
> > > +if ((extent_chain)->first) \
> > > + for ((extentpointer) = (extent_chain)->first, (value) = \
> > > + (extentpointer)->minimum; \
> > > + ((extentpointer) && ((extentpointer)->next || (value) <= \
> > > + (extentpointer)->maximum)); \
> > > + (((value) == (extentpointer)->maximum) ? \
> > > + ((extentpointer) = (extentpointer)->next, (value) = \
> > > + ((extentpointer) ? (extentpointer)->minimum : 0)) : \
> > > + (value)++))
> >
> > This macro doesn't look very nice and is used only once, so I think you
> > can drop it and just write the loop where it belongs.
>
> With the modifications I mentioned just above, this would also be used
> for getting the blocks which match each swap extent. I can remove the
> macro, but just want to make you aware that it does serve a purpose,
> you're just not seeing it fully yet.
Can we just assume there are no other patches and proceed under this
assumption?
Could you please remove the macro for now? You can introduce it with the
other patches when you submit them (if it's still needed at that time).
Greetings,
Rafael
--
You never change things by fighting the existing reality.
R. Buckminster Fuller
next prev parent reply other threads:[~2006-10-24 22:46 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-10-23 4:14 [PATCH] Use extents for recording what swap is allocated Nigel Cunningham
2006-10-23 15:32 ` Pavel Machek
2006-10-23 23:04 ` Nigel Cunningham
2006-10-24 8:43 ` Rafael J. Wysocki
2006-10-24 20:08 ` Rafael J. Wysocki
2006-10-24 21:34 ` Pavel Machek
2006-10-24 21:58 ` Rafael J. Wysocki
2006-10-24 22:15 ` Nigel Cunningham
2006-10-24 22:19 ` Pavel Machek
2006-10-24 22:30 ` Nigel Cunningham
2006-10-25 8:11 ` Pavel Machek
2006-10-25 8:28 ` Nigel Cunningham
2006-10-25 8:42 ` Pavel Machek
2006-10-25 9:01 ` Nigel Cunningham
2006-10-25 9:10 ` Pavel Machek
2006-10-25 10:05 ` Nigel Cunningham
2006-10-25 12:46 ` Rafael J. Wysocki
2006-10-27 11:37 ` Pavel Machek
2006-10-24 22:13 ` Nigel Cunningham
2006-10-24 22:45 ` Rafael J. Wysocki [this message]
2006-10-24 23:05 ` Nigel Cunningham
2006-10-31 11:39 ` Nigel Cunningham
2006-10-24 20:42 ` Christoph Hellwig
2006-10-24 20:58 ` Rafael J. Wysocki
2006-10-24 22:06 ` Nigel Cunningham
2006-10-24 22:47 ` Christoph Hellwig
2006-10-24 23:03 ` Nigel Cunningham
2006-10-25 9:17 ` Jens Axboe
2006-10-25 10:07 ` Nigel Cunningham
2006-10-25 10:20 ` Jens Axboe
2006-10-31 11:38 ` Nigel Cunningham
2006-11-01 12:36 ` Pavel Machek
2006-11-01 21:19 ` Nigel Cunningham
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200610250045.38812.rjw@sisk.pl \
--to=rjw@sisk.pl \
--cc=akpm@osdl.org \
--cc=linux-kernel@vger.kernel.org \
--cc=ncunningham@linuxmail.org \
--cc=pavel@ucw.cz \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox