From owner-p4-projects@FreeBSD.ORG Sat May 31 12:56:04 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 550E237B404; Sat, 31 May 2003 12:56:04 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E86DC37B401 for ; Sat, 31 May 2003 12:56:03 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8477843F93 for ; Sat, 31 May 2003 12:56:03 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h4VJu30U025246 for ; Sat, 31 May 2003 12:56:03 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h4VJu3ou025243 for perforce@freebsd.org; Sat, 31 May 2003 12:56:03 -0700 (PDT) Date: Sat, 31 May 2003 12:56:03 -0700 (PDT) Message-Id: <200305311956.h4VJu3ou025243@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 32207 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 31 May 2003 19:56:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=32207 Change 32207 by peter@peter_hammer on 2003/05/31 12:55:51 update Affected files ... .. //depot/projects/hammer/TODO.txt#2 edit Differences ... ==== //depot/projects/hammer/TODO.txt#2 (text+ko) ==== @@ -1,4 +1,8 @@ -$P4: //depot/projects/hammer/TODO.txt#1 $ +$P4: //depot/projects/hammer/TODO.txt#2 $ + +reread the logs etc and check out the "XXX worry about this later" stuff + +performance tuning (segment registers etc at context switch time, pmap) threads (get/setusercontext/swapcontext/makecontext etc and kse kernel bits) (peter: started work on libc_r, but it crashes still) @@ -6,26 +10,21 @@ USER_LDT (however, there is a syscall to set the %fs and %gs base values to arbitary 64 bit addresses). -ACPI -(compiles/runs.. test more) +SMP (acpi MADT table based etc, ignore mptable stuff) -SMP +kld module support (the elf_machdep.c relocator is wrong, it uses the old value +rather than addends like it should. See alpha/sparc64 for clues.) -kld module support (the elf_machdep.c relocator is wrong). - finish the missing relocation types in rtld-elf/amd64/reloc.c (easy) -boot blocks (need gcc -m32 to work) -(fixed in p4 tree, needs binutils patches etc) +make release (should be mostly there, with the bootblock patches) -performance tuning (segment registers etc at context switch time, pmap) +X server -'make release' +add userland access to hardware debug registers via ptrace/procfs. -X server +gdb (doesn't look *that* hard, once debug regs are done) -gdb - ddb (needs a dwarf2 based unwinder to get stack traces and a disassembler) (peter: basic functionality, uses -fno-omit-frame-pointer.. disassembler still expects 32 bit code but compiles) @@ -35,21 +34,27 @@ crashdumps? -teach libkvm about crashdumps. +teach libkvm about crashdumps. (need to lookup KPML4, 4 level page tree etc) -see if openssl can use the assembler x86-64 routines. +see if openssl can use the assembler x86-64 routines. (easy) 128TB of user process VM space (the support is there, but there is a bug somewhere as it crosses the 512G mark into a new pml4e) full 2MB pmap page support in pmap (ifdef'ed out, some stuff uses vtopte() -where it shouldn't) +where it shouldn't, and the direct pte map interface needs to be made +aware of it) SSE/SSE2 support in libc (the fpget/set*() functions need to adjust the - SSE MXCSR register as well as the x87 control word). +SSE MXCSR register as well as the x87 control word - netbsd have already +done this, we can look at theirs) increase direct map base size to 4GB to cover all of pci mapping space -so that pmap_mapdev can use it. +so that pmap_mapdev can use it without consuming kvm. + +factor out common compat/freebsd32/* and compat/ia32/* from ia64 and amd64 +trees. freebsd32 should be for running 32 bit binaries on a 64 bit kernel, +while ia32 is for special MD bits. Lots of missing syscalls. make ia32 binary support more robust, including things that do important ioctls etc. @@ -59,3 +64,9 @@ ======= DONE ======= ppp(8) (compiler bug, hack in http://people.freebsd.org/~peter/hammer.diff, but gcc-3.3 would be much better) + +ACPI +(compiles/runs.. test more) + +boot blocks (need gcc -m32 to work) +(fixed in p4 tree, needs binutils patches etc)