From: Helge Deller Date: Tue, 21 Mar 2006 23:01:15 +0000 (-0700) Subject: [PARISC] Fix IOREMAP with a 64-bit kernel X-Git-Tag: v2.6.17-rc1~144^2~18 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b9e71ac13a71bb435a4146d868080f5389bb906c;p=linux-2.6 [PARISC] Fix IOREMAP with a 64-bit kernel We were only copying 32-bits of the PTE/PFN, not the full 52-bits. Signed-off-by: Helge Deller Signed-off-by: Kyle McMartin --- diff --git a/arch/parisc/kernel/entry.S b/arch/parisc/kernel/entry.S index 9af4b22a6d..6d17c0a343 100644 --- a/arch/parisc/kernel/entry.S +++ b/arch/parisc/kernel/entry.S @@ -563,10 +563,10 @@ extrd,u,*= \pte,_PAGE_GATEWAY_BIT+32,1,%r0 depd %r0,11,2,\prot /* If Gateway, Set PL2 to 0 */ - /* Get rid of prot bits and convert to page addr for iitlbt */ + /* Get rid of prot bits and convert to page addr for iitlbt and idtlbt */ depd %r0,63,PAGE_SHIFT,\pte - extrd,u \pte,56,32,\pte + extrd,s \pte,(63-PAGE_SHIFT)+(63-58),64-PAGE_SHIFT,\pte .endm /* Identical macro to make_insert_tlb above, except it @@ -584,7 +584,7 @@ /* Get rid of prot bits and convert to page addr for iitlba */ - depi 0,31,12,\pte + depi 0,31,PAGE_SHIFT,\pte extru \pte,24,25,\pte .endm