From patchwork Wed Feb 26 18:10:17 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 183916 Delivered-To: patch@linaro.org Received: by 2002:a92:1f12:0:0:0:0:0 with SMTP id i18csp3453582ile; Wed, 26 Feb 2020 10:10:48 -0800 (PST) X-Google-Smtp-Source: APXvYqzgVuyxaKewV4zjMSeEDc2yINa7F0KJdiE3qOXqcGCmZ3UBfRIqlAt/mAM0gTWpxXBWUIxO X-Received: by 2002:a37:9d4b:: with SMTP id g72mr364198qke.195.1582740648506; Wed, 26 Feb 2020 10:10:48 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1582740648; cv=none; d=google.com; s=arc-20160816; b=cSZDqWdJqj+1qRUmcwvVOXLMhI7tLo5zz0Z3CHDx3qnWl+cm+CqsFCcbXbBpUbfEpc c9E1y/feIDsLWBy4f1u6eA4H58lLM5D55VK01kcTSbq5HEXU34RifWtb2wANn2zwkXhd SYKhr8gAau4DX7FKyiM6r6/Sya1kIcOuoM3lNkS4wEefexc/76LtAJiS4IMbAMbIB5iN v/BK4wibvshfFrJJQQWQjwtbn4q3ggnFs97GMBPgT2oZbrGC0FBvReYNREvcRGg3PSEY 0o+6ZwtVGZtaZ7pHry0YtqTuYnF567XAUXc0rg1FW0RhFSgCZKQFrcvsikXeDQBPhbM0 FP+A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:to:from :dkim-signature; bh=BW1rVVuvHSIHaMM8u2a8l8PWRGvK4vmAgMmHgrFc8bQ=; b=NnWgZhYcA/RaX3ra6hYNAcEWlr/Rl99rPWXGyqCuy6C3QA8HYV4YoOSmcciXlEt23u CAXJ5Gtb9M4Tj6COBql/fUHIaADK3KDWCEUVG7sm6/XgmwwxtSMgLAvEfRVF1d9Txj0M SrIsF7abpP5QICDCiETSDYGxT7ToQg37IiDZ6HhxpLJiqykr9nzrlnjT29xjP3KJAoQD L220mJpZ3WQFOdsft4Z01kTQ8LMVBjD/WlhNIjpz5c+zLpB0UNSXtRuwGGLsaCB77FQd OUkKHc3YR3M79tyqpBzuVUdGn7Rd2MHJXuOJSaosOQuGl/b+yJjSjE9l/exb8eN+g4+h 78UQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=NRWIeo+T; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id g9si150380qki.29.2020.02.26.10.10.48 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Wed, 26 Feb 2020 10:10:48 -0800 (PST) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=NRWIeo+T; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:48320 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j718y-0007WL-2P for patch@linaro.org; Wed, 26 Feb 2020 13:10:48 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:40652) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j718d-00076v-Fz for qemu-devel@nongnu.org; Wed, 26 Feb 2020 13:10:28 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1j718b-000642-Me for qemu-devel@nongnu.org; Wed, 26 Feb 2020 13:10:27 -0500 Received: from mail-wr1-x441.google.com ([2a00:1450:4864:20::441]:33449) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1j718b-000637-GQ for qemu-devel@nongnu.org; Wed, 26 Feb 2020 13:10:25 -0500 Received: by mail-wr1-x441.google.com with SMTP id u6so4331237wrt.0 for ; Wed, 26 Feb 2020 10:10:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=BW1rVVuvHSIHaMM8u2a8l8PWRGvK4vmAgMmHgrFc8bQ=; b=NRWIeo+TbwqyFHiuPlZeJfbjbxrZkRBenWPlixbEeIHkcZkhUjJOFOYs1KRoDIs1Cc Hr9SN7GFX/7lWvt5hq54iru7ozw0Q5eejip0/yJhULvtM+Q2Ib0LesSOnQ2TUXYDBPU0 4hFdevSeqtsXzulLw0a8IPGGGZix2HTUgVlOTiJ7V57S6iuVhTiJ+UenIOYLTOhRPaqa GUqqUWQJ4GRXQGijmul/6L9dB+hrbyohw5JkdA/MrlJr/O1ZqXA3ob9zzNqOPYnK5RIq 2quzMNw7AzaptbgvYjB8K1tj0nI9h9RfCv0ieXbzvdgHUuNfCOePTm6wyCdB7fvOgmwr VTBQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=BW1rVVuvHSIHaMM8u2a8l8PWRGvK4vmAgMmHgrFc8bQ=; b=hTooTRIYgwY72ahDXbDZdpMvzdqEzWuQg5WpUe+J3hZZ7VqBjVgL6qKA543UHyNE4Q /uOf26dX5P6LORTHb1n8ORqlk9fQTy3oKBu/ipm/C4eI94TR+Uv8JDwQfo93+lYMAmRj nWwb1XHVk/d4T6nH2Ts873dcbWD4nMOOxX3k6cHTdpSsGmPh5ElzkIK7kYJ9GXvYQ/io vJ3e06eluEMGnUobIAGjbJYdePZNIH3N3U01YhYTtBKvV7VcgRciOo1AwDAeW2fzC5H+ bNyUFd0XOhwzg79EaUvEzgqvSZW0O3W3PSfx2poY98wvkL+XnBZe8Wb2gYkE7Z8kdLtz Gacg== X-Gm-Message-State: APjAAAX9RBhDksUI8xfSNdxMx5JJ9mqnFnoF3XxjsvCEzX5RtZOwSKcw GB0c7Nzr0rJsFeW26Kb0CttkGYk7aAM= X-Received: by 2002:adf:f606:: with SMTP id t6mr6780858wrp.304.1582740624387; Wed, 26 Feb 2020 10:10:24 -0800 (PST) Received: from zen.linaroharston ([51.148.130.216]) by smtp.gmail.com with ESMTPSA id p26sm3725420wmc.24.2020.02.26.10.10.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 26 Feb 2020 10:10:21 -0800 (PST) Received: from zen.home.arpa (localhost [127.0.0.1]) by zen.linaroharston (Postfix) with ESMTP id E8FF51FF8C; Wed, 26 Feb 2020 18:10:20 +0000 (GMT) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: qemu-devel@nongnu.org Subject: [PATCH v1 1/4] accel/tcg: use units.h for defining code gen buffer sizes Date: Wed, 26 Feb 2020 18:10:17 +0000 Message-Id: <20200226181020.19592-2-alex.bennee@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20200226181020.19592-1-alex.bennee@linaro.org> References: <20200226181020.19592-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:4864:20::441 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Paolo Bonzini , qemu-arm@nongnu.org, =?utf-8?q?Al?= =?utf-8?q?ex_Benn=C3=A9e?= , Richard Henderson Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" It's easier to read. Signed-off-by: Alex Bennée --- accel/tcg/translate-all.c | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) -- 2.20.1 Reviewed-by: Niek Linnenbank Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Niek Linnenbank <nieklinnenbank@gmail.com>
 
