Re: [PATCH 2/5] mm: frontswap: lazy initialization to allow tmem backends to build/run as modules

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

 



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@xxxxxxxxxx
cesar.barros@xxxxxxxxx

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>


[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]