mm/swap: fix comment about swap extent
Since commit 4efaceb1c5
("mm, swap: use rbtree for swap_extent"), rbtree
is used for swap extent. Also curr_swap_extent is removed at that time.
Update the corresponding comment.
Link: https://lkml.kernel.org/r/20220509131416.17553-16-linmiaohe@huawei.com
Signed-off-by: Miaohe Lin <linmiaohe@huawei.com>
Cc: Alistair Popple <apopple@nvidia.com>
Cc: David Hildenbrand <david@redhat.com>
Cc: David Howells <dhowells@redhat.com>
Cc: Matthew Wilcox <willy@infradead.org>
Cc: Naoya Horiguchi <naoya.horiguchi@nec.com>
Cc: NeilBrown <neilb@suse.de>
Cc: Peter Xu <peterx@redhat.com>
Cc: Suren Baghdasaryan <surenb@google.com>
Cc: Vlastimil Babka <vbabka@suse.cz>
Cc: Oscar Salvador <osalvador@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
parent
133d2743ef
commit
ff351f4bb9
|
@ -168,8 +168,8 @@ struct zone;
|
|||
|
||||
/*
|
||||
* A swap extent maps a range of a swapfile's PAGE_SIZE pages onto a range of
|
||||
* disk blocks. A list of swap extents maps the entire swapfile. (Where the
|
||||
* term `swapfile' refers to either a blockdevice or an IS_REG file. Apart
|
||||
* disk blocks. A rbtree of swap extents maps the entire swapfile (Where the
|
||||
* term `swapfile' refers to either a blockdevice or an IS_REG file). Apart
|
||||
* from setup, they're handled identically.
|
||||
*
|
||||
* We always assume that blocks are of size PAGE_SIZE.
|
||||
|
|
|
@ -2208,8 +2208,8 @@ EXPORT_SYMBOL_GPL(add_swap_extent);
|
|||
|
||||
/*
|
||||
* A `swap extent' is a simple thing which maps a contiguous range of pages
|
||||
* onto a contiguous range of disk blocks. An ordered list of swap extents
|
||||
* is built at swapon time and is then used at swap_writepage/swap_readpage
|
||||
* onto a contiguous range of disk blocks. A rbtree of swap extents is
|
||||
* built at swapon time and is then used at swap_writepage/swap_readpage
|
||||
* time for locating where on disk a page belongs.
|
||||
*
|
||||
* If the swapfile is an S_ISBLK block device, a single extent is installed.
|
||||
|
@ -2217,12 +2217,12 @@ EXPORT_SYMBOL_GPL(add_swap_extent);
|
|||
* swap files identically.
|
||||
*
|
||||
* Whether the swapdev is an S_ISREG file or an S_ISBLK blockdev, the swap
|
||||
* extent list operates in PAGE_SIZE disk blocks. Both S_ISREG and S_ISBLK
|
||||
* extent rbtree operates in PAGE_SIZE disk blocks. Both S_ISREG and S_ISBLK
|
||||
* swapfiles are handled *identically* after swapon time.
|
||||
*
|
||||
* For S_ISREG swapfiles, setup_swap_extents() will walk all the file's blocks
|
||||
* and will parse them into an ordered extent list, in PAGE_SIZE chunks. If
|
||||
* some stray blocks are found which do not fall within the PAGE_SIZE alignment
|
||||
* and will parse them into a rbtree, in PAGE_SIZE chunks. If some stray
|
||||
* blocks are found which do not fall within the PAGE_SIZE alignment
|
||||
* requirements, they are simply tossed out - we will never use those blocks
|
||||
* for swapping.
|
||||
*
|
||||
|
@ -2231,10 +2231,7 @@ EXPORT_SYMBOL_GPL(add_swap_extent);
|
|||
*
|
||||
* The amount of disk space which a single swap extent represents varies.
|
||||
* Typically it is in the 1-4 megabyte range. So we can have hundreds of
|
||||
* extents in the list. To avoid much list walking, we cache the previous
|
||||
* search location in `curr_swap_extent', and start new searches from there.
|
||||
* This is extremely effective. The average number of iterations in
|
||||
* map_swap_page() has been measured at about 0.3 per page. - akpm.
|
||||
* extents in the rbtree. - akpm.
|
||||
*/
|
||||
static int setup_swap_extents(struct swap_info_struct *sis, sector_t *span)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue