public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Rebecca Cran via groups.io" <rebecca=os.amperecomputing.com@groups.io>
To: Oliver Smith-Denny <osde@linux.microsoft.com>, devel@edk2.groups.io
Cc: Leif Lindholm <quic_llindhol@quicinc.com>,
	Ard Biesheuvel <ardb+tianocore@kernel.org>,
	Jian J Wang <jian.j.wang@intel.com>,
	Liming Gao <gaoliming@byosoft.com.cn>,
	Dandan Bi <dandan.bi@intel.com>
Subject: Re: [edk2-devel] AArch64 with HeapGuard: page allocations wrongly aligned
Date: Mon, 22 Jan 2024 19:14:49 -0700	[thread overview]
Message-ID: <368894c0-b161-4e5b-a7a2-7a78c2101a37@os.amperecomputing.com> (raw)
In-Reply-To: <bc69eb0f-f1b4-4406-91b0-10b09103d58b@linux.microsoft.com>

On 1/22/2024 6:53 PM, Oliver Smith-Denny wrote:

> I was able to repro your bug (by just turning on page guards on
> ArmVirtQemu, allocating runtime mem and freeing it). I think you
> are the first person to free runtime mem on ARM64 with page guards
> enabled (and to care when it failed :).
> 
> The heap guard code is not written with ARM64 in mind (nor is much of
> the codebase, of course). Specifically in this case the heap guard code
> only wishes to preserve 4 KB alignment, it knows nothing of ARM64's
> runtime page granularity required.
> 
> Let me take a look at this, I'm working on a solution here, but I want
> to test this out further. I'll try to send a patch later this week or
> next.

Thanks! I wonder if the same problem occurs on LoongArch64, which also 
defines the runtime page allocation granularity to be 0x10000?


MdePkg/Include/X64/ProcessorBind.h
261:#define RUNTIME_PAGE_ALLOCATION_GRANULARITY  (0x1000)

MdePkg/Include/LoongArch64/ProcessorBind.h
89:#define RUNTIME_PAGE_ALLOCATION_GRANULARITY  (0x10000)

MdePkg/Include/RiscV64/ProcessorBind.h
120:#define RUNTIME_PAGE_ALLOCATION_GRANULARITY  (0x1000)

MdePkg/Include/Ia32/ProcessorBind.h
262:#define RUNTIME_PAGE_ALLOCATION_GRANULARITY  (0x1000)

MdePkg/Include/AArch64/ProcessorBind.h
164:#define RUNTIME_PAGE_ALLOCATION_GRANULARITY  (0x10000)

MdePkg/Include/Arm/ProcessorBind.h
170:#define RUNTIME_PAGE_ALLOCATION_GRANULARITY  (0x1000)

MdePkg/Include/Ebc/ProcessorBind.h
125:#define RUNTIME_PAGE_ALLOCATION_GRANULARITY  (0x1000)

-- 
Rebecca Cran


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#114164): https://edk2.groups.io/g/devel/message/114164
Mute This Topic: https://groups.io/mt/103810212/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



  reply	other threads:[~2024-01-23  2:15 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-01-18 15:27 [edk2-devel] AArch64 with HeapGuard: page allocations wrongly aligned Rebecca Cran via groups.io
2024-01-18 16:48 ` Oliver Smith-Denny
2024-01-18 17:42   ` Rebecca Cran via groups.io
2024-01-18 18:38     ` Oliver Smith-Denny
2024-01-18 18:45       ` Rebecca Cran via groups.io
2024-01-18 19:04         ` Oliver Smith-Denny
2024-01-18 19:26           ` Rebecca Cran via groups.io
     [not found]     ` <17AB84FD31479E00.28523@groups.io>
2024-01-18 19:26       ` Oliver Smith-Denny
2024-01-19 16:34         ` Rebecca Cran via groups.io
2024-01-19 20:03           ` Oliver Smith-Denny
2024-01-22 22:06             ` Rebecca Cran via groups.io
2024-01-23  1:53               ` Oliver Smith-Denny
2024-01-23  2:14                 ` Rebecca Cran via groups.io [this message]
2024-01-24 18:29                   ` Oliver Smith-Denny
     [not found]               ` <17ACD713D9397BBF.18300@groups.io>
2024-02-03  0:59                 ` Oliver Smith-Denny
2024-02-05 17:22                   ` Rebecca Cran via groups.io
2024-02-05 17:51                     ` Oliver Smith-Denny
2024-02-05 17:58                       ` Rebecca Cran via groups.io
2024-02-05 20:36                         ` Oliver Smith-Denny
     [not found]                         ` <17B111E492D567BB.26550@groups.io>
2024-02-06  4:20                           ` Oliver Smith-Denny

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=368894c0-b161-4e5b-a7a2-7a78c2101a37@os.amperecomputing.com \
    --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