Messages in this thread | | | Date | Tue, 9 Aug 2011 08:03:43 -0700 (PDT) | From | Dan Magenheimer <> | Subject | RE: Subject: [PATCH V6 1/4] mm: frontswap: swap data structure changes |
| |
> > --- 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?
Thanks, Dan
| |