public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: Kurt Kennett <Kurt.Kennett@microsoft.com>
To: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: edk2-devel <edk2-devel@lists.01.org>
Subject: Re: Problem with Arm Mmu code in CpuDxe
Date: Wed, 21 Sep 2016 17:54:06 +0000	[thread overview]
Message-ID: <BL2PR03MB433F88935CE93B609B526509CF60@BL2PR03MB433.namprd03.prod.outlook.com> (raw)
In-Reply-To: <CAKv+Gu-uCgipjshBmJ8dnaJxYjMHcnp+0B8YbKBQoyZAh-HbZw@mail.gmail.com>

Also, if that comment was correct, why would the code directly check for a pagetable:

    } else if (TT_DESCRIPTOR_SECTION_TYPE_IS_PAGE_TABLE(FirstLevelTable[i])) {

I think maybe the comment was out of date.

K2

-----Original Message-----
From: Ard Biesheuvel [mailto:ard.biesheuvel@linaro.org] 
Sent: Wednesday, September 21, 2016 10:21 AM
To: Kurt Kennett <Kurt.Kennett@microsoft.com>
Cc: edk2-devel <edk2-devel@lists.01.org>
Subject: Re: [edk2] Problem with Arm Mmu code in CpuDxe

On 21 September 2016 at 17:09, Kurt Kennett <Kurt.Kennett@microsoft.com> wrote:
> I am having a problem on my system (assert), and during investigation I may have found a problem with the Arm CpuDxe Mmu code that may affect all ARM platform users.
>
> CpuDxeInitialize is the entry point, and pretty soon after entry it does:
>
>   SyncCacheConfig (&mCpu);
>
> This calls into:
>   ArmPkg\Drivers\CpuDxe\Arm\Mmu.c
>
> The code asserts that the Mmu is enabled, gets the memory space map, then starts to process the page tables by getting the TTBR0 base address.

Before the assert, there is a comment that says

  // This code assumes MMU is enabled and filed [sic] with section translations

I don't know if this is a reasonable thing to assume, and how you end up violating this assumption, but it does explain why the code does not work correctly.

What does your memory map look like?

      parent reply	other threads:[~2016-09-21 17:54 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-09-21 16:09 Problem with Arm Mmu code in CpuDxe Kurt Kennett
2016-09-21 17:20 ` Ard Biesheuvel
2016-09-21 17:31   ` Kurt Kennett
2016-09-21 17:54   ` Kurt Kennett [this message]

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=BL2PR03MB433F88935CE93B609B526509CF60@BL2PR03MB433.namprd03.prod.outlook.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