From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lee Schermerhorn Subject: [PATCH/RFC 4/11] numa - Automatic-migration - ia64 check notify migrate pending Date: Thu, 11 Nov 2010 15:01:36 -0500 Message-ID: <20101111200136.12641.98157.sendpatchset@zaphod.localdomain> References: <20101111200103.12641.80303.sendpatchset@zaphod.localdomain> Return-path: In-Reply-To: <20101111200103.12641.80303.sendpatchset@zaphod.localdomain> Sender: linux-numa-owner@vger.kernel.org List-ID: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: linux-numa@vger.kernel.org Cc: akpm@linux-foundation.org, Mel Gorman , cl@linux-foundation.org, Nick Piggin , Hugh Dickins , KOSAKI Motohiro , andi@firstfloor.org, David Rientjes , Avi Kivity , Andrea Arcangeli AutoPage Migration - ia64 check/notify internode migration NOTE: not recently tested on ia64 This patch hooks the check for task memory migration pending into the ia64 do_notify_resume() function. Call to check_migrate_pending() is a no-op if automigration is not configured. TODO: reconcile automigration and trace use of 'NOTIFY_RESUME Signed-off-by: Lee Schermerhorn arch/ia64/kernel/process.c | 9 +++++++++ 1 file changed, 9 insertions(+) Index: linux-2.6.36-mmotm-101103-1217/arch/ia64/kernel/process.c =================================================================== --- linux-2.6.36-mmotm-101103-1217.orig/arch/ia64/kernel/process.c +++ linux-2.6.36-mmotm-101103-1217/arch/ia64/kernel/process.c @@ -29,6 +29,7 @@ #include #include #include +#include #include #include @@ -193,12 +194,20 @@ do_notify_resume_user(sigset_t *unused, pfm_handle_work(); #endif + /* + * check for task memory migration before delivering + * signals so that hander[s] use memory in new node. + */ + check_migrate_pending(); + /* deal with pending signal delivery */ if (test_thread_flag(TIF_SIGPENDING)) { local_irq_enable(); /* force interrupt enable */ ia64_do_signal(scr, in_syscall); } +//TODO: make sure tracehook_notify_resume() is NO-OP if not enabled +// by something other than TIF_NOTIFY_RESUME which is general flag. if (test_thread_flag(TIF_NOTIFY_RESUME)) { clear_thread_flag(TIF_NOTIFY_RESUME); tracehook_notify_resume(&scr->pt);