Also, in order to keep track of swap space, a
<quote>list of holes
</quote> is kept in kernel memory, and this tends to get severely fragmented as well. Since the
<quote>list of holes
</quote> is a linear list, the swap allocation and freeing performance is a non-optimal O(n)-per-page.