From: dave.martin@linaro.org (Dave Martin)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 0/4] Consolidate identity mapping code in idmap.c
Date: Thu, 17 Nov 2011 13:47:55 +0000 [thread overview]
Message-ID: <20111117134755.GB3044@localhost.localdomain> (raw)
In-Reply-To: <1321462094-6647-1-git-send-email-will.deacon@arm.com>
On Wed, Nov 16, 2011 at 04:48:10PM +0000, Will Deacon wrote:
> Hello,
>
> This patch series consolidates the identity mapping code into idmap.c,
> where a single set of page tables (idmap_pgd) are allocated and populated
> at init time for use by subsystems such as soft reboot, kexec and CPU
> suspend.
>
> A new linker section (.idmap.text) is introduced so that code which
> needs to be identity mapped can be annotated with __idmap or, if written
> in assembly, placed there explicitly.
>
> CPU suspend, cpu_*_reset and setup_mm_for_reboot are all updated to work
> with the new mapping code.
>
> This is currently based on 3.2-rc2, but will be based on Russell's reset
> branch when it comes to merging (where the prototype of
> setup_mm_for_reboot has changed slightly). Furthermore, I have rebased
> my kexec series against this which I will post separately.
>
> Comments welcome.
I haven't exhaustively checked every detail, but this looks like a
cleaner, more scalabale and more robust way to handle code which needs
to be identity-mapped compared with what we had previously; so I'm in
favour of it.
FWIW
Acked-by: Dave Martin <dave.martin@linaro.org>
>
> Cheers,
>
> Will
>
>
> Will Deacon (4):
> ARM: idmap: populate identity map pgd at init time using .init.text
> ARM: suspend: use idmap_pgd instead of suspend_pgd
> ARM: proc-*.S: place cpu_reset functions into .idmap.text section
> ARM: idmap: use idmap_pgd when setting up mm for reboot
>
> arch/arm/include/asm/idmap.h | 11 ++++++++
> arch/arm/kernel/sleep.S | 2 +
> arch/arm/kernel/suspend.c | 17 ++----------
> arch/arm/kernel/vmlinux.lds.S | 1 +
> arch/arm/mm/idmap.c | 49 ++++++++++++++++++++++++++++++-------
> arch/arm/mm/proc-arm1020.S | 3 ++
> arch/arm/mm/proc-arm1020e.S | 3 ++
> arch/arm/mm/proc-arm1022.S | 3 ++
> arch/arm/mm/proc-arm1026.S | 3 ++
> arch/arm/mm/proc-arm6_7.S | 4 +++
> arch/arm/mm/proc-arm720.S | 3 ++
> arch/arm/mm/proc-arm740.S | 3 ++
> arch/arm/mm/proc-arm7tdmi.S | 3 ++
> arch/arm/mm/proc-arm920.S | 3 ++
> arch/arm/mm/proc-arm922.S | 3 ++
> arch/arm/mm/proc-arm925.S | 3 ++
> arch/arm/mm/proc-arm926.S | 3 ++
> arch/arm/mm/proc-arm940.S | 3 ++
> arch/arm/mm/proc-arm946.S | 3 ++
> arch/arm/mm/proc-arm9tdmi.S | 3 ++
> arch/arm/mm/proc-fa526.S | 3 ++
> arch/arm/mm/proc-feroceon.S | 3 ++
> arch/arm/mm/proc-mohawk.S | 3 ++
> arch/arm/mm/proc-sa110.S | 3 ++
> arch/arm/mm/proc-sa1100.S | 3 ++
> arch/arm/mm/proc-v6.S | 3 ++
> arch/arm/mm/proc-v7.S | 2 +
> arch/arm/mm/proc-xsc3.S | 3 ++
> arch/arm/mm/proc-xscale.S | 3 ++
> include/asm-generic/vmlinux.lds.h | 6 ++++
> 30 files changed, 135 insertions(+), 23 deletions(-)
> create mode 100644 arch/arm/include/asm/idmap.h
>
> --
> 1.7.4.1
>
>
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
prev parent reply other threads:[~2011-11-17 13:47 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-11-16 16:48 [PATCH 0/4] Consolidate identity mapping code in idmap.c Will Deacon
2011-11-16 16:48 ` [PATCH 1/4] ARM: idmap: populate identity map pgd at init time using .init.text Will Deacon
2011-11-18 12:02 ` Catalin Marinas
2011-11-18 12:08 ` Will Deacon
2011-11-16 16:48 ` [PATCH 2/4] ARM: suspend: use idmap_pgd instead of suspend_pgd Will Deacon
2011-11-18 16:43 ` Catalin Marinas
2011-11-18 17:26 ` Will Deacon
2011-11-16 16:48 ` [PATCH 3/4] ARM: proc-*.S: place cpu_reset functions into .idmap.text section Will Deacon
2011-11-16 16:48 ` [PATCH 4/4] ARM: idmap: use idmap_pgd when setting up mm for reboot Will Deacon
2011-11-18 16:56 ` Catalin Marinas
2011-11-18 17:21 ` Will Deacon
2011-11-17 13:47 ` Dave Martin [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-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=20111117134755.GB3044@localhost.localdomain \
--to=dave.martin@linaro.org \
--cc=linux-arm-kernel@lists.infradead.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