From: Warner Losh <imp@bsdimp.com>
To: Richard Henderson <richard.henderson@linaro.org>
Cc: qemu-devel@nongnu.org, Kyle Evans <kevans@freebsd.org>,
qemu-arm@nongnu.org, Peter Maydell <peter.maydell@linaro.org>
Subject: Re: [PATCH 10/14] bsd-user: Hard wire aarch64 to be 4k pages only
Date: Mon, 22 Jul 2024 23:01:39 -0600 [thread overview]
Message-ID: <CANCZdfptOuaNavrM-rYgqOhgwATeY7vaNUrAMCEgm9ySFQP3wA@mail.gmail.com> (raw)
In-Reply-To: <11297acc-de3d-4e74-9e1c-5f08ed219269@linaro.org>
[-- Attachment #1: Type: text/plain, Size: 2351 bytes --]
On Mon, Jul 22, 2024 at 7:10 PM Richard Henderson <
richard.henderson@linaro.org> wrote:
> On 7/23/24 07:43, Warner Losh wrote:
> > Only support 4k pages for aarch64 binaries. The variable page size stuff
> > isn't working just yet, so put in this lessor-of-evils kludge until that
> > is complete.
>
> Hmm. In what way is it not working?
>
> What if we limit this to bsd-user/main.c instead?
>
> set_preferred_target_page_bits(TARGET_PAGE_BITS_MIN);
>
It's a compile issue that this won't solve:
In file included from ../bsd-user/aarch64/signal.c:21:
../bsd-user/qemu.h:146:20: warning: variable length array used [-Wvla]
146 | void *page[MAX_ARG_PAGES];
| ^~~~~~~~~~~~~
../bsd-user/qemu.h:138:23: note: expanded from macro 'MAX_ARG_PAGES'
138 | #define MAX_ARG_PAGES (TARGET_ARG_MAX / TARGET_PAGE_SIZE)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../bsd-user/qemu.h:146:20: note: initializer of 'target_page' is unknown
../bsd-user/qemu.h:138:41: note: expanded from macro 'MAX_ARG_PAGES'
138 | #define MAX_ARG_PAGES (TARGET_ARG_MAX / TARGET_PAGE_SIZE)
| ^
/dune/imp/git/qemu/include/exec/cpu-all.h:152:37: note: expanded from macro
'TARGET_PAGE_SIZE'
152 | # define TARGET_PAGE_SIZE (-(int)TARGET_PAGE_MASK)
| ^
/dune/imp/git/qemu/include/exec/cpu-all.h:150:44: note: expanded from macro
'TARGET_PAGE_MASK'
150 | # define TARGET_PAGE_MASK ((target_long)target_page.mask)
| ^
/dune/imp/git/qemu/include/exec/cpu-all.h:142:29: note: declared here
142 | extern const TargetPageBits target_page;
| ^
In file included from ../bsd-user/aarch64/signal.c:21:
../bsd-user/qemu.h:146:15: error: fields must have a constant size:
'variable length array in structure' extension will never be supported
146 | void *page[MAX_ARG_PAGES];
| ^
1 warning and 1 error generated.
ninja: build stopped: subcommand failed.
gmake: *** [Makefile:167: run-ninja] Error 1
that have a couple of additional levels after those issues are fixed...
It's fixable, but will take a fair amount more time that I have before the
deadline...
Warner
[-- Attachment #2: Type: text/html, Size: 3032 bytes --]
next prev parent reply other threads:[~2024-07-23 5:02 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-07-22 21:42 [PATCH 00/14] bsd-user: Misc changes for 9.1 (I hope) Warner Losh
2024-07-22 21:43 ` [PATCH 01/14] bsd-user:Add CPU initialization and management functions Warner Losh
2024-07-22 21:43 ` [PATCH 02/14] bsd-user:Add AArch64 register handling and related functions Warner Losh
2024-07-22 21:43 ` [PATCH 03/14] bsd-user:Add ARM AArch64 support and capabilities Warner Losh
2024-07-22 21:43 ` [PATCH 04/14] bsd-user:Add ARM AArch64 signal handling support Warner Losh
2024-07-22 21:43 ` [PATCH 05/14] bsd-user:Add get_mcontext function for ARM AArch64 Warner Losh
2024-07-22 21:43 ` [PATCH 06/14] bsd-user:Add setup_sigframe_arch " Warner Losh
2024-07-22 21:43 ` [PATCH 07/14] bsd-user:Add set_mcontext " Warner Losh
2024-07-22 21:43 ` [PATCH 08/14] bsd-user:Add AArch64 improvements and signal handling functions Warner Losh
2024-07-22 21:43 ` [PATCH 09/14] bsd-user: Simplify the implementation of execve Warner Losh
2024-07-23 1:03 ` Richard Henderson
2024-07-22 21:43 ` [PATCH 10/14] bsd-user: Hard wire aarch64 to be 4k pages only Warner Losh
2024-07-23 1:10 ` Richard Henderson
2024-07-23 5:01 ` Warner Losh [this message]
2024-07-23 5:38 ` Richard Henderson
2024-07-22 21:43 ` [PATCH 11/14] bsd-user: Sync fork_start/fork_end with linux-user Warner Losh
2024-07-23 1:13 ` Richard Henderson
2024-07-22 21:43 ` [PATCH 12/14] bsd-user: Define TARGET_SIGSTACK_ALIGN and use it to round stack Warner Losh
2024-07-23 1:14 ` Richard Henderson
2024-07-22 21:43 ` [PATCH 13/14] bsd-user: Make compile for non-linux user-mode stuff Warner Losh
2024-07-22 22:01 ` Philippe Mathieu-Daudé
2024-07-22 23:09 ` Alex Bennée
2024-07-23 5:12 ` Warner Losh
2024-07-23 1:15 ` Richard Henderson
2024-07-22 21:43 ` [PATCH 14/14] bsd-user: Add aarch64 build to tree Warner Losh
2024-07-22 21:54 ` Philippe Mathieu-Daudé
2024-07-22 22:06 ` Warner Losh
2024-07-22 22:11 ` Philippe Mathieu-Daudé
2024-07-23 1:17 ` Richard Henderson
2024-07-23 5:08 ` Warner Losh
2024-07-23 5:10 ` Warner Losh
2024-07-23 6:38 ` Philippe Mathieu-Daudé
2024-07-23 16:54 ` Warner Losh
2024-07-23 5:39 ` Richard Henderson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CANCZdfptOuaNavrM-rYgqOhgwATeY7vaNUrAMCEgm9ySFQP3wA@mail.gmail.com \
--to=imp@bsdimp.com \
--cc=kevans@freebsd.org \
--cc=peter.maydell@linaro.org \
--cc=qemu-arm@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=richard.henderson@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).