linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Dan Magenheimer <dan.magenheimer@oracle.com>
To: Jan Beulich <JBeulich@novell.com>
Cc: hannes@cmpxchg.org, jackdachef@gmail.com, hughd@google.com,
	jeremy@goop.org, npiggin@kernel.dk, linux-mm@kvack.org,
	akpm@linux-foundation.org, sjenning@linux.vnet.ibm.com,
	Chris Mason <chris.mason@oracle.com>,
	Konrad Wilk <konrad.wilk@oracle.com>,
	Kurt Hackel <kurt.hackel@oracle.com>,
	riel@redhat.com, ngupta@vflare.org, linux-kernel@vger.kernel.org,
	matthew@wil.cx
Subject: RE: Subject: [PATCH V6 1/4] mm: frontswap: swap data structure changes
Date: Mon, 22 Aug 2011 10:08:08 -0700 (PDT)	[thread overview]
Message-ID: <cf3e6497-c77f-47eb-a35e-360ea68ade85@default> (raw)
In-Reply-To: <4E4179D90200007800050676@nat28.tlf.novell.com>

> From: Jan Beulich [mailto:JBeulich@novell.com]
> Sent: Tuesday, August 09, 2011 10:18 AM
> To: Dan Magenheimer
> Cc: hannes@cmpxchg.org; jackdachef@gmail.com; hughd@google.com; jeremy@goop.org; npiggin@kernel.dk;
> linux-mm@kvack.org; akpm@linux-foundation.org; sjenning@linux.vnet.ibm.com; Chris Mason; Konrad Wilk;
> Kurt Hackel; riel@redhat.com; ngupta@vflare.org; linux-kernel@vger.kernel.org; matthew@wil.cx
> Subject: RE: Subject: [PATCH V6 1/4] mm: frontswap: swap data structure changes
> 
> >>> On 09.08.11 at 17:03, Dan Magenheimer <dan.magenheimer@oracle.com> wrote:
> >> > --- linux/include/linux/swap.h	2011-08-08 08:19:25.880690134 -0600
> >> > +++ frontswap/include/linux/swap.h	2011-08-08 08:59:03.952691415 -0600
> >> > @@ -194,6 +194,8 @@ struct swap_info_struct {
> >> >  	struct block_device *bdev;	/* swap device or bdev of swap file */
> >> >  	struct file *swap_file;		/* seldom referenced */
> >> >  	unsigned int old_block_size;	/* seldom referenced */
> >>
> >> #ifdef CONFIG_FRONTSWAP
> >>
> >> > +	unsigned long *frontswap_map;	/* frontswap in-use, one bit per page */
> >> > +	unsigned int frontswap_pages;	/* frontswap pages in-use counter */
> >>
> >> #endif
> >>
> >> (to eliminate any overhead with that config option unset)
> >>
> >> Jan
> >
> > Hi Jan --
> >
> > Thanks for the review!
> >
> > As noted in the commit comment, if these structure elements are
> > not put inside an #ifdef CONFIG_FRONTSWAP, it becomes
> > unnecessary to clutter the core swap code with several ifdefs.
> > The cost is one pointer and one unsigned int per allocated
> > swap device (often no more than one swap device per system),
> > so the code clarity seemed more important than the tiny
> > additional runtime space cost.
> >
> > Do you disagree?
> 
> Not necessarily - I just know that in other similar occasions (partly
> internally to our company) I was asked to make sure turned off
> features would not leave *any* run time foot print whatsoever.
> 
> Jan

Hi Jan --

With two extra static inlines in frontswap.h (frontswap_map_get()
and frontswap_map_set(), I've managed to both avoid the extra swap struct
members for frontswap_map and frontswap_pages when CONFIG_FRONTSWAP is
disabled AND avoid the #ifdef CONFIG_FRONTSWAP clutter in swapfile.h.

I'll post a V7 soon... let me know what you think!

Thanks,
Dan

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  parent reply	other threads:[~2011-08-22 17:08 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-08-08 20:45 Subject: [PATCH V6 1/4] mm: frontswap: swap data structure changes Dan Magenheimer
2011-08-09 12:24 ` Jan Beulich
2011-08-09 15:03   ` Dan Magenheimer
2011-08-09 16:18     ` Jan Beulich
2011-08-09 17:43       ` Dan Magenheimer
2011-08-10  6:47         ` Jan Beulich
2011-08-22 17:08       ` Dan Magenheimer [this message]
2011-08-23  6:33         ` Jan Beulich

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=cf3e6497-c77f-47eb-a35e-360ea68ade85@default \
    --to=dan.magenheimer@oracle.com \
    --cc=JBeulich@novell.com \
    --cc=akpm@linux-foundation.org \
    --cc=chris.mason@oracle.com \
    --cc=hannes@cmpxchg.org \
    --cc=hughd@google.com \
    --cc=jackdachef@gmail.com \
    --cc=jeremy@goop.org \
    --cc=konrad.wilk@oracle.com \
    --cc=kurt.hackel@oracle.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=matthew@wil.cx \
    --cc=ngupta@vflare.org \
    --cc=npiggin@kernel.dk \
    --cc=riel@redhat.com \
    --cc=sjenning@linux.vnet.ibm.com \
    /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;
as well as URLs for NNTP newsgroup(s).