From patchwork Thu Nov 5 18:10:31 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Dr. David Alan Gilbert" X-Patchwork-Id: 540549 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 0F97F140770 for ; Fri, 6 Nov 2015 05:14:22 +1100 (AEDT) Received: from localhost ([::1]:34074 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZuP3E-0002fj-1m for incoming@patchwork.ozlabs.org; Thu, 05 Nov 2015 13:14:20 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43691) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZuP0g-0006fA-9k for qemu-devel@nongnu.org; Thu, 05 Nov 2015 13:11:43 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZuP0e-0003ZD-1U for qemu-devel@nongnu.org; Thu, 05 Nov 2015 13:11:42 -0500 Received: from mx1.redhat.com ([209.132.183.28]:57034) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZuP0d-0003YP-Se for qemu-devel@nongnu.org; Thu, 05 Nov 2015 13:11:39 -0500 Received: from int-mx10.intmail.prod.int.phx2.redhat.com (int-mx10.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by mx1.redhat.com (Postfix) with ESMTPS id 5D1DB36B14E; Thu, 5 Nov 2015 18:11:39 +0000 (UTC) Received: from dgilbert-t530.redhat.com (ovpn-116-77.ams2.redhat.com [10.36.116.77]) by int-mx10.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id tA5IBN1o025766; Thu, 5 Nov 2015 13:11:37 -0500 From: "Dr. David Alan Gilbert (git)" To: qemu-devel@nongnu.org Date: Thu, 5 Nov 2015 18:10:31 +0000 Message-Id: <1446747083-18205-5-git-send-email-dgilbert@redhat.com> In-Reply-To: <1446747083-18205-1-git-send-email-dgilbert@redhat.com> References: <1446747083-18205-1-git-send-email-dgilbert@redhat.com> X-Scanned-By: MIMEDefang 2.68 on 10.5.11.23 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 209.132.183.28 Cc: aarcange@redhat.com, yamahata@private.email.ne.jp, quintela@redhat.com, liang.z.li@intel.com, luis@cs.umu.se, bharata@linux.vnet.ibm.com, amit.shah@redhat.com, pbonzini@redhat.com, david@gibson.dropbear.id.au Subject: [Qemu-devel] [PATCH v9 04/56] Move page_size_init earlier X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org From: "Dr. David Alan Gilbert" The HOST_PAGE_ALIGN macros don't work until the page size variables have been set up; later in postcopy I use those macros in the RAM code, and it can be triggered using -object. Fix this by initialising page_size_init() earlier - it's currently initialised inside the accelerators, move it up into vl.c. Signed-off-by: Dr. David Alan Gilbert Reviewed-by: Juan Quintela --- include/exec/exec-all.h | 1 - include/qemu-common.h | 1 + kvm-all.c | 1 - qtest.c | 1 - vl.c | 1 + 5 files changed, 2 insertions(+), 3 deletions(-) diff --git a/include/exec/exec-all.h b/include/exec/exec-all.h index 9b93b9b..61d5128 100644 --- a/include/exec/exec-all.h +++ b/include/exec/exec-all.h @@ -72,7 +72,6 @@ void restore_state_to_opc(CPUArchState *env, struct TranslationBlock *tb, void cpu_gen_init(void); bool cpu_restore_state(CPUState *cpu, uintptr_t searched_pc); -void page_size_init(void); void QEMU_NORETURN cpu_resume_from_signal(CPUState *cpu, void *puc); void QEMU_NORETURN cpu_io_recompile(CPUState *cpu, uintptr_t retaddr); diff --git a/include/qemu-common.h b/include/qemu-common.h index 2f74540..405364f 100644 --- a/include/qemu-common.h +++ b/include/qemu-common.h @@ -499,5 +499,6 @@ size_t buffer_find_nonzero_offset(const void *buf, size_t len); int parse_debug_env(const char *name, int max, int initial); const char *qemu_ether_ntoa(const MACAddr *mac); +void page_size_init(void); #endif diff --git a/kvm-all.c b/kvm-all.c index 1bc1273..de3c8c4 100644 --- a/kvm-all.c +++ b/kvm-all.c @@ -1461,7 +1461,6 @@ static int kvm_init(MachineState *ms) * page size for the system though. */ assert(TARGET_PAGE_SIZE <= getpagesize()); - page_size_init(); s->sigmask_len = 8; diff --git a/qtest.c b/qtest.c index 8e10340..05cefd2 100644 --- a/qtest.c +++ b/qtest.c @@ -657,7 +657,6 @@ void qtest_init(const char *qtest_chrdev, const char *qtest_log, Error **errp) inbuf = g_string_new(""); qtest_chr = chr; - page_size_init(); } bool qtest_driver(void) diff --git a/vl.c b/vl.c index 8f24c30..904850d 100644 --- a/vl.c +++ b/vl.c @@ -4254,6 +4254,7 @@ int main(int argc, char **argv, char **envp) exit(1); } + page_size_init(); socket_init(); if (qemu_opts_foreach(qemu_find_opts("object"),