diff options
| author | James Bottomley <JBottomley@Parallels.com> | 2012-05-15 06:04:19 -0400 |
|---|---|---|
| committer | James Bottomley <JBottomley@Parallels.com> | 2012-05-16 06:14:45 -0400 |
| commit | 5e185581d7c46ddd33cd9c01106d1fc86efb9376 (patch) | |
| tree | 1f0aaabc6daadfa4dce69af0a7dafa5f6f48a11d | |
| parent | 568b44559d7ca269d367e694c74eb4436e7e3ccf (diff) | |
[PARISC] fix PA1.1 oops on boot
All PA1.1 systems have been oopsing on boot since
commit f311847c2fcebd81912e2f0caf8a461dec28db41
Author: James Bottomley <James.Bottomley@HansenPartnership.com>
Date: Wed Dec 22 10:22:11 2010 -0600
parisc: flush pages through tmpalias space
because a PA2.0 instruction was accidentally introduced into the PA1.1 TLB
insertion interruption path when it was consolidated with the do_alias macro.
Fix the do_alias macro only to use PA2.0 instructions if compiled for 64 bit.
Cc: stable@vger.kernel.org #2.6.39+
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
| -rw-r--r-- | arch/parisc/kernel/entry.S | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/parisc/kernel/entry.S b/arch/parisc/kernel/entry.S index 6f0594439143..535034217021 100644 --- a/arch/parisc/kernel/entry.S +++ b/arch/parisc/kernel/entry.S | |||
| @@ -581,7 +581,11 @@ | |||
| 581 | */ | 581 | */ |
| 582 | cmpiclr,= 0x01,\tmp,%r0 | 582 | cmpiclr,= 0x01,\tmp,%r0 |
| 583 | ldi (_PAGE_DIRTY|_PAGE_READ|_PAGE_WRITE),\prot | 583 | ldi (_PAGE_DIRTY|_PAGE_READ|_PAGE_WRITE),\prot |
| 584 | #ifdef CONFIG_64BIT | ||
| 584 | depd,z \prot,8,7,\prot | 585 | depd,z \prot,8,7,\prot |
| 586 | #else | ||
| 587 | depw,z \prot,8,7,\prot | ||
| 588 | #endif | ||
| 585 | /* | 589 | /* |
| 586 | * OK, it is in the temp alias region, check whether "from" or "to". | 590 | * OK, it is in the temp alias region, check whether "from" or "to". |
| 587 | * Check "subtle" note in pacache.S re: r23/r26. | 591 | * Check "subtle" note in pacache.S re: r23/r26. |
