On Tue, 17 Apr 2012, Martin Schwidefsky wrote: > On Tue, 17 Apr 2012 13:29:25 +0100 > Mel Gorman <mgorman@xxxxxxx> wrote: > > > > In the zap_pte_range() case at least, pte_dirty() is only being checked > > for !PageAnon pages so if we took this approach we would miss > > PageSwapCache pages. If we added the check then the same problem is hit > > and we'd need additional logic there for s390 to drop the PTL, take the > > page lock and retry the operation. It'd still be ugly :( > > Well if x86 can get away with ignoring PageSwapCache pages in zap_pte_range() > pages then s390 should be able to get away with it as well, no ? When it's zap_pte_range() calling page_remove_rmap(), yes; but that's not the only caller of page_remove_rmap(), and I believe there's at least one caller which absolutely needs it to do that s390 set_page_dirty() on swap. But I don't see any need to be discussing ugly patches for this any more: there's a very simple patch which improves the swap path anyway, and if deemed advisable, we can also rearrange __add_to_swap_cache() a little. Hugh -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>