- movl $(HPDPT), %ebx
- movl $(HPTD), %eax
- orl $(PTE_V), %eax
-
- xorl %edx, %edx ; \
-
- movl %eax,(%ebx) ; /* low 32b */ \
- addl $4,%ebx ; \
- movl %edx,(%ebx) ; /* high 32b */ \
- addl $4,%ebx ; \
- addl $(1 << 12),%eax ; /* increment physical address 1Gb */ \
-
- movl %eax,(%ebx) ; /* low 32b */ \
- addl $4,%ebx ; \
- movl %edx,(%ebx) ; /* high 32b */ \
- addl $4,%ebx ; \
- addl $(1 << 12),%eax ; /* increment physical address 1Gb */ \
-
- movl %eax,(%ebx) ; /* low 32b */ \
- addl $4,%ebx ; \
- movl %edx,(%ebx) ; /* high 32b */ \
- addl $4,%ebx ; \
- addl $(1 << 12),%eax ; /* increment physical address 1Gb */ \
-
- movl %eax,(%ebx) ; /* low 32b */
- addl $4,%ebx ;
- movl %edx,(%ebx) ; /* high 32b */ \
- addl $4,%ebx ; \
- addl $(1 << 12),%eax ; /* increment physical address 1Gb */ \
-
- /* set page dir ptr table addr */
- movl $(HPDPT), %eax
+ /* Map 0 again at 0xC0000000 */
+ xorl %eax, %eax
+ movl $(KPTDI), %ebx
+ movl $(KERNEL_MAP_SIZE >> PDESHIFT), %ecx
+ fillpse( $(HPTD), $(PTE_W) )
+
+ movl $(HPTD), %eax