* aa-200-active_page_swapout
@ 2002-03-20 4:03 Andrew Morton
2002-03-20 13:50 ` aa-200-active_page_swapout Rik van Riel
0 siblings, 1 reply; 3+ messages in thread
From: Andrew Morton @ 2002-03-20 4:03 UTC (permalink / raw)
To: lkml
Last one.
Don't bother checking for active pages in the swapout path.
Not sure about this one. Clearly the page isn't *likely* to be on the
active list, because the caller found it on the inactive list. But I
don't see any locking which would prevent the page from getting bumped
up to the active list in the meanwhile.
Needs more explanation.
=====================================
--- 2.4.19-pre3/mm/vmscan.c~aa-200-active_page_swapout Tue Mar 19 19:49:04 2002
+++ 2.4.19-pre3-akpm/mm/vmscan.c Tue Mar 19 19:49:04 2002
@@ -83,10 +83,6 @@ static inline int try_to_swap_out(struct
return 0;
}
- /* Don't bother unmapping pages that are active */
- if (PageActive(page))
- return 0;
-
/* Don't bother replenishing zones not under pressure.. */
if (!memclass(page_zone(page), classzone))
return 0;
-
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: aa-200-active_page_swapout
2002-03-20 4:03 aa-200-active_page_swapout Andrew Morton
@ 2002-03-20 13:50 ` Rik van Riel
2002-03-20 19:24 ` aa-200-active_page_swapout Andrew Morton
0 siblings, 1 reply; 3+ messages in thread
From: Rik van Riel @ 2002-03-20 13:50 UTC (permalink / raw)
To: Andrew Morton; +Cc: lkml
On Tue, 19 Mar 2002, Andrew Morton wrote:
> Don't bother checking for active pages in the swapout path.
>
> Not sure about this one. Clearly the page isn't *likely* to be on the
> active list, because the caller found it on the inactive list.
Mmmm nope.
The caller of swap_out (shrink_caches) may have been scanning the
inactive list, but swap_out itself scans the page tables.
This means it can encounter all kinds of pages, active, inactive
and even reserved pages.
> --- 2.4.19-pre3/mm/vmscan.c~aa-200-active_page_swapout Tue Mar 19 19:49:04 2002
> +++ 2.4.19-pre3-akpm/mm/vmscan.c Tue Mar 19 19:49:04 2002
> @@ -83,10 +83,6 @@ static inline int try_to_swap_out(struct
> return 0;
> }
>
> - /* Don't bother unmapping pages that are active */
> - if (PageActive(page))
> - return 0;
> -
> /* Don't bother replenishing zones not under pressure.. */
> if (!memclass(page_zone(page), classzone))
> return 0;
>
> -
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>
Rik
--
Bravely reimplemented by the knights who say "NIH".
http://www.surriel.com/ http://distro.conectiva.com/
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: aa-200-active_page_swapout
2002-03-20 13:50 ` aa-200-active_page_swapout Rik van Riel
@ 2002-03-20 19:24 ` Andrew Morton
0 siblings, 0 replies; 3+ messages in thread
From: Andrew Morton @ 2002-03-20 19:24 UTC (permalink / raw)
To: Rik van Riel; +Cc: lkml
Rik van Riel wrote:
>
> On Tue, 19 Mar 2002, Andrew Morton wrote:
>
> > Don't bother checking for active pages in the swapout path.
> >
> > Not sure about this one. Clearly the page isn't *likely* to be on the
> > active list, because the caller found it on the inactive list.
>
> Mmmm nope.
>
> The caller of swap_out (shrink_caches) may have been scanning the
> inactive list, but swap_out itself scans the page tables.
>
> This means it can encounter all kinds of pages, active, inactive
> and even reserved pages.
>
good point :)
So what does the patch do?
-
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2002-03-20 19:26 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-03-20 4:03 aa-200-active_page_swapout Andrew Morton
2002-03-20 13:50 ` aa-200-active_page_swapout Rik van Riel
2002-03-20 19:24 ` aa-200-active_page_swapout Andrew Morton
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox