Skip to content

Commit afa402f

Browse files
committed
fix(x86_64/entry): remove unused second level-1 page table
1 parent e71ba58 commit afa402f

File tree

2 files changed

+14
-30
lines changed

2 files changed

+14
-30
lines changed

src/arch/x86_64/platform/linux/entry.s

Lines changed: 7 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ _start:
3333
and eax, 0xFFFFF000 # page align lower half
3434
mov rdi, rax
3535
shr rdi, 9 # (edi >> 12) * 8 (index for boot_pgt)
36-
add rdi, OFFSET .LLEVEL_1_TABLE_1
36+
add rdi, OFFSET .LLEVEL_1_TABLE
3737
or rax, 0x3 # set present and writable bits
3838
mov [rdi], rax
3939
add rcx, 0x1000
@@ -118,21 +118,13 @@ boot_params:
118118
.section .data..LLEVEL_2_TABLE,"awR",@progbits
119119
.align SIZE_4_KIB
120120
.LLEVEL_2_TABLE:
121-
.quad .LLEVEL_1_TABLE_1 + PAGE_TABLE_FLAGS
122-
.quad .LLEVEL_1_TABLE_2 + PAGE_TABLE_FLAGS
123-
.fill PAGE_TABLE_ENTRY_COUNT - 2, 8, 0
121+
.quad .LLEVEL_1_TABLE + PAGE_TABLE_FLAGS
122+
.fill PAGE_TABLE_ENTRY_COUNT - 1, 8, 0
124123
.size .LLEVEL_2_TABLE, . - .LLEVEL_2_TABLE
125124

126-
.type .LLEVEL_1_TABLE_1,@object
127-
.section .data..LLEVEL_1_TABLE_1,"awR",@progbits
128-
.align SIZE_4_KIB
129-
.LLEVEL_1_TABLE_1:
130-
.fill PAGE_TABLE_ENTRY_COUNT, 8, 0
131-
.size .LLEVEL_1_TABLE_1, . - .LLEVEL_1_TABLE_1
132-
133-
.type .LLEVEL_1_TABLE_2,@object
134-
.section .data..LLEVEL_1_TABLE_2,"awR",@progbits
125+
.type .LLEVEL_1_TABLE,@object
126+
.section .data..LLEVEL_1_TABLE,"awR",@progbits
135127
.align SIZE_4_KIB
136-
.LLEVEL_1_TABLE_2:
128+
.LLEVEL_1_TABLE:
137129
.fill PAGE_TABLE_ENTRY_COUNT, 8, 0
138-
.size .LLEVEL_1_TABLE_2, . - .LLEVEL_1_TABLE_2
130+
.size .LLEVEL_1_TABLE, . - .LLEVEL_1_TABLE

src/arch/x86_64/platform/multiboot/entry.s

Lines changed: 7 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ L0: cmp ecx, ebx
6161
and eax, 0xFFFFF000 # page align lower half
6262
mov edi, eax
6363
shr edi, 9 # (edi >> 12) * 8 (index for boot_pgt)
64-
add edi, OFFSET .LLEVEL_1_TABLE_1
64+
add edi, OFFSET .LLEVEL_1_TABLE
6565
or eax, 0x3 # set present and writable bits
6666
mov [edi], eax
6767
add ecx, 0x1000
@@ -205,21 +205,13 @@ mb_info:
205205
.section .data..LLEVEL_2_TABLE,"awR",@progbits
206206
.align SIZE_4_KIB
207207
.LLEVEL_2_TABLE:
208-
.quad .LLEVEL_1_TABLE_1 + PAGE_TABLE_FLAGS
209-
.quad .LLEVEL_1_TABLE_2 + PAGE_TABLE_FLAGS
210-
.fill PAGE_TABLE_ENTRY_COUNT - 2, 8, 0
208+
.quad .LLEVEL_1_TABLE + PAGE_TABLE_FLAGS
209+
.fill PAGE_TABLE_ENTRY_COUNT - 1, 8, 0
211210
.size .LLEVEL_2_TABLE, . - .LLEVEL_2_TABLE
212211

213-
.type .LLEVEL_1_TABLE_1,@object
214-
.section .data..LLEVEL_1_TABLE_1,"awR",@progbits
215-
.align SIZE_4_KIB
216-
.LLEVEL_1_TABLE_1:
217-
.fill PAGE_TABLE_ENTRY_COUNT, 8, 0
218-
.size .LLEVEL_1_TABLE_1, . - .LLEVEL_1_TABLE_1
219-
220-
.type .LLEVEL_1_TABLE_2,@object
221-
.section .data..LLEVEL_1_TABLE_2,"awR",@progbits
212+
.type .LLEVEL_1_TABLE,@object
213+
.section .data..LLEVEL_1_TABLE,"awR",@progbits
222214
.align SIZE_4_KIB
223-
.LLEVEL_1_TABLE_2:
215+
.LLEVEL_1_TABLE:
224216
.fill PAGE_TABLE_ENTRY_COUNT, 8, 0
225-
.size .LLEVEL_1_TABLE_2, . - .LLEVEL_1_TABLE_2
217+
.size .LLEVEL_1_TABLE, . - .LLEVEL_1_TABLE

0 commit comments

Comments
 (0)