Date: Wed, 9 Apr 2003 21:13:24 -0700 (PDT) From: Peter Wemm <peter@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 28687 for review Message-ID: <200304100413.h3A4DOXF003555@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=28687 Change 28687 by peter@peter_daintree on 2003/04/09 21:13:03 have a seperate selector for user data, not that it appears to matter Affected files ... .. //depot/projects/hammer/sys/x86_64/include/segments.h#15 edit .. //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#61 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/include/segments.h#15 (text+ko) ==== @@ -178,8 +178,9 @@ #define GDATA_SEL 2 /* Kernel Data Descriptor */ #define GPROC0_SEL 3 /* Task state process slot zero and up */ /* slot 4 is second half of GPROC0_SEL */ -#define GUCODE_SEL 5 /* Kernel Code Descriptor */ -#define NGDT 6 +#define GUCODE_SEL 5 /* User Code Descriptor */ +#define GUDATA_SEL 6 /* User Data Descriptor */ +#define NGDT 7 #ifdef _KERNEL extern struct user_segment_descriptor gdt[]; ==== //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#61 (text+ko) ==== @@ -615,6 +615,15 @@ 1, /* long */ 0, /* default 32 vs 16 bit size */ 1 /* limit granularity (byte/page units)*/ }, +/* GUDATA_SEL 6 Code Descriptor for user */ +{ 0x0, /* segment base address */ + 0xfffff, /* length - all address space */ + SDT_MEMRWA, /* segment type */ + SEL_UPL, /* segment descriptor priority level */ + 1, /* segment descriptor present */ + 1, /* long */ + 0, /* default 32 vs 16 bit size */ + 1 /* limit granularity (byte/page units)*/ }, }; void @@ -1253,6 +1262,11 @@ msgbufinit(msgbufp, MSGBUF_SIZE); + /* transfer to user mode */ + + _ucodesel = GSEL(LUCODE_SEL, SEL_UPL); + _udatasel = GSEL(LUDATA_SEL, SEL_UPL); + /* setup proc 0's pcb */ thread0.td_pcb->pcb_flags = 0; /* XXXKSE */ thread0.td_pcb->pcb_cr3 = IdlePML4;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200304100413.h3A4DOXF003555>