mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-02 00:24:12 +08:00
mm: correct the comment about the value for buddy _mapcount
Set _mapcount PAGE_BUDDY_MAPCOUNT_VALUE to make the page buddy. Not the magic number -2. Signed-off-by: Wang Sheng-Hui <shhuiw@gmail.com> Cc: Mel Gorman <mel@csn.ul.ie> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
fa0f281cf9
commit
cf6fe94538
@ -489,8 +489,10 @@ __find_buddy_index(unsigned long page_idx, unsigned int order)
|
|||||||
* (c) a page and its buddy have the same order &&
|
* (c) a page and its buddy have the same order &&
|
||||||
* (d) a page and its buddy are in the same zone.
|
* (d) a page and its buddy are in the same zone.
|
||||||
*
|
*
|
||||||
* For recording whether a page is in the buddy system, we set ->_mapcount -2.
|
* For recording whether a page is in the buddy system, we set ->_mapcount
|
||||||
* Setting, clearing, and testing _mapcount -2 is serialized by zone->lock.
|
* PAGE_BUDDY_MAPCOUNT_VALUE.
|
||||||
|
* Setting, clearing, and testing _mapcount PAGE_BUDDY_MAPCOUNT_VALUE is
|
||||||
|
* serialized by zone->lock.
|
||||||
*
|
*
|
||||||
* For recording page's order, we use page_private(page).
|
* For recording page's order, we use page_private(page).
|
||||||
*/
|
*/
|
||||||
@ -528,8 +530,9 @@ static inline int page_is_buddy(struct page *page, struct page *buddy,
|
|||||||
* as necessary, plus some accounting needed to play nicely with other
|
* as necessary, plus some accounting needed to play nicely with other
|
||||||
* parts of the VM system.
|
* parts of the VM system.
|
||||||
* At each level, we keep a list of pages, which are heads of continuous
|
* At each level, we keep a list of pages, which are heads of continuous
|
||||||
* free pages of length of (1 << order) and marked with _mapcount -2. Page's
|
* free pages of length of (1 << order) and marked with _mapcount
|
||||||
* order is recorded in page_private(page) field.
|
* PAGE_BUDDY_MAPCOUNT_VALUE. Page's order is recorded in page_private(page)
|
||||||
|
* field.
|
||||||
* So when we are allocating or freeing one, we can derive the state of the
|
* So when we are allocating or freeing one, we can derive the state of the
|
||||||
* other. That is, if we allocate a small block, and both were
|
* other. That is, if we allocate a small block, and both were
|
||||||
* free, the remainder of the region must be split into blocks.
|
* free, the remainder of the region must be split into blocks.
|
||||||
|
Loading…
Reference in New Issue
Block a user