lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Wed, 16 May 2007 15:57:39 -0400 From: Lee Schermerhorn <Lee.Schermerhorn@...com> To: linux-kernel <linux-kernel@...r.kernel.org>, linux-mm <linux-mm@...ck.org>, Andrew Morton <akpm@...ux-foundation.org> Cc: KAMEZAWA Hiroyuki <kamezawa.hiroyu@...fujitsu.com>, apw@...dowen.org, clameter@....com, akpm@...ux-foundation.org, ak@...e.de, jbarnes@...tuousgeek.org, Eric Whitney <eric.whitney@...com> Subject: [PATCH 2.6.21-rc1-mm1] add check_highest_zone to build_zonelists_in_zone_order [PATCH 2.6.21-rc1-mm1] add check_highest_zone to build_zonelists_in_zone_order We missed this in the "change zone order" series. We need to record the highest populated zone, just as build_zonelists_node() does. Memory policies apply only to this zone. Without this, we'll be applying policy to all zones, including DMA, I think. Not having thought about it much, I can't claim to understand the downside of doing so. Also, display selected "policy zone" during boot or reconfig of zonelist order, if 'NUMA. Inquiring minds [might] want to know... Cleanup: remove stale comment in set_zonelist_order() Signed-off-by: Lee Schermerhorn <lee.schermerhorn@...com> mm/page_alloc.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) Index: Linux/mm/page_alloc.c =================================================================== --- Linux.orig/mm/page_alloc.c 2007-05-16 10:32:20.000000000 -0400 +++ Linux/mm/page_alloc.c 2007-05-16 15:18:53.000000000 -0400 @@ -2037,7 +2037,7 @@ static char zonelist_order_name[3][8] = #ifdef CONFIG_NUMA -/* The vaule user specified ....changed by config */ +/* The value user specified ....changed by config */ static int user_zonelist_order = ZONELIST_ORDER_DEFAULT; /* string for sysctl */ #define NUMA_ZONELIST_ORDER_LEN 16 @@ -2215,8 +2215,10 @@ static void build_zonelists_in_zone_orde for (j = 0; j < nr_nodes; j++) { node = node_order[j]; z = &NODE_DATA(node)->node_zones[zone_type]; - if (populated_zone(z)) + if (populated_zone(z)) { zonelist->zones[pos++] = z; + check_highest_zone(zone_type); + } } } zonelist->zones[pos] = NULL; @@ -2278,7 +2280,6 @@ static int default_zonelist_order(void) static void set_zonelist_order(void) { - /* dummy, just select node order. */ if (user_zonelist_order == ZONELIST_ORDER_DEFAULT) current_zonelist_order = default_zonelist_order(); else @@ -2458,6 +2459,9 @@ void build_all_zonelists(void) zonelist_order_name[current_zonelist_order], page_group_by_mobility_disabled ? "off" : "on", vm_total_pages); +#ifdef CONFIG_NUMA + printk("Policy zone: %s\n", zone_names[policy_zone]); +#endif } /* - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists