Skip to content
Draft

WIP #40

Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion boot/qemu
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ u9fs="guestfwd=tcp:10.0.2.1:564-cmd:../sys/src/cmd/unix/u9fs/u9fs -a none -u $US
tftp='tftp=..'
mac=mac=52:54:00:12:34:56

qemu-system-x86_64 -m 1G -smp 1 -serial stdio \
qemu-system-x86_64 -m 1G -smp 2 -serial stdio \
-drive file=$pxe,format=raw -snapshot \
-device virtio-net-pci,netdev=net0,$mac \
-netdev "user,id=net0,$u9fs,$tftp"
2 changes: 1 addition & 1 deletion cfg/pxe/525400123456
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ fs=10.0.2.1
auth=10.0.2.1
sysname=gnot
*nobiosload=1
*nomp=1
#*nomp=1
partition=new
factotumopts=-n
user=glenda
1 change: 1 addition & 0 deletions sys/src/9k/k10/mem.h
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@
*/
#define UTZERO (0+2*MiB) /* first address in user text */
#define UTROUND(t) ROUNDUP((t), 2*MiB)
#define UADDRMASK 0x00007fffffffffffull /* canonical address mask */
#define USTKTOP 0x00007ffffffff000ull
#define USTKSIZE (16*1024*1024) /* size of user stack */
#define TSTKTOP (USTKTOP-USTKSIZE) /* end of new stack in sysexec */
Expand Down
18 changes: 4 additions & 14 deletions sys/src/9k/k10/trap.c
Original file line number Diff line number Diff line change
Expand Up @@ -621,24 +621,14 @@ userpc(Ureg* ureg)
void
setregisters(Ureg* ureg, char* pureg, char* uva, int n)
{
u64int cs, flags, ss;
u16int ds, es, fs, gs;
u64int flags;

ss = ureg->ss;
flags = ureg->flags;
cs = ureg->cs;
gs = ureg->cs;
fs = ureg->cs;
es = ureg->cs;
ds = ureg->cs;
memmove(pureg, uva, n);
ureg->ds = ds;
ureg->es = es;
ureg->fs = fs;
ureg->gs = gs;
ureg->cs = cs;
ureg->cs = SSEL(SiUCS, SsTIGDT|SsRPL3);
ureg->ss = SSEL(SiUDS, SsTIGDT|SsRPL3);
ureg->flags = (ureg->flags & 0x00ff) | (flags & 0xff00);
ureg->ss = ss;
ureg->ip &= UADDRMASK;
}

/* Give enough context in the ureg to produce a kernel stack for
Expand Down