From: linux@arm.linux.org.uk (Russell King - ARM Linux)
To: linux-arm-kernel@lists.infradead.org
Subject: arm and patch phys offset
Date: Mon, 12 Dec 2011 22:02:47 +0000 [thread overview]
Message-ID: <20111212220247.GF20178@n2100.arm.linux.org.uk> (raw)
In-Reply-To: <201112122255.40092.michael@walle.cc>
On Mon, Dec 12, 2011 at 10:55:40PM +0100, Michael Walle wrote:
> Am Montag 12 Dezember 2011, 22:34:50 schrieb Russell King - ARM Linux:
> > Why do you say that, and what you do mean by "expect the addresses" ?
> > Presumably you're saying the addresses will be different. Why do you
> > think that?
> > Are you saying that you find that the address of these 'unconverted'
> > instructions change each time you run your debug function?
> i see different output from the debug function everytime i change the source
> code and recompile the kernel. restarting the same binary results in the same
> unconverted instructions.
>
> > > If it would be some memory corruption, shouldn't the table or the p2v/v2p
> > > stubs be corrupt? But the non-patched entries always points to correct
> > > v2p/p2v calls and in every case there is the unpatched add/sub
> > > instruction.
> >
> > Have you tried dumping out the entire instruction as well as the
> > address of the unconverted instruction?
> yes, the addresses make sense as i can see the unpatched instruction at that
> address in the disassembly and the instruction at these addresses are always:
>
> add/sub rX, rY, #81000000
>
> > Are you running a Thumb-2 kernel? Which kernel are you running?
> what do you mean by which kernel?
> linus' master from yesterday, ARCH_KIRKWOOD=y
> CONFIG_THUMB2_KERNEL is not set
Yes, that's what I mean.
Right, so the problem you're describing is _impossible_ - there is no way
the fixup function can fix only some instructions and skip over others in
a properly functioning system.
The only options are that either the CPU is not executing the instructions
we're giving it (unlikely as - I assume - your hardware executes older
kernels fine), or for some reason your kernel is being called with caches
still enabled, violating the long-standing kernel's calling requirements.
So, some more questions to try to narrow this down:
1. What boot loader are you using?
2. What file are you taking from the kernel build in order to boot?
3. How are you transfering the kernel file to your target system?
next prev parent reply other threads:[~2011-12-12 22:02 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <201112112255.32534.michael@walle.cc>
2011-12-12 0:53 ` arm and patch phys offset Nicolas Pitre
2011-12-12 21:12 ` Michael Walle
2011-12-12 21:34 ` Russell King - ARM Linux
2011-12-12 21:55 ` Michael Walle
2011-12-12 22:02 ` Russell King - ARM Linux [this message]
2011-12-12 22:09 ` Michael Walle
2011-12-12 22:21 ` Russell King - ARM Linux
2011-12-12 22:56 ` Nicolas Pitre
2011-12-13 0:08 ` Michael Walle
2011-12-13 4:01 ` Nicolas Pitre
2011-12-13 23:17 ` Michael Walle
2011-12-18 11:58 ` Tixy
2012-01-03 7:15 ` Linus Walleij
2012-01-03 7:41 ` Michael Walle
2011-12-12 21:38 ` Nicolas Pitre
2011-12-12 21:57 ` Russell King - ARM Linux
2011-12-12 22:25 ` Nicolas Pitre
2011-12-12 22:06 ` Michael Walle
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=20111212220247.GF20178@n2100.arm.linux.org.uk \
--to=linux@arm.linux.org.uk \
--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;
as well as URLs for NNTP newsgroup(s).