aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ubifs/commit.c
diff options
context:
space:
mode:
authorAric D. Blumer <[email protected]>2010-12-29 16:18:29 +0000
committerEric Miao <[email protected]>2011-01-03 15:18:59 +0000
commit24c78557741395e038e83f25367cf2bfd7f582b8 (patch)
treef66c6e716e935775308bf37d5717ece4470dc551 /fs/ubifs/commit.c
parentARM: it8152: add IT8152_LAST_IRQ definition to fix build error (diff)
downloadkernel-24c78557741395e038e83f25367cf2bfd7f582b8.tar.gz
kernel-24c78557741395e038e83f25367cf2bfd7f582b8.zip
ARM: pxa: fix page table corruption on resume
Before this patch, the following error would sometimes occur after a resume on pxa3xx: /path/to/mm/memory.c:144: bad pmd 8040542e. The problem was that a temporary page table mapping was being improperly restored. The PXA3xx resume code creates a temporary mapping of resume_turn_on_mmu to avoid a prefetch abort. The pxa3xx_resume_after_mmu code requires that the r1 register holding the address of this mapping not be modified, however, resume_turn_on_mmu does modify it. It is mostly correct in that r1 receives the base table address, but it may also get other bits in 13:0. This results in pxa3xx_resume_after_mmu restoring the original mapping to the wrong place, corrupting memory and leaving the temporary mapping in place. Signed-off-by: Matt Reimer <[email protected]> Signed-off-by: Eric Miao <[email protected]>
Diffstat (limited to 'fs/ubifs/commit.c')
0 files changed, 0 insertions, 0 deletions