Reviewed-by: Richard Henderson Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé diff --git a/accel/tcg/translate-all.c b/accel/tcg/translate-all.c index a08ab11f657..238b0e575bf 100644 --- a/accel/tcg/translate-all.c +++ b/accel/tcg/translate-all.c @@ -18,6 +18,7 @@ */ #include "qemu/osdep.h" +#include "qemu/units.h" #include "qemu-common.h" #define NO_CPU_IO_DEFS @@ -901,33 +902,33 @@ static void page_lock_pair(PageDesc **ret_p1, tb_page_addr_t phys1, /* Minimum size of the code gen buffer. This number is randomly chosen, but not so small that we can't have a fair number of TB's live. */ -#define MIN_CODE_GEN_BUFFER_SIZE (1024u * 1024) +#define MIN_CODE_GEN_BUFFER_SIZE (1 * MiB) /* Maximum size of the code gen buffer we'd like to use. Unless otherwise indicated, this is constrained by the range of direct branches on the host cpu, as used by the TCG implementation of goto_tb. */ #if defined(__x86_64__) -# define MAX_CODE_GEN_BUFFER_SIZE (2ul * 1024 * 1024 * 1024) +# define MAX_CODE_GEN_BUFFER_SIZE (2 * GiB) #elif defined(__sparc__) -# define MAX_CODE_GEN_BUFFER_SIZE (2ul * 1024 * 1024 * 1024) +# define MAX_CODE_GEN_BUFFER_SIZE (2 * GiB) #elif defined(__powerpc64__) -# define MAX_CODE_GEN_BUFFER_SIZE (2ul * 1024 * 1024 * 1024) +# define MAX_CODE_GEN_BUFFER_SIZE (2 * GiB) #elif defined(__powerpc__) -# define MAX_CODE_GEN_BUFFER_SIZE (32u * 1024 * 1024) +# define MAX_CODE_GEN_BUFFER_SIZE (32 * MiB) #elif defined(__aarch64__) -# define MAX_CODE_GEN_BUFFER_SIZE (2ul * 1024 * 1024 * 1024) +# define MAX_CODE_GEN_BUFFER_SIZE (2 * GiB) #elif defined(__s390x__) /* We have a +- 4GB range on the branches; leave some slop. */ -# define MAX_CODE_GEN_BUFFER_SIZE (3ul * 1024 * 1024 * 1024) +# define MAX_CODE_GEN_BUFFER_SIZE (3 * GiB) #elif defined(__mips__) /* We have a 256MB branch region, but leave room to make sure the main executable is also within that region. */ -# define MAX_CODE_GEN_BUFFER_SIZE (128ul * 1024 * 1024) +# define MAX_CODE_GEN_BUFFER_SIZE (128 * MiB) #else # define MAX_CODE_GEN_BUFFER_SIZE ((size_t)-1) #endif -#define DEFAULT_CODE_GEN_BUFFER_SIZE_1 (32u * 1024 * 1024) +#define DEFAULT_CODE_GEN_BUFFER_SIZE_1 (32 * MiB) #define DEFAULT_CODE_GEN_BUFFER_SIZE \ (DEFAULT_CODE_GEN_BUFFER_SIZE_1 < MAX_CODE_GEN_BUFFER_SIZE \ From patchwork Wed Feb 26 18:10:18 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 183918 Delivered-To: patch@linaro.org Received: by 2002:a92:1f12:0:0:0:0:0 with SMTP id i18csp3456117ile; Wed, 26 Feb 2020 10:13:01 -0800 (PST) X-Google-Smtp-Source: APXvYqxFd7rLPT5keOvaTRIIT8Fm3J9UF4mBHizsZMQHIwfsfn15xjcU3FSZ/Neckx+7I+c7aIvZ X-Received: by 2002:aed:2478:: with SMTP id s53mr67040qtc.292.1582740781727; Wed, 26 Feb 2020 10:13:01 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1582740781; cv=none; d=google.com; s=arc-20160816; b=hPy8BCciJGoatv+nPqZvdmisy0K/11y6kNlkG7L64KP29M/O/Pr/e7339aGt/t7/p0 jdGqeFWWWMhYAYhkmy4nxbcPduiZF6GNYjTsFEfoevinrXC3WBBaRpIz/Wx3Uif2L0lM Vq9jrhp7fGlQplim+bgwEvv5t6WxZbPWNUjYBjGPpYRmVo1xxhWxqJqwCfO0vChFlEAJ e9d9k+XTlQfp1iHZDwrVHj2XxoRf1jj3rbC0q37zfNwxS9zdNI+dl+CVLQAlw+zgPngQ kPY1tAtZH8CArsQUjTHpj3yOiGu0K92NpKA2G9WIvGfZhN7ecdeW+5febjPqM7nCl/bI MekQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:to:from :dkim-signature; bh=hTO2TJKTVn6zYRsBqCfNS47JQf5FFH1MtA261qT+XBk=; b=M/HSDYh39Rf62wEdiadb5MV8iyd/KE6PwGM18qXqT0a1IIgN6Y6N6hmzEPHK7VfXut Muri++1BCFkT8ZAoFLj3mDxI4q6TlOZvqGL7R9MkHtFyBVOOyzGRy6b6do0yiZ+X6Wgq nWbbAOI+i5Jd2Sae++3kIY/ema5x4+oEkOqNJYbbsiuJZdJJktiuZ8GDtoi+HguFoJNj fX9z8SP/qRIVmL5WeOfVQwn0W7o7tztus+MAOa6eHlG8a2ZT0meSYt89r1S58cJ5a3Zh Eo4fKUjT5fMPKw0IYanXIGIb1uev3kML16Mw+4QgIMBeoHNa3QEk/Ttj5/tq51i1LFko 29ug== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b="XhZKl9/y"; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id m9si130717qkh.284.2020.02.26.10.13.01 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Wed, 26 Feb 2020 10:13:01 -0800 (PST) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b="XhZKl9/y"; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:48372 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j71B7-0003S1-8s for patch@linaro.org; Wed, 26 Feb 2020 13:13:01 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:40661) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j718d-00077h-UN for qemu-devel@nongnu.org; Wed, 26 Feb 2020 13:10:28 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1j718c-00065A-PU for qemu-devel@nongnu.org; Wed, 26 Feb 2020 13:10:27 -0500 Received: from mail-wm1-x341.google.com ([2a00:1450:4864:20::341]:50577) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1j718c-00064S-Iu for qemu-devel@nongnu.org; Wed, 26 Feb 2020 13:10:26 -0500 Received: by mail-wm1-x341.google.com with SMTP id a5so284128wmb.0 for ; Wed, 26 Feb 2020 10:10:26 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=hTO2TJKTVn6zYRsBqCfNS47JQf5FFH1MtA261qT+XBk=; b=XhZKl9/y1LXlkcu4qnQDHpOSISFfZXX5rZTkBK3XsCMR7LgI/JUaD75+mDloiGDs+T DXpIrXPkXY90+FfirwZzGMYnna1qoqIjQnYRFbTq9zNYGmSXJxAe2cV4Sx+ZFWeSQ5uy 6Fg/RNivdqoJT3z0YPHlO+C4z5UpSDqsGFJWvYKm0BUfKNes/OEc16rr6bYiIlByZ2Yv XOw/lf2pQRxWwVkFScpLm274JOJ8tBR7W/SyED7t7ofrxHj1Y4Y8QtjfxcYfM4z05RFa eWK+wv+PK3az5Ez5I6MD6LlHHe8PAV4Y1Loejl1G34+ceN0QVFM1IY6D3uj+11egqODk Z5/A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=hTO2TJKTVn6zYRsBqCfNS47JQf5FFH1MtA261qT+XBk=; b=rA/ZhhilYWaW64TjBv/2haZY/lwBFyMzommhW/4ULX+VQKmOqhgrHvi4LX8j+PiSKc U+IMGxU/sdsiWpETj9XO0r7D9c7aqjKzyp+cWrMP+V3RwTqoq19/SngArF1TisC/TRVd AUWLKfrpJ5RZf5YgcYlcHNmu7D3oeGH53BWGou0CBYX03TQ6gymBTt6KtNxOAVO2boXo h9aoMgfpb9Dd+WmjrPP7CQKPI3lyt1NHNxHqIr9tNy5Bago2gRWgoIkPk3EX3dDLrDjT veCK5e8Whd7V0ZpulvQv9JB6jewfHNCtlIiFTLFPWDgZo6TfuJ49nv9gIEVyiJUPO38z xLow== X-Gm-Message-State: APjAAAWTYvsqnIcl+X7ViSJOnJOq0kaP8ino59LK3KX1zK5Ug1FO3rlI e8XMeKwDs3VUqurVSlZ0a60qWQ== X-Received: by 2002:a1c:a4c3:: with SMTP id n186mr110130wme.25.1582740625545; Wed, 26 Feb 2020 10:10:25 -0800 (PST) Received: from zen.linaroharston ([51.148.130.216]) by smtp.gmail.com with ESMTPSA id z10sm3867301wmk.31.2020.02.26.10.10.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 26 Feb 2020 10:10:21 -0800 (PST) Received: from zen.home.arpa (localhost [127.0.0.1]) by zen.linaroharston (Postfix) with ESMTP id 08C411FF8F; Wed, 26 Feb 2020 18:10:21 +0000 (GMT) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: qemu-devel@nongnu.org Subject: [PATCH v1 2/4] accel/tcg: remove link between guest ram and TCG cache size Date: Wed, 26 Feb 2020 18:10:18 +0000 Message-Id: <20200226181020.19592-3-alex.bennee@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20200226181020.19592-1-alex.bennee@linaro.org> References: <20200226181020.19592-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:4864:20::341 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Niek Linnenbank , qemu-arm@nongnu.org, Paolo Bonzini , Igor Mammedov , =?utf-8?q?Alex_Benn=C3=A9e?= , Richard Henderson Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" Basing the TB cache size on the ram_size was always a little heuristic and was broken by a1b18df9a4 which caused ram_size not to be fully realised at the time we initialise the TCG translation cache. The current DEFAULT_CODE_GEN_BUFFER_SIZE may still be a little small but follow-up patches will address that. Fixes: a1b18df9a4 Signed-off-by: Alex Bennée Cc: Niek Linnenbank Cc: Igor Mammedov --- accel/tcg/translate-all.c | 8 -------- 1 file changed, 8 deletions(-) -- 2.20.1 Tested-by: Niek Linnenbank Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Richard Henderson Tested-by: Philippe Mathieu-Daudé diff --git a/accel/tcg/translate-all.c b/accel/tcg/translate-all.c index 238b0e575bf..5b66af783b5 100644 --- a/accel/tcg/translate-all.c +++ b/accel/tcg/translate-all.c @@ -938,15 +938,7 @@ static inline size_t size_code_gen_buffer(size_t tb_size) { /* Size the buffer. */ if (tb_size == 0) { -#ifdef USE_STATIC_CODE_GEN_BUFFER tb_size = DEFAULT_CODE_GEN_BUFFER_SIZE; -#else - /* ??? Needs adjustments. */ - /* ??? If we relax the requirement that CONFIG_USER_ONLY use the - static buffer, we could size this on RESERVED_VA, on the text - segment size of the executable, or continue to use the default. */ - tb_size = (unsigned long)(ram_size / 4); -#endif } if (tb_size < MIN_CODE_GEN_BUFFER_SIZE) { tb_size = MIN_CODE_GEN_BUFFER_SIZE; From patchwork Wed Feb 26 18:10:19 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 183919 Delivered-To: patch@linaro.org Received: by 2002:a92:1f12:0:0:0:0:0 with SMTP id i18csp3456118ile; Wed, 26 Feb 2020 10:13:01 -0800 (PST) X-Google-Smtp-Source: APXvYqw4SAZh0VI7bpSpHhNaIU89BcP7KESkdG60Z3TwuRrGpuFFiwfbPFrzsAooijENI7J/vHBl X-Received: by 2002:a05:620a:12f0:: with SMTP id f16mr364145qkl.311.1582740781787; Wed, 26 Feb 2020 10:13:01 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1582740781; cv=none; d=google.com; s=arc-20160816; b=vgLkONOWfmqHZyotjfiSUj33DoAK7roWL3NT5iwHYqeu5AYLt6QTOl7WqnLS5w/zga lKxr/Ad5RaDqSaVXnCf9bM4gG/72JvD5cN2D9xuhHPGFe7SJlJJ/XDhNhuzIS5/AFacd 78fwqmtpq9VHvQRAYmhy8xFzXrtxO2GOXfWMS/O8R0lsWxKKfK9X0M+302VQl4qNHdkS Z6PvW+xRjjBejII2Ng5PNvKxLQFjkzGq6sCjXjARDecy3Sd+IIM3U8b3jJoWQ0zmegxy jkcP+chLva5lSWFl6su56Bq//oLG8Iauc7PMNZwDsxo4576ROrP/KN6tqym8BW9TGtjJ Dvmg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:to:from :dkim-signature; bh=qFnkfoP8m+qXflyejUwS/Vipa7DcI1oKmkPYEaLcY/E=; b=e60KOq+JHGiPYLG4KWg7uqrCxiXd8UnFiEYZk4AHw2tp/MqH3UKVkqAaUSMM/riRus Dxc+gHukXik8TiWpNDN5TRLg7oiF+wfiOD0pFleJLTO8K/OcbQmRWYOTtKR1FOgKruuS GGPooW5sLj1z3/a6CCfplj1ZfPdSjJXAqh6FBjCgmatmGWL37QozIApvj54mdwbtwWwC XDRZEN3cYqOuJ7NcHX+fPXWTX9dFwxWKaqxGZtWNeSwA6EdfVAjC23UGk7/CgHFcuzI7 gSUf1GkajoshTaSYG4M4rKkc8ASELr8UrU98Sp1paO15+DCUZuydoyCQ163zAxQWUMDU 22GQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=eQSzHAVF; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id o24si119635qki.330.2020.02.26.10.13.01 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Wed, 26 Feb 2020 10:13:01 -0800 (PST) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=eQSzHAVF; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:48374 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j71B7-0003S2-A2 for patch@linaro.org; Wed, 26 Feb 2020 13:13:01 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:40701) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j718g-0007DV-Ak for qemu-devel@nongnu.org; Wed, 26 Feb 2020 13:10:31 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1j718f-00067T-9q for qemu-devel@nongnu.org; Wed, 26 Feb 2020 13:10:30 -0500 Received: from mail-wm1-x344.google.com ([2a00:1450:4864:20::344]:52080) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1j718f-00066o-3d for qemu-devel@nongnu.org; Wed, 26 Feb 2020 13:10:29 -0500 Received: by mail-wm1-x344.google.com with SMTP id t23so276429wmi.1 for ; Wed, 26 Feb 2020 10:10:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=qFnkfoP8m+qXflyejUwS/Vipa7DcI1oKmkPYEaLcY/E=; b=eQSzHAVFumHhzYdBXmXaE+cLeTGQO0bIkGTK6aArG9UlqWjheMpZwpKL2FFgVCBK2A jrTISFiiSo7GVEZzZb5FDb5B10PDCEK94WFe8EA11eFdDJOjDVKNmt7Qjj/SQqpZtOTS naulW5shQLyMIwS/Sxe4vvJG1Jg03fulYxnAADa2iP7OMVL0l8A9VV302ePNKILWztuv tNfhuOBrR2YUAUidiH5j3D4e8QeGaYjxNb96U7k2pLCYi3foTMLgEVcWoyOfXUGlhibb WLQU+7ENJcHPPwKfrmyh7MfDZE+lGhk/Q1/QpCOfhCMGX6qJJoNyLwOz4pKCOe0QT/Y/ HcHw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=qFnkfoP8m+qXflyejUwS/Vipa7DcI1oKmkPYEaLcY/E=; b=XFaUy3J3bRx4pL/8RsNBeFafvuvcunxhJxFA6R8c9gksh5lLWm+9zLSOf019L0BS/1 yJPRM1BhQsMW8pY2yjNctX8hfvyQKzKX391V5mVHtxjWzFQMsGli0xyGrXARm3zSqaNx JZIkhXif3ppme0BvSG6lnnzQAZ2HAmOfPDoxFvwLHGSs+jhdv7GSQQy+IysgFK+5EH4g 9bkg0/yXkh97DHLicjXTIfn58vG4WVOQkKsE6m/HCVs/jfGqKtOrlkiBIuXu+KiWmUbQ a3eYjb79KCcqdoVP2Xxd3D43jEVMs3vEL1jk/KQvFGess+Z+krQNeSvHvVQ00jEVt4xl l8wA== X-Gm-Message-State: APjAAAWIa0OoF5RNBuD1ydb2iUnuc5WAqRmWcxWhgS7ODr85Bf1rQT/t UBEOtQWpaUhjmlMugg8lZZzkIw== X-Received: by 2002:a7b:c152:: with SMTP id z18mr132561wmi.70.1582740628019; Wed, 26 Feb 2020 10:10:28 -0800 (PST) Received: from zen.linaroharston ([51.148.130.216]) by smtp.gmail.com with ESMTPSA id a3sm4411073wrq.63.2020.02.26.10.10.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 26 Feb 2020 10:10:23 -0800 (PST) Received: from zen.home.arpa (localhost [127.0.0.1]) by zen.linaroharston (Postfix) with ESMTP id 1EC1B1FF90; Wed, 26 Feb 2020 18:10:21 +0000 (GMT) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: qemu-devel@nongnu.org Subject: [PATCH v1 3/4] accel/tcg: only USE_STATIC_CODE_GEN_BUFFER on 32 bit hosts Date: Wed, 26 Feb 2020 18:10:19 +0000 Message-Id: <20200226181020.19592-4-alex.bennee@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20200226181020.19592-1-alex.bennee@linaro.org> References: <20200226181020.19592-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:4864:20::344 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Paolo Bonzini , qemu-arm@nongnu.org, =?utf-8?q?Al?= =?utf-8?q?ex_Benn=C3=A9e?= , Richard Henderson Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" There is no particular reason to use a static codegen buffer on 64 bit hosts as we have address space to burn. Allow the common CONFIG_USER case to use the mmap'ed buffers like SoftMMU. Signed-off-by: Alex Bennée --- accel/tcg/translate-all.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) -- 2.20.1 Reviewed-by: Richard Henderson Reviewed-by: Philippe Mathieu-Daudé Tested-by: Philippe Mathieu-Daudé Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
diff --git a/accel/tcg/translate-all.c b/accel/tcg/translate-all.c index 5b66af783b5..4ce5d1b3931 100644 --- a/accel/tcg/translate-all.c +++ b/accel/tcg/translate-all.c @@ -892,11 +892,12 @@ static void page_lock_pair(PageDesc **ret_p1, tb_page_addr_t phys1, } } -#if defined(CONFIG_USER_ONLY) -/* Currently it is not recommended to allocate big chunks of data in - user mode. It will change when a dedicated libc will be used. */ -/* ??? 64-bit hosts ought to have no problem mmaping data outside the - region in which the guest needs to run. Revisit this. */ +#if defined(CONFIG_USER_ONLY) && TCG_TARGET_REG_BITS == 32 +/* + * For user mode on smaller 32 bit systems we may run into trouble + * allocating big chunks of data in the right place. On these systems + * we utilise a static code generation buffer directly in the binary. + */ #define USE_STATIC_CODE_GEN_BUFFER #endif From patchwork Wed Feb 26 18:10:20 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 183920 Delivered-To: patch@linaro.org Received: by 2002:a92:1f12:0:0:0:0:0 with SMTP id i18csp3457542ile; Wed, 26 Feb 2020 10:14:26 -0800 (PST) X-Google-Smtp-Source: APXvYqwwp8sEKnKAyysK6rP8Vdvko1ekpTYlIvE3K2qjMz6DpNmEAi5xR3CY2Njt9agB/nc5wJp7 X-Received: by 2002:ac8:450b:: with SMTP id q11mr75869qtn.212.1582740866563; Wed, 26 Feb 2020 10:14:26 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1582740866; cv=none; d=google.com; s=arc-20160816; b=Dr7stVK6P/68m8jcB5duMHUOBr+ZhoE3bniLt+/2CCrCnS81aFV5Q3maOq1ABNX3R1 MOBev2mg8gsj8mrfjYEHHcSPeK11VADp5SEpmQOOgPJ6h+MRDuMBGhgJ3+orYCZbLTaY 4SU38oXVQpS7p2dgd8PPqbaf1D9y3iGKnmCnEf02kMbyIpZGuVxtQ/VvnDpv++s7Zl0i WurEM81Ve0oiA8LAeGQJlgsKU35GjLTf7hJXSsNcC9QCk0FQh+YcSnIzn30zuBcylpSG b4ly0ifySo7eNkhG3vCVjMJ3SkC7ZPYSKP0OZTM7G4A0+l9wkwKG/5roZzpfL0GHGM/2 Zm4w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:to:from :dkim-signature; bh=mGdhokziaFlD24j2e180ug759eZelaxuW6pu6HeYdT8=; b=l4waykRmOQx6J/pxMf6zZ/LEIgw3Ro6T5xqysI/bmRWf7i/DNraRplCLVW1lnYzS87 EqPLdUM8i+t0IXllvWcwZS7N5GjHO49ZMOaSENTCKHRFCD5JKZBrBoz1TUOiqeD4sYLA z0Sur8y0Ltlsp4J2y+Zs1vBXADUsm6M5gPXJGJpKFCw5pr7d1IlcI1v6pD8XRAUHThNu bU+rdFR1h+hT/kN1otqB7pdRrjguF/LNz/VRqZ+SBunYE0X8JazyadPq6zhwE4hA2eMm hf5ULuoQ9a3wZoDcKjTOb2IYqhPH1YGP6dZG7YwerbzV6rtAYNAWDW3XPGVkYj7GBPNk Ej3g== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=S6PCTofg; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id d30si121083qtm.193.2020.02.26.10.14.26 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Wed, 26 Feb 2020 10:14:26 -0800 (PST) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=S6PCTofg; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:48418 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j71CU-0005XP-4H for patch@linaro.org; Wed, 26 Feb 2020 13:14:26 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:40732) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j718h-0007Gy-ED for qemu-devel@nongnu.org; Wed, 26 Feb 2020 13:10:32 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1j718g-00068Y-FG for qemu-devel@nongnu.org; Wed, 26 Feb 2020 13:10:31 -0500 Received: from mail-wr1-x442.google.com ([2a00:1450:4864:20::442]:37061) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1j718g-00067j-9M for qemu-devel@nongnu.org; Wed, 26 Feb 2020 13:10:30 -0500 Received: by mail-wr1-x442.google.com with SMTP id l5so4305157wrx.4 for ; Wed, 26 Feb 2020 10:10:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=mGdhokziaFlD24j2e180ug759eZelaxuW6pu6HeYdT8=; b=S6PCTofgeYtP2Wsm4aYo/W9iKZZgEEkaoEfhMSkuk3t1Gw1gr4k6Ei0rXViBm7YXON k9MUApcURl81lTk0y1GvkekR2TQE8wka0qKAdw/rKYg96Hou3ySxw57m1QJMBbW/UYiw Yg9teIYwwZHdAo8cKaMy990lCu5CSR9f4+6xxk7E/YhcPnfi8z5SO+hhbgpIGNuD+dji V4AHxWNrEWkaMR5Aij9+ZPs4jjuWRketPCY1enCZ4u5ZkfkZw4Zy8HdNd412kXlNg+6c TBSZj0eo5h8i9LPuWlxK2g2HAJ7thZc9oY+v9dwOtqxxw/gJkY6bS65f6l5OSwcuSMD/ CSOA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=mGdhokziaFlD24j2e180ug759eZelaxuW6pu6HeYdT8=; b=aZUefVf4gNd1AHE2vepf93jCyrlhhlm9GJ3Ll+rPQEUdwgm1AE/9yUN+Ow55wKCcbB s87yMsvjb9julad906z+rK99vPfTLMsEG1Ygr/NdJx+3YmU5Gms9o9HjxfpGEoW7KSMy wTFILWzkDGXcoOkZ2nl2vyaZbG4/tCDdxkeDAu0qQl9MQSt643B1mVuCAfNNebrjRmRb wU0TR9br33d22IZDOJBXPjBDwLKegbJ14/dn7k7zfKaZQU8m75153YQzEJBTh6LA2I4J ucnc6088BhpPMMfbOunysPib9iPSCJLQASUoTzFweRvuCH5l5KZpOwVvMumuALdYOUiP 5JKQ== X-Gm-Message-State: APjAAAUhCFy/3U3+HDTxZaEuoU0aZzBul5FrWuNpprYkKJVlaSe91P1s aXcJmDv4AspZGnPz9D6YZ/hhjQ== X-Received: by 2002:a5d:440f:: with SMTP id z15mr6669505wrq.420.1582740629273; Wed, 26 Feb 2020 10:10:29 -0800 (PST) Received: from zen.linaroharston ([51.148.130.216]) by smtp.gmail.com with ESMTPSA id n5sm4223973wrq.40.2020.02.26.10.10.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 26 Feb 2020 10:10:25 -0800 (PST) Received: from zen.home.arpa (localhost [127.0.0.1]) by zen.linaroharston (Postfix) with ESMTP id 326FD1FF91; Wed, 26 Feb 2020 18:10:21 +0000 (GMT) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: qemu-devel@nongnu.org Subject: [PATCH v1 4/4] accel/tcg: increase default code gen buffer size for 64 bit Date: Wed, 26 Feb 2020 18:10:20 +0000 Message-Id: <20200226181020.19592-5-alex.bennee@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20200226181020.19592-1-alex.bennee@linaro.org> References: <20200226181020.19592-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:4864:20::442 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Paolo Bonzini , qemu-arm@nongnu.org, =?utf-8?q?Al?= =?utf-8?q?ex_Benn=C3=A9e?= , Richard Henderson Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" While 32mb is certainly usable a full system boot ends up flushing the codegen buffer nearly 100 times. Increase the default on 64 bit hosts to take advantage of all that spare memory. After this change I can boot my tests system without any TB flushes. Signed-off-by: Alex Bennée --- accel/tcg/translate-all.c | 4 ++++ 1 file changed, 4 insertions(+) -- 2.20.1 Tested-by: Niek Linnenbank Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Tested-by: Niek Linnenbank <nieklinnenbank@gmail.com>
 
diff --git a/accel/tcg/translate-all.c b/accel/tcg/translate-all.c index 4ce5d1b3931..f7baa512059 100644 --- a/accel/tcg/translate-all.c +++ b/accel/tcg/translate-all.c @@ -929,7 +929,11 @@ static void page_lock_pair(PageDesc **ret_p1, tb_page_addr_t phys1, # define MAX_CODE_GEN_BUFFER_SIZE ((size_t)-1) #endif +#if TCG_TARGET_REG_BITS == 32 #define DEFAULT_CODE_GEN_BUFFER_SIZE_1 (32 * MiB) +#else +#define DEFAULT_CODE_GEN_BUFFER_SIZE_1 (2 * GiB) +#endif #define DEFAULT_CODE_GEN_BUFFER_SIZE \ (DEFAULT_CODE_GEN_BUFFER_SIZE_1 < MAX_CODE_GEN_BUFFER_SIZE \