lkml.org 
[lkml]   [2012]   [Oct]   [31]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 2/5] mm: frontswap: lazy initialization to allow tmem backends to build/run as modules
Em 31-10-2012 15:05, Seth Jennings escreveu:
> On 10/31/2012 10:07 AM, Dan Magenheimer wrote:
>> +#define MAX_INITIALIZABLE_SD 32
>
> MAX_INITIALIZABLE_SD should just be MAX_SWAPFILES
>
>> +static int sds[MAX_INITIALIZABLE_SD];
>
> Rather than store and array of enabled types indexed by type, why not
> an array of booleans indexed by type. Or a bitfield if you really
> want to save space.

Since it is indexed by swap_info_struct's type, and frontswap already
pokes directly inside the swap_info_structs, it would be even cleaner to
use a boolean field within the swap_info_struct.

And if you are using a field within the swap_info_struct, you could
overload the already existing frontswap_map field, which should only
have any use if you have a frontswap module already loaded. That is,
move the vzalloc of the frontswap_map to within frontswap's init
function, and call it outside the swapfile_lock/swapon_mutex. This also
has the advantage of not allocating the frontswap_map when it is not
going to be used.

--
Cesar Eduardo Barros
cesarb@cesarb.net
cesar.barros@gmail.com


\
 
 \ /
  Last update: 2012-11-01 07:01    [W:0.538 / U:0.200 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site