aboutsummaryrefslogtreecommitdiff
path: root/sys/i386
diff options
context:
space:
mode:
authorJohn Baldwin <jhb@FreeBSD.org>2026-04-27 19:04:22 +0000
committerJohn Baldwin <jhb@FreeBSD.org>2026-05-27 13:45:26 +0000
commit8b9023cfc1851a18518111d286ebd59b573008c1 (patch)
tree97daa62c26f58576c7d5c063a61b52dbccb96d5f /sys/i386
parentfce595344c51850a7113430c77e70c8777383a98 (diff)
Diffstat (limited to 'sys/i386')
-rw-r--r--sys/i386/i386/machdep.c4
-rw-r--r--sys/i386/i386/vm_machdep.c4
2 files changed, 4 insertions, 4 deletions
diff --git a/sys/i386/i386/machdep.c b/sys/i386/i386/machdep.c
index f9afb9afe45f..71992f18e8fb 100644
--- a/sys/i386/i386/machdep.c
+++ b/sys/i386/i386/machdep.c
@@ -1492,8 +1492,8 @@ init386(int first)
PCPU_SET(fsgs_gdt, &gdt[GUFS_SEL].sd);
/* Initialize the tss (except for the final esp0) early for vm86. */
- common_tss0.tss_esp0 = (vm_offset_t)thread0.td_kstack +
- thread0.td_kstack_pages * PAGE_SIZE - VM86_STACK_SPACE;
+ common_tss0.tss_esp0 = (vm_offset_t)td_kstack_top(&thread0) -
+ VM86_STACK_SPACE;
common_tss0.tss_ss0 = GSEL(GDATA_SEL, SEL_KPL);
common_tss0.tss_ioopt = sizeof(struct i386tss) << 16;
gsel_tss = GSEL(GPROC0_SEL, SEL_KPL);
diff --git a/sys/i386/i386/vm_machdep.c b/sys/i386/i386/vm_machdep.c
index d59d98542241..72fe83d3fdd4 100644
--- a/sys/i386/i386/vm_machdep.c
+++ b/sys/i386/i386/vm_machdep.c
@@ -89,7 +89,7 @@ get_pcb_user_save_td(struct thread *td)
{
char *p;
- p = td->td_kstack + td->td_kstack_pages * PAGE_SIZE -
+ p = td_kstack_top(td) -
roundup2(cpu_max_ext_state_size, XSAVE_AREA_ALIGN);
KASSERT(__is_aligned(p, XSAVE_AREA_ALIGN),
("Unaligned pcb_user_save area"));
@@ -110,7 +110,7 @@ get_pcb_td(struct thread *td)
{
char *p;
- p = td->td_kstack + td->td_kstack_pages * PAGE_SIZE -
+ p = td_kstack_top(td) -
roundup2(cpu_max_ext_state_size, XSAVE_AREA_ALIGN) -
sizeof(struct pcb);
return ((struct pcb *)p);