From: "xianglai" <lixianglai@loongson.cn>
To: devel@edk2.groups.io
Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>,
Bibo Mao <maobibo@loongson.cn>, Chao Li <lichao@loongson.cn>,
Leif Lindholm <quic_llindhol@quicinc.com>,
Liming Gao <gaoliming@byosoft.com.cn>,
Michael D Kinney <michael.d.kinney@intel.com>
Subject: Re: [edk2-devel] [edk2-platforms][PATCH V2 1/1] Platform/Loongson: Set Dxe common page size to 16k
Date: Thu, 1 Jun 2023 14:56:39 +0800 [thread overview]
Message-ID: <32fc0480-020f-f5f4-f626-2ba6a1713e6f@loongson.cn> (raw)
In-Reply-To: <175E4526EDF648E7.27409@groups.io>
There has been no response for a long time, welcome to give me some
suggestions for this patch.
On 5/12/23 10:42 AM, xianglai wrote:
> The loongarch qemu tcg code section is 16K aligned by default.
> When UEFI keep 4K alignment, the code section and data section
> of UEFI are loaded into the same page by qemu, and when the data
> is written to the page containing the code section, it will cause
> qemu to refresh TB, resulting in qemu running slowly.Therefore,
> setting Dxe to 16K alignment can ensure that the code section is
> loaded into a page separately, avoid qemu repeatedly refreshing TB,
> and speed up the execution speed of qemu.
>
> The following shows the impact of Dxe 4K alignment and 16K alignment
> on image size:
>
> DXE 4k alignment:
> DXEFV.FV 7.2M
> After compression:
> FVMAIN_COMPACT.Fv 3.4M
> QEMU_EFI.fd 3.7M
>
> DXE 16k alignment:
> DXEFV.FV 9.5M
> After compression:
> FVMAIN_COMPACT.Fv 3.4M
> QEMU_EFI.fd 3.7M
>
> Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>
> Cc: Bibo Mao <maobibo@loongson.cn>
> Cc: Chao Li <lichao@loongson.cn>
> Cc: Leif Lindholm <quic_llindhol@quicinc.com>
> Cc: Liming Gao <gaoliming@byosoft.com.cn>
> Cc: Michael D Kinney <michael.d.kinney@intel.com>
> Signed-off-by: xianglai li <lixianglai@loongson.cn>
> ---
> Platform/Loongson/LoongArchQemuPkg/Loongson.dsc | 7 ++++++-
> 1 file changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/Platform/Loongson/LoongArchQemuPkg/Loongson.dsc b/Platform/Loongson/LoongArchQemuPkg/Loongson.dsc
> index 6875e39cc6..13b27d84b8 100644
> --- a/Platform/Loongson/LoongArchQemuPkg/Loongson.dsc
> +++ b/Platform/Loongson/LoongArchQemuPkg/Loongson.dsc
> @@ -61,8 +61,13 @@
> [BuildOptions.LOONGARCH64.EDKII.SEC]
> *_*_*_CC_FLAGS =
>
> +#
> +# default page size is 16K for loongarch qemu tcg
> +# code section separated with data section with 16K page alignment, else data
> +# write operation in the same page with code section will cause qemu TB flush
> +#
> [BuildOptions.common.EDKII.DXE_CORE,BuildOptions.common.EDKII.DXE_DRIVER,BuildOptions.common.EDKII.UEFI_DRIVER,BuildOptions.common.EDKII.UEFI_APPLICATION]
> - GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
> + GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x4000
>
> [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER]
> GCC:*_*_LOONGARCH64_DLINK_FLAGS = -z common-page-size=0x10000
next prev parent reply other threads:[~2023-06-01 6:56 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <cover.1683859255.git.lixianglai@loongson.cn>
2023-05-12 2:42 ` [edk2-platforms][PATCH V2 1/1] Platform/Loongson: Set Dxe common page size to 16k xianglai
[not found] ` <175E4526EDF648E7.27409@groups.io>
2023-06-01 6:56 ` xianglai [this message]
2023-06-01 8:08 ` [edk2-devel] " Chao Li
2023-06-01 9:10 ` Ard Biesheuvel
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-list 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=32fc0480-020f-f5f4-f626-2ba6a1713e6f@loongson.cn \
--to=devel@edk2.groups.io \
/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