Thread (59 messages) 59 messages, 2 authors, 2011-03-04

Re: [PATCHv2 00/24] Refactor sys_swapon

From: Eric B Munson <hidden>
Date: 2011-03-02 21:06:28

On Tue, 01 Mar 2011, Cesar Eduardo Barros wrote:
This patch series refactors the sys_swapon function.

sys_swapon is currently a very large function, with 313 lines (more than
12 25-line screens), which can make it a bit hard to read. This patch
series reduces this size by half, by extracting large chunks of related
code to new helper functions.

One of these chunks of code was nearly identical to the part of
sys_swapoff which is used in case of a failure return from
try_to_unuse(), so this patch series also makes both share the same
code.

As a side effect of all this refactoring, the compiled code gets a bit
smaller (from v1 of this patch series):

   text       data        bss        dec        hex    filename
  14012        944        276      15232       3b80    mm/swapfile.o.before
  13941        944        276      15161       3b39    mm/swapfile.o.after

The v1 of this patch series was lightly tested on a x86_64 VM.

Changes from v1:
  Rebased from v2.6.38-rc4 to v2.6.38-rc7.
I have tested this set on x86_64 by manually adding/removing swap files and
partitions.  Also I used the hugeadm program (fomr libhugetlbfs) to add
temporary swap files on disk and using ram disks.  All of this worked well.

Tested-by: Eric B Munson <redacted>

This can be applied to the entire set.

Attachments

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help