From 219291f40f0740901785fa4f4b9ce7d137cdb382 Mon Sep 17 00:00:00 2001 From: NAKAMURA Gou Date: Tue, 9 Jul 2013 19:28:21 +0900 Subject: [PATCH] =?UTF-8?q?exit=5Fgroup=20=E6=99=82=E3=81=AB=E7=A9=BA?= =?UTF-8?q?=E3=81=8D=E3=83=9A=E3=83=BC=E3=82=B8=E6=95=B0=E3=82=92=E8=A1=A8?= =?UTF-8?q?=E7=A4=BA=E3=81=99=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- kernel/mem.c | 10 +++++++--- kernel/syscall.c | 6 ++++++ 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/kernel/mem.c b/kernel/mem.c index 0ad1d0bc..2687d860 100644 --- a/kernel/mem.c +++ b/kernel/mem.c @@ -149,15 +149,19 @@ static struct ihk_mc_pa_ops allocator = { void sbox_write(int offset, unsigned int value); -static void query_free_mem_interrupt_handler(void *priv) +void query_free_mem_interrupt_handler(void *priv) { -#ifdef ATTACHED_MIC dkprintf("query free mem handler!\n"); int pages = ihk_pagealloc_query_free(pa_allocator); + static int first = -1; - dkprintf("free pages: %d\n", pages); + if (first < 0) { + first = pages; + } + kprintf("free pages: %d (%d)\n", pages, pages-first); +#ifdef ATTACHED_MIC sbox_write(SBOX_SCRATCH0, pages); sbox_write(SBOX_SCRATCH1, 1); #endif diff --git a/kernel/syscall.c b/kernel/syscall.c index 7128e1f1..5cbae6c7 100644 --- a/kernel/syscall.c +++ b/kernel/syscall.c @@ -510,6 +510,12 @@ SYSCALL_DECLARE(exit_group) #if 0 struct process *proc = cpu_local_var(current); + if (1) { + extern void query_free_mem_interrupt_handler(void *); + + query_free_mem_interrupt_handler(NULL); + } + #ifdef DCFA_KMOD do_mod_exit((int)ihk_mc_syscall_arg0(ctx)); #endif