----- Original Message -----
Hi,
please find the patch below.
Thanks, it's queued for crash-6.1.1.
BTW, if in the future if you post patches to this list, can you
please send them as email attachments? It looks like you may have
cut-and-pasted the patch, and all of the tabs turned into spaces.
Thanks,
Dave
--- arm.c 2012-06-29 20:29:18.000000000 +0530
+++ arm_section.c 2012-10-04 19:49:01.166889000 +0530
@@ -932,6 +932,13 @@
*/
page_dir = pgd + PGD_OFFSET(vaddr) * 2;
+ /* The unity-mapped region is mapped using 1MB pages,
+ * hence 1-level translation if bit 20 is set,
+ * we are 1MB apart physically,
+ * hence we move the page_dir in case bit 20 is set.
+ */
+ if (((vaddr) >> (20)) & 1)
+ page_dir = page_dir + 1;
FILL_PGD(PAGEBASE(pgd), KVADDR, PGDIR_SIZE());
pgd_pte = ULONG(machdep->pgd + PGDIR_OFFSET(page_dir));
Regards,
Oza.
From: Dave Anderson <anderson(a)redhat.com>
To: paawan oza <paawan1982(a)yahoo.com>; "Discussion list for crash
utility usage, maintenance and development"
<crash-utility(a)redhat.com>
Cc: Thomas Fänge <thomas.fange(a)sonymobile.com>; Rabin Vincent
<rabin(a)rab.in>; Mika Westerberg <mika.westerberg(a)iki.fi>; jan
karlsson <jan.karlsson(a)sonymobile.com>
Sent: Thursday, 4 October 2012 6:30 PM
Subject: Re: [Crash-utility] using crash for ARM
----- Original Message -----
> > Paawan, your fix looks sane to me but can you add a small comment
> > describing
> > why this is done?
> >
>
> ok,
> Let us wait for Dave and others to comment on it, and try to see
> how
> this could be pushed.
>
> Regards,
> Oza.
Oza,
Can you please append your actual patch as Rabin has done? The only
thing that I have from you is this pseudo-code description:
> then I have to do workaround for section level physical addresses
> as
> follows.
> page_dir = pgd + PGD_OFFSET(vaddr) * 2;
> if (bit(vaddr,20)) //if bit is set then move to the next pgd */
> page_dir = page_dir + 1;
> FILL_PGD(PAGEBASE(pgd), KVADDR, PGDIR_SIZE());
> pgd_pte = ULONG(machdep->pgd + PGDIR_OFFSET(page_dir));
>
Then Mika can decide on how to proceed with the two patches.
Dave