# # ChangeLog for trunk/hal/x86_64/core # # Generated by Trac 1.2.3 # Mar 28, 2024, 3:40:42 PM Tue, 05 Dec 2017 15:20:07 GMT alain [408] * trunk/Makefile.tsar (modified) * trunk/hal/generic/hal_atomic.h (modified) * trunk/hal/generic/hal_context.h (modified) * trunk/hal/generic/hal_exception.h (modified) * trunk/hal/generic/hal_gpt.h (modified) * trunk/hal/generic/hal_interrupt.h (modified) * trunk/hal/generic/hal_special.h (modified) * trunk/hal/generic/hal_switch.h (modified) * trunk/hal/generic/hal_syscall.h (modified) * trunk/hal/tsar_mips32/core/hal_context.c (modified) * trunk/hal/tsar_mips32/core/hal_exception.c (modified) * trunk/hal/tsar_mips32/core/hal_gpt.c (modified) * trunk/hal/tsar_mips32/core/hal_interrupt.c (modified) * trunk/hal/tsar_mips32/core/hal_kentry.S (modified) * trunk/hal/tsar_mips32/core/hal_kentry.h (modified) * trunk/hal/tsar_mips32/core/hal_switch.S (modified) * trunk/hal/tsar_mips32/core/hal_syscall.c (modified) * trunk/hal/tsar_mips32/core/hal_types.h (modified) * trunk/hal/tsar_mips32/drivers/soclib_bdv.c (modified) * trunk/hal/tsar_mips32/drivers/soclib_dma.c (modified) * trunk/hal/tsar_mips32/drivers/soclib_hba.c (modified) * trunk/hal/tsar_mips32/drivers/soclib_tty.c (modified) * trunk/hal/x86_64/core/hal_gpt.c (modified) * trunk/hdd/virt_hdd.dmg (modified) * trunk/kernel/devices/dev_dma.c (modified) * trunk/kernel/devices/dev_fbf.c (modified) * trunk/kernel/devices/dev_ioc.c (modified) * trunk/kernel/devices/dev_nic.c (modified) * trunk/kernel/devices/dev_txt.c (modified) * trunk/kernel/fs/vfs.c (modified) * trunk/kernel/kern/chdev.c (modified) * trunk/kernel/kern/cluster.c (modified) * trunk/kernel/kern/cluster.h (modified) * trunk/kernel/kern/core.c (modified) * trunk/kernel/kern/do_syscall.c (modified) * trunk/kernel/kern/do_syscall.h (modified) * trunk/kernel/kern/kernel_init.c (modified) * trunk/kernel/kern/printk.c (modified) * trunk/kernel/kern/printk.h (modified) * trunk/kernel/kern/process.c (modified) * trunk/kernel/kern/process.h (modified) * trunk/kernel/kern/rpc.c (modified) * trunk/kernel/kern/rpc.h (modified) * trunk/kernel/kern/scheduler.c (modified) * trunk/kernel/kern/scheduler.h (modified) * trunk/kernel/kern/thread.c (modified) * trunk/kernel/kern/thread.h (modified) * trunk/kernel/libk/remote_barrier.c (modified) * trunk/kernel/libk/remote_condvar.c (modified) * trunk/kernel/libk/remote_fifo.c (modified) * trunk/kernel/libk/remote_mutex.c (modified) * trunk/kernel/libk/remote_sem.c (modified) * trunk/kernel/libk/remote_spinlock.c (modified) * trunk/kernel/libk/spinlock.c (modified) * trunk/kernel/mm/mapper.c (modified) * trunk/kernel/mm/page.c (modified) * trunk/kernel/mm/page.h (modified) * trunk/kernel/mm/vmm.c (modified) * trunk/kernel/mm/vmm.h (modified) * trunk/kernel/mm/vseg.c (modified) * trunk/kernel/mm/vseg.h (modified) * trunk/kernel/syscalls/sys_exec.c (modified) * trunk/kernel/syscalls/sys_fork.c (modified) * trunk/kernel/syscalls/sys_get_cycle.c (modified) * trunk/kernel/syscalls/sys_read.c (modified) * trunk/kernel/syscalls/sys_signal.c (modified) * trunk/kernel/syscalls/sys_thread_exit.c (modified) * trunk/kernel/syscalls/sys_thread_join.c (modified) * trunk/kernel/syscalls/sys_thread_sleep.c (modified) * trunk/kernel/syscalls/sys_thread_yield.c (modified) * trunk/kernel/syscalls/sys_write.c (modified) * trunk/kernel/syscalls/syscalls.h (modified) * trunk/kernel_config.h (modified) * trunk/user/ksh/ksh.c (modified) Fix several bugs in the fork() syscall. Tue, 07 Nov 2017 14:08:12 GMT alain [407] * trunk/Makefile.tsar (modified) * trunk/hal/generic/hal_context.h (modified) * trunk/hal/generic/hal_gpt.h (modified) * trunk/hal/generic/hal_ppm.h (modified) * trunk/hal/generic/hal_remote.h (modified) * trunk/hal/generic/hal_special.h (modified) * trunk/hal/generic/hal_switch.h (moved) * trunk/hal/generic/hal_syscall.h (copied) * trunk/hal/generic/hal_user.h (added) * trunk/hal/generic/hal_uspace.h (modified) * trunk/hal/tsar_mips32/core/hal_context.c (modified) * trunk/hal/tsar_mips32/core/hal_drivers.c (modified) * trunk/hal/tsar_mips32/core/hal_exception.c (modified) * trunk/hal/tsar_mips32/core/hal_gpt.c (modified) * trunk/hal/tsar_mips32/core/hal_interrupt.c (modified) * trunk/hal/tsar_mips32/core/hal_kentry.S (modified) * trunk/hal/tsar_mips32/core/hal_kentry.h (modified) * trunk/hal/tsar_mips32/core/hal_ppm.c (modified) * trunk/hal/tsar_mips32/core/hal_special.c (modified) * trunk/hal/tsar_mips32/core/hal_switch.S (modified) * trunk/hal/tsar_mips32/core/hal_syscall.c (copied) * trunk/hal/tsar_mips32/core/hal_types.h (modified) * trunk/hal/tsar_mips32/core/hal_user.c (added) * trunk/hal/tsar_mips32/core/hal_uspace.c (modified) * trunk/hal/tsar_mips32/drivers/soclib_bdv.c (modified) * trunk/hal/tsar_mips32/drivers/soclib_dma.c (modified) * trunk/hal/tsar_mips32/drivers/soclib_hba.c (modified) * trunk/hal/tsar_mips32/drivers/soclib_pic.c (modified) * trunk/hal/tsar_mips32/drivers/soclib_pic.h (modified) * trunk/hal/tsar_mips32/drivers/soclib_tty.c (modified) * trunk/hal/tsar_mips32/drivers/soclib_tty.h (modified) * trunk/hal/x86_64/core/hal_ppm.c (modified) * trunk/hal/x86_64/core/hal_types.h (modified) * trunk/hal/x86_64/core/hal_uspace.c (modified) * trunk/hdd/virt_hdd.dmg (modified) * trunk/kernel/devices/dev_dma.c (modified) * trunk/kernel/devices/dev_fbf.c (modified) * trunk/kernel/devices/dev_ioc.c (modified) * trunk/kernel/devices/dev_mmc.c (modified) * trunk/kernel/devices/dev_nic.c (modified) * trunk/kernel/devices/dev_nic.h (modified) * trunk/kernel/devices/dev_pic.c (modified) * trunk/kernel/devices/dev_pic.h (modified) * trunk/kernel/devices/dev_txt.c (modified) * trunk/kernel/devices/dev_txt.h (modified) * trunk/kernel/fs (moved) * trunk/kernel/fs/devfs.c (copied) * trunk/kernel/fs/devfs.h (modified) * trunk/kernel/fs/fatfs.c (copied) * trunk/kernel/fs/fatfs.h (copied) * trunk/kernel/fs/vfs.c (copied) * trunk/kernel/fs/vfs.h (modified) * trunk/kernel/kern/chdev.c (modified) * trunk/kernel/kern/chdev.h (modified) * trunk/kernel/kern/cluster.c (modified) * trunk/kernel/kern/cluster.h (modified) * trunk/kernel/kern/core.c (modified) * trunk/kernel/kern/do_exec.c (deleted) * trunk/kernel/kern/do_syscall.c (modified) * trunk/kernel/kern/do_syscall.h (modified) * trunk/kernel/kern/kernel_init.c (modified) * trunk/kernel/kern/printk.c (modified) * trunk/kernel/kern/printk.h (modified) * trunk/kernel/kern/process.c (modified) * trunk/kernel/kern/process.h (modified) * trunk/kernel/kern/rpc.c (modified) * trunk/kernel/kern/rpc.h (modified) * trunk/kernel/kern/scheduler.c (modified) * trunk/kernel/kern/scheduler.h (modified) * trunk/kernel/kern/signal.c (modified) * trunk/kernel/kern/thread.c (modified) * trunk/kernel/kern/thread.h (modified) * trunk/kernel/kern/time.h (deleted) * trunk/kernel/libk/elf.c (modified) * trunk/kernel/libk/remote_barrier.c (modified) * trunk/kernel/libk/remote_condvar.c (modified) * trunk/kernel/libk/remote_fifo.c (modified) * trunk/kernel/libk/remote_fifo.h (modified) * trunk/kernel/libk/remote_mutex.c (modified) * trunk/kernel/libk/remote_sem.c (modified) * trunk/kernel/libk/remote_spinlock.c (modified) * trunk/kernel/libk/spinlock.c (modified) * trunk/kernel/mm/kcm.c (modified) * trunk/kernel/mm/kmem.c (modified) * trunk/kernel/mm/mapper.c (modified) * trunk/kernel/mm/mapper.h (modified) * trunk/kernel/mm/page.c (modified) * trunk/kernel/mm/page.h (modified) * trunk/kernel/mm/ppm.c (modified) * trunk/kernel/mm/ppm.h (modified) * trunk/kernel/mm/vmm.c (modified) * trunk/kernel/mm/vmm.h (modified) * trunk/kernel/mm/vseg.c (modified) * trunk/kernel/mm/vseg.h (modified) * trunk/kernel/syscalls/sys_chdir.c (modified) * trunk/kernel/syscalls/sys_chmod.c (modified) * trunk/kernel/syscalls/sys_closedir.c (modified) * trunk/kernel/syscalls/sys_creat.c (modified) * trunk/kernel/syscalls/sys_exec.c (modified) * trunk/kernel/syscalls/sys_fork.c (modified) * trunk/kernel/syscalls/sys_get_cycle.c (moved) * trunk/kernel/syscalls/sys_mkdir.c (modified) * trunk/kernel/syscalls/sys_mkfifo.c (modified) * trunk/kernel/syscalls/sys_mmap.c (modified) * trunk/kernel/syscalls/sys_open.c (modified) * trunk/kernel/syscalls/sys_opendir.c (modified) * trunk/kernel/syscalls/sys_pipe.c (modified) * trunk/kernel/syscalls/sys_read.c (modified) * trunk/kernel/syscalls/sys_readdir.c (modified) * trunk/kernel/syscalls/sys_rmdir.c (modified) * trunk/kernel/syscalls/sys_signal.c (modified) * trunk/kernel/syscalls/sys_stat.c (modified) * trunk/kernel/syscalls/sys_thread_create.c (modified) * trunk/kernel/syscalls/sys_thread_exit.c (modified) * trunk/kernel/syscalls/sys_thread_join.c (modified) * trunk/kernel/syscalls/sys_thread_sleep.c (modified) * trunk/kernel/syscalls/sys_thread_yield.c (modified) * trunk/kernel/syscalls/sys_timeofday.c (modified) * trunk/kernel/syscalls/sys_trace.c (modified) * trunk/kernel/syscalls/sys_unlink.c (modified) * trunk/kernel/syscalls/sys_write.c (modified) * trunk/kernel/syscalls/syscalls.h (modified) * trunk/kernel_config.h (modified) * trunk/libs (added) * trunk/tools/bootloader_tsar/boot.c (modified) * trunk/user/ksh/Makefile (modified) * trunk/user/ksh/ksh.c (modified) First implementation of fork/exec. Tue, 29 Aug 2017 10:03:37 GMT alain [406] * trunk/hal/generic/hal_gpt.h (modified) * trunk/hal/tsar_mips32/core/hal_context.c (modified) * trunk/hal/tsar_mips32/core/hal_exception.c (modified) * trunk/hal/tsar_mips32/core/hal_gpt.c (modified) * trunk/hal/tsar_mips32/core/hal_interrupt.c (modified) * trunk/hal/tsar_mips32/core/hal_kentry.S (modified) * trunk/hal/tsar_mips32/core/hal_kentry.h (modified) * trunk/hal/tsar_mips32/core/hal_special.c (modified) * trunk/hal/tsar_mips32/core/hal_switch.S (modified) * trunk/hal/tsar_mips32/core/hal_syscall.c (modified) * trunk/hal/tsar_mips32/core/mips32_context.h (deleted) * trunk/hal/tsar_mips32/core/mips32_uzone.h (deleted) * trunk/hal/tsar_mips32/drivers/soclib_pic.c (modified) * trunk/hal/tsar_mips32/kernel.ld (modified) * trunk/hal/x86_64/core/hal_gpt.c (modified) * trunk/hdd/virt_hdd.dmg (modified) * trunk/kernel/devices/dev_dma.c (modified) * trunk/kernel/devices/dev_fbf.c (modified) * trunk/kernel/devices/dev_ioc.c (modified) * trunk/kernel/devices/dev_mmc.c (modified) * trunk/kernel/devices/dev_nic.c (modified) * trunk/kernel/devices/dev_pic.c (modified) * trunk/kernel/devices/dev_pic.h (modified) * trunk/kernel/devices/dev_txt.c (modified) * trunk/kernel/kern/cluster.c (modified) * trunk/kernel/kern/core.c (modified) * trunk/kernel/kern/do_syscall.c (modified) * trunk/kernel/kern/dqdt.c (modified) * trunk/kernel/kern/kernel_init.c (modified) * trunk/kernel/kern/printk.c (modified) * trunk/kernel/kern/printk.h (modified) * trunk/kernel/kern/process.c (modified) * trunk/kernel/kern/rpc.c (modified) * trunk/kernel/kern/scheduler.c (modified) * trunk/kernel/kern/signal.c (modified) * trunk/kernel/kern/thread.c (modified) * trunk/kernel/kern/thread.h (modified) * trunk/kernel/libk/elf.c (modified) * trunk/kernel/libk/grdxt.c (modified) * trunk/kernel/libk/grdxt.h (modified) * trunk/kernel/mm/kcm.c (modified) * trunk/kernel/mm/kmem.c (modified) * trunk/kernel/mm/mapper.c (modified) * trunk/kernel/mm/ppm.c (modified) * trunk/kernel/mm/vmm.c (modified) * trunk/kernel/mm/vmm.h (modified) * trunk/kernel/mm/vseg.c (modified) * trunk/kernel/mm/vseg.h (modified) * trunk/kernel/syscalls/sys_exec.c (modified) * trunk/kernel/syscalls/sys_fork.c (modified) * trunk/kernel/syscalls/sys_signal.c (modified) * trunk/kernel/syscalls/sys_thread_create.c (modified) * trunk/kernel/syscalls/sys_thread_sleep.c (modified) * trunk/kernel/syscalls/sys_trace.c (modified) * trunk/kernel/vfs/devfs.c (modified) * trunk/kernel/vfs/fatfs.c (modified) * trunk/kernel/vfs/fatfs.h (modified) * trunk/kernel/vfs/vfs.c (modified) * trunk/kernel_config.h (modified) This version executed successfully the user "init" process on a mono- ... Mon, 21 Aug 2017 09:54:52 GMT max@… [405] * trunk/hal/x86_64/core/hal_gpt.c (modified) Remove XXX, it's fine. Thu, 17 Aug 2017 13:09:39 GMT max@… [403] * trunk/hal/x86_64/core/hal_exception.c (modified) Sync with TSAR. Thu, 17 Aug 2017 09:26:00 GMT max@… [397] * trunk/hal/x86_64/core/hal_gpt.c (modified) Use panic(). Wed, 16 Aug 2017 13:35:40 GMT max@… [392] * trunk/hal/x86_64/core/hal_exception.c (modified) Start handling page faults. Not tested. Wed, 16 Aug 2017 12:11:11 GMT max@… [387] * trunk/hal/x86_64/core/hal_kentry.S (modified) Handle the return from exception. Wed, 16 Aug 2017 12:09:16 GMT max@… [386] * trunk/hal/x86_64/core/hal_boot.h (modified) * trunk/hal/x86_64/core/hal_gpt.c (modified) Implement several GPT functions. Wed, 16 Aug 2017 09:13:27 GMT max@… [383] * trunk/hal/generic/hal_gpt.h (modified) * trunk/hal/x86_64/core/hal_gpt.c (modified) Use constant flags. Wed, 16 Aug 2017 09:07:57 GMT max@… [382] * trunk/Makefile.x86 (modified) * trunk/hal/x86_64/core/hal_exception.c (modified) Sync with TSAR. Mon, 14 Aug 2017 11:03:39 GMT max@… [371] * trunk/hal/x86_64/core/hal_exception.c (modified) * trunk/hal/x86_64/core/hal_special.c (modified) Treat user/kern exceptions differently. Mon, 14 Aug 2017 10:58:19 GMT max@… [370] * trunk/hal/x86_64/core/hal_irqmask.c (modified) Old can be NULL. Mon, 14 Aug 2017 10:32:08 GMT max@… [368] * trunk/hal/x86_64/core/hal_boot.S (modified) * trunk/hal/x86_64/core/hal_context.c (modified) * trunk/hal/x86_64/core/hal_cpu.S (modified) * trunk/hal/x86_64/core/hal_gpt.c (modified) * trunk/hal/x86_64/core/hal_internal.h (modified) * trunk/hal/x86_64/core/hal_smpboot.S (modified) * trunk/hal/x86_64/core/hal_special.c (modified) Switch the VM space, and explicitly disable the FPU. Thu, 10 Aug 2017 09:48:01 GMT max@… [365] * trunk/hal/x86_64/core/hal_cpu.S (modified) * trunk/hal/x86_64/core/hal_init.c (modified) Remove debug function. Thu, 10 Aug 2017 09:30:53 GMT max@… [361] * trunk/hal/x86_64/core/hal_context.c (modified) Pass the function argument to the new thread. Thu, 10 Aug 2017 09:26:58 GMT max@… [360] * trunk/hal/x86_64/core/hal_context.c (modified) Add a panic, for now we are only switching between kernel threads. Thu, 10 Aug 2017 09:21:32 GMT max@… [359] * trunk/hal/x86_64/core/hal_context.c (modified) * trunk/hal/x86_64/core/hal_cpu.S (modified) * trunk/hal/x86_64/core/hal_kentry.h (modified) * trunk/hal/x86_64/core/hal_segmentation.h (modified) Synchronize tls_intr between context switches. Wed, 09 Aug 2017 08:34:36 GMT max@… [348] * trunk/hal/x86_64/core/hal_acpi.c (modified) We don't support irqbase != 0. Wed, 09 Aug 2017 08:24:06 GMT max@… [346] * trunk/hal/generic/hal_drivers.h (modified) * trunk/hal/tsar_mips32/core/hal_drivers.c (modified) * trunk/hal/x86_64/core/hal_drivers.c (modified) * trunk/hdd/virt_hdd.dmg (modified) * trunk/kernel/devices/dev_iob.c (modified) * trunk/kernel/devices/dev_iob.h (modified) * trunk/kernel/kern/chdev.h (modified) Hide soclib_iob. Tue, 08 Aug 2017 09:28:39 GMT max@… [345] * trunk/hal/x86_64/core/hal_init.c (modified) Initialize rsp0 (in both the TSS and the TLS). Tue, 08 Aug 2017 09:27:12 GMT max@… [344] * trunk/hal/x86_64/core/hal_interrupt.c (modified) Call core_clock - the computation in this function still needs to be ... Tue, 08 Aug 2017 09:19:59 GMT max@… [343] * trunk/hal/x86_64/core/hal_cpu.S (modified) Mmh, skip tf_trapno and tf_err for iretq. Tue, 08 Aug 2017 09:17:28 GMT max@… [342] * trunk/hal/x86_64/core/hal_context.c (modified) Initialize tf_ss, and don't forget to update tls_thr. Tue, 08 Aug 2017 09:12:11 GMT max@… [341] * trunk/hal/x86_64/core/hal_kentry.S (modified) Set %eoi earlier for rescheduling interrupts, otherwise the timer ... Mon, 07 Aug 2017 13:19:11 GMT max@… [340] * trunk/hal/x86_64/core/hal_interrupt.c (modified) * trunk/hal/x86_64/core/hal_segmentation.h (modified) Remove debug code - it's useless anyway. Mon, 07 Aug 2017 13:11:45 GMT max@… [339] * trunk/hal/x86_64/core/hal_context.c (modified) * trunk/hal/x86_64/core/hal_cpu.S (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_internal.h (modified) * trunk/hal/x86_64/core/hal_kentry.h (modified) * trunk/hal/x86_64/core/hal_segmentation.h (modified) Add support for context switch - not tested yet, due to some other ... Mon, 07 Aug 2017 09:22:15 GMT max@… [336] * trunk/hal/x86_64/core/hal_exception.c (modified) * trunk/hal/x86_64/core/hal_interrupt.c (modified) * trunk/hal/x86_64/core/hal_irqmask.c (modified) * trunk/hal/x86_64/core/hal_segmentation.h (modified) * trunk/hal/x86_64/core/hal_special.c (modified) Rename curcpu -> curtls. Mon, 07 Aug 2017 09:19:27 GMT max@… [335] * trunk/hal/x86_64/core/hal_context.c (modified) * trunk/hal/x86_64/core/hal_exception.c (modified) * trunk/hal/x86_64/core/hal_interrupt.c (modified) * trunk/hal/x86_64/core/hal_kentry.h (modified) * trunk/hal/x86_64/drivers/ioc_ata.c (modified) Separate the CPU context from the trap frame. Mon, 07 Aug 2017 07:03:02 GMT max@… [329] * trunk/hal/x86_64/core/hal_smpboot.S (modified) Initialize %rbp. Sun, 06 Aug 2017 17:58:22 GMT max@… [327] * trunk/hal/x86_64/core/hal_apic.c (modified) Clean up, and fix several SMP-related issues. The LAPIC timer is ... Sun, 06 Aug 2017 06:33:00 GMT max@… [323] * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/kernel/libk/string.c (modified) * trunk/kernel/libk/string.h (modified) Clean up, and define strstr() in libk. Sun, 06 Aug 2017 06:10:37 GMT max@… [320] * trunk/hal/x86_64/core/hal_types.h (modified) Remove unused. Sun, 06 Aug 2017 06:00:24 GMT max@… [319] * trunk/hal/x86_64/core/hal_gpt.c (modified) Don't forget to unmap the region below the kernel. Useful to detect ... Thu, 03 Aug 2017 10:01:19 GMT max@… [316] * trunk/hal/x86_64/core/hal_gpt.c (modified) * trunk/hal/x86_64/core/hal_types.h (modified) Synchronize with Alain's changes. Still several issues. Thu, 03 Aug 2017 08:15:18 GMT alain [315] * trunk/hal/generic/hal_gpt.h (modified) * trunk/hal/generic/hal_ppm.h (modified) * trunk/hal/tsar_mips32/core/hal_gpt.c (modified) * trunk/hal/tsar_mips32/core/hal_ppm.c (modified) * trunk/hal/tsar_mips32/core/hal_types.h (modified) * trunk/hal/tsar_mips32/core/hal_uspace.c (modified) * trunk/hal/x86_64/core/hal_types.h (modified) * trunk/hdd/virt_hdd.dmg (modified) * trunk/kernel/kern/rpc.c (modified) * trunk/kernel/kern/thread.c (modified) * trunk/kernel/libk/elf.c (modified) * trunk/kernel/mm/kcm.c (modified) * trunk/kernel/mm/khm.c (modified) * trunk/kernel/mm/mapper.c (modified) * trunk/kernel/mm/mapper.h (modified) * trunk/kernel/mm/page.c (modified) * trunk/kernel/mm/page.h (modified) * trunk/kernel/mm/ppm.c (modified) * trunk/kernel/mm/ppm.h (modified) * trunk/kernel/mm/vmm.c (modified) * trunk/kernel/mm/vseg.c (modified) * trunk/kernel/mm/vseg.h (modified) * trunk/kernel/syscalls/sys_exec.c (modified) * trunk/kernel/syscalls/sys_write.c (modified) * trunk/kernel/vfs/fatfs.c (modified) * trunk/kernel/vfs/vfs.c (modified) Redefine the fuctions ppm_base2page() / ppm_page2base() / ... Wed, 02 Aug 2017 13:28:20 GMT max@… [314] * trunk/hal/x86_64/core/hal_remote.c (modified) Add hal_remote_memset. Wed, 02 Aug 2017 12:36:58 GMT max@… [312] * trunk/hal/x86_64/core/hal_boot.S (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_multiboot.h (modified) Add a --no-smp option. Wed, 02 Aug 2017 12:17:00 GMT max@… [311] * trunk/hal/generic/hal_context.h (modified) * trunk/hal/tsar_mips32/core/hal_context.c (modified) * trunk/hal/x86_64/core/hal_context.c (modified) * trunk/kernel/kern/scheduler.c (modified) Introduce hal_cpu_context_switch. Tue, 01 Aug 2017 08:44:43 GMT max@… [310] * trunk/hal/x86_64/core/hal_init.c (modified) Use pause(). Tue, 01 Aug 2017 08:37:06 GMT max@… [309] * trunk/hal/x86_64/core/hal_cpu.S (modified) * trunk/hal/x86_64/core/hal_internal.h (modified) * trunk/hal/x86_64/core/hal_special.c (modified) Add clts/stts. Tue, 01 Aug 2017 08:30:39 GMT max@… [308] * trunk/hal/x86_64/core/hal_exception.c (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_kentry.S (modified) * trunk/hal/x86_64/core/hal_kentry.h (modified) * trunk/hal/x86_64/core/hal_segmentation.h (modified) Add a basic syscall entry. Tue, 01 Aug 2017 08:29:27 GMT max@… [307] * trunk/hal/x86_64/core/hal_ppm.c (modified) Forgot to commit this yesterday. Mon, 31 Jul 2017 12:19:12 GMT max@… [299] * trunk/hal/generic/hal_uspace.h (modified) * trunk/hal/tsar_mips32/core/hal_uspace.c (modified) * trunk/hal/x86_64/core/hal_uspace.c (modified) The uspace strcpy function is allowed to fail (not implemented yet). Mon, 31 Jul 2017 12:10:39 GMT max@… [298] * trunk/hal/x86_64/core/hal_context.c (modified) * trunk/hal/x86_64/core/hal_init.c (modified) Sync with TSAR. Mon, 31 Jul 2017 10:53:13 GMT max@… [293] * trunk/hal/x86_64/core/hal_init.c (modified) Fix previous. Still don't know where the race comes from... Mon, 31 Jul 2017 08:16:33 GMT max@… [292] * trunk/hal/x86_64/core/hal_init.c (modified) Use different stacks for NMIs and Double Faults. Thu, 27 Jul 2017 14:47:05 GMT max@… [290] * trunk/hal/x86_64/core/hal_internal.h (modified) Define prototype. Thu, 27 Jul 2017 13:29:48 GMT max@… [285] * trunk/hal/tsar_mips32/core/hal_irqmask.c (modified) * trunk/hal/x86_64/core/hal_irqmask.c (modified) * trunk/kernel/kern/kernel_init.c (modified) Must be reg_t. Thu, 27 Jul 2017 09:22:39 GMT max@… [283] * trunk/hal/x86_64/core/hal_init.c (modified) horror Thu, 27 Jul 2017 08:21:51 GMT max@… [280] * trunk/hal/x86_64/core/hal_drivers.c (modified) * trunk/hal/x86_64/core/hal_special.c (modified) * trunk/hal/x86_64/drivers/ioc_ata.c (modified) * trunk/hal/x86_64/drivers/pic_apic.c (modified) * trunk/hal/x86_64/drivers/pic_apic.h (modified) * trunk/hal/x86_64/drivers/txt_rs232.c (modified) sync Wed, 26 Jul 2017 11:24:51 GMT max@… [276] * trunk/hal/x86_64/core/hal_exception.c (modified) * trunk/hal/x86_64/core/hal_init.c (modified) update Wed, 26 Jul 2017 11:20:36 GMT max@… [275] * trunk/hal/x86_64/core/hal_acpi.c (modified) * trunk/hal/x86_64/core/hal_acpi.h (modified) Add a SRAT parser. For some reason, QEMU does not want to enable the ... Wed, 26 Jul 2017 08:54:49 GMT max@… [274] * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_interrupt.c (modified) * trunk/hal/x86_64/core/hal_segmentation.h (modified) Add tls_tf. Mon, 24 Jul 2017 14:30:00 GMT max@… [272] * trunk/hal/x86_64/core/hal_boot.h (modified) * trunk/hal/x86_64/core/hal_gpt.c (modified) * trunk/hal/x86_64/core/hal_types.h (modified) Use local_cxy for GET_PTR, instead of the triple map. This fixes a ... Thu, 20 Jul 2017 13:13:58 GMT max@… [261] * trunk/hal/generic/hal_drivers.h (modified) * trunk/hal/tsar_mips32/core/hal_drivers.c (modified) * trunk/hal/tsar_mips32/drivers/soclib_dma.c (modified) * trunk/hal/x86_64/core/hal_drivers.c (modified) * trunk/kernel/devices/dev_dma.c (modified) Hide soclib_dma. Thu, 20 Jul 2017 13:06:35 GMT max@… [259] * trunk/hal/generic/hal_drivers.h (modified) * trunk/hal/tsar_mips32/core/hal_drivers.c (modified) * trunk/hal/tsar_mips32/drivers/soclib_nic.c (modified) * trunk/hal/x86_64/core/hal_drivers.c (modified) * trunk/kernel/devices/dev_nic.c (modified) Hide soclib_nic. Thu, 20 Jul 2017 12:59:04 GMT max@… [257] * trunk/hal/generic/hal_drivers.h (modified) * trunk/hal/tsar_mips32/core/hal_drivers.c (modified) * trunk/hal/tsar_mips32/drivers/soclib_mmc.c (modified) * trunk/hal/x86_64/core/hal_drivers.c (modified) * trunk/kernel/devices/dev_mmc.c (modified) Hide soclib_mmc. Thu, 20 Jul 2017 12:37:57 GMT max@… [256] * trunk/hal/x86_64/core/hal_init.c (modified) Remove the IRQ line. It will have to be enabled somewhere in the HAL. Thu, 20 Jul 2017 12:35:44 GMT max@… [255] * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/kernel/devices/dev_txt.c (modified) Don't route the IRQ for IMPL_TXT_RS2, it is multiplexed in software. Thu, 20 Jul 2017 12:24:37 GMT max@… [254] * trunk/hal/x86_64/core/hal_drivers.c (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/kernel/devices/dev_txt.h (modified) Use IMPL_TXT_RS2. Thu, 20 Jul 2017 11:30:05 GMT max@… [252] * trunk/hal/generic/hal_drivers.h (modified) * trunk/hal/tsar_mips32/core/hal_drivers.c (modified) * trunk/hal/x86_64/core/hal_drivers.c (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/kernel/devices/dev_pic.c (modified) Hide IMPL_PIC_. Thu, 20 Jul 2017 11:17:49 GMT max@… [250] * trunk/Makefile.x86 (modified) * trunk/hal/x86_64/core/hal_drivers.c (modified) * trunk/hal/x86_64/drivers/soclib_xcu.c (deleted) * trunk/hal/x86_64/drivers/soclib_xcu.h (deleted) Remove XCU on x86; not sure if it's still useful on TSAR... Thu, 20 Jul 2017 11:04:15 GMT max@… [247] * trunk/Makefile.x86 (modified) * trunk/hal/x86_64/core/hal_drivers.c (modified) * trunk/hal/x86_64/drivers/txt_rs232.c (moved) * trunk/hal/x86_64/drivers/txt_rs232.h (moved) * trunk/kernel/kern/kernel_init.c (modified) Rename soclib_tty->txt_rs232. Thu, 20 Jul 2017 10:46:10 GMT max@… [245] * trunk/hal/generic/hal_drivers.h (modified) * trunk/hal/tsar_mips32/core/hal_drivers.c (modified) * trunk/hal/x86_64/core/hal_drivers.c (modified) * trunk/kernel/devices/dev_txt.c (modified) Hide soclib_tty. Thu, 20 Jul 2017 08:29:35 GMT max@… [243] * trunk/hal/x86_64/core/hal_boot.S (modified) * trunk/hal/x86_64/core/hal_smpboot.S (modified) Mmh, some CPUs can boot with the cache disabled, so explicitly enable it. Thu, 20 Jul 2017 08:29:05 GMT max@… [242] * trunk/hal/x86_64/core/hal_exception.c (modified) * trunk/hal/x86_64/core/hal_internal.h (modified) * trunk/hal/x86_64/core/x86_printf.c (modified) add a dumb lock for the console Thu, 20 Jul 2017 08:13:25 GMT max@… [241] * trunk/hal/x86_64/core/hal_acpi.c (modified) * trunk/hal/x86_64/core/hal_acpi.h (modified) some LAPICs can be disabled Thu, 20 Jul 2017 07:55:05 GMT max@… [240] * trunk/hal/x86_64/core/hal_acpi.c (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_irqmask.c (modified) * trunk/hal/x86_64/core/hal_segmentation.h (modified) Make the secondary CPUs jump into kernel_init(). Wed, 19 Jul 2017 12:57:03 GMT max@… [237] * trunk/hal/x86_64/core/hal_apic.c (modified) * trunk/hal/x86_64/core/hal_apic.h (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_interrupt.c (modified) Attach the secondary CPUs, and for now route the keyboard irq to ... Wed, 19 Jul 2017 12:30:15 GMT max@… [236] * trunk/Makefile.x86 (modified) * trunk/hal/x86_64/core/hal_apic.c (modified) * trunk/hal/x86_64/core/hal_apic.h (modified) * trunk/hal/x86_64/core/hal_boot.h (modified) * trunk/hal/x86_64/core/hal_cpu.S (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_internal.h (modified) * trunk/hal/x86_64/core/hal_smpboot.S (added) Launch the secondary CPUs. For now, they all say hello and enter an ... Wed, 19 Jul 2017 08:03:41 GMT max@… [235] * trunk/hal/x86_64/core/hal_acpi.c (modified) * trunk/hal/x86_64/core/hal_apic.c (modified) * trunk/hal/x86_64/core/hal_cpu.S (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_internal.h (modified) Start adding some code for SMP support Tue, 18 Jul 2017 13:33:07 GMT max@… [234] * trunk/hal/x86_64/core/hal_acpi.c (modified) * trunk/hal/x86_64/core/hal_acpi.h (modified) * trunk/hal/x86_64/core/hal_apic.c (modified) * trunk/hal/x86_64/core/hal_apic.h (modified) * trunk/hal/x86_64/core/hal_atomic.c (modified) * trunk/hal/x86_64/core/hal_boot.S (modified) * trunk/hal/x86_64/core/hal_boot.h (modified) * trunk/hal/x86_64/core/hal_context.c (modified) * trunk/hal/x86_64/core/hal_cpu.S (modified) * trunk/hal/x86_64/core/hal_drivers.c (modified) * trunk/hal/x86_64/core/hal_exception.c (modified) * trunk/hal/x86_64/core/hal_gpt.c (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_interrupt.c (modified) * trunk/hal/x86_64/core/hal_irqmask.c (modified) * trunk/hal/x86_64/core/hal_kentry.S (modified) * trunk/hal/x86_64/core/hal_kentry.h (modified) * trunk/hal/x86_64/core/hal_multiboot.h (modified) * trunk/hal/x86_64/core/hal_ppm.c (modified) * trunk/hal/x86_64/core/hal_register.h (modified) * trunk/hal/x86_64/core/hal_remote.c (modified) * trunk/hal/x86_64/core/hal_segmentation.h (modified) * trunk/hal/x86_64/core/hal_special.c (modified) * trunk/hal/x86_64/core/x86_printf.c (modified) style Tue, 18 Jul 2017 13:28:20 GMT max@… [233] * trunk/hal/x86_64/core/hal_exception.c (modified) * trunk/hal/x86_64/core/hal_kentry.S (modified) * trunk/hal/x86_64/core/hal_kentry.h (modified) Push the context entirely for an exception. Tue, 18 Jul 2017 10:31:28 GMT max@… [226] * trunk/hal/tsar_mips32/core/hal_types.h (modified) * trunk/hal/x86_64/core/hal_types.h (modified) add HAL_32BIT/HAL_64BIT Tue, 18 Jul 2017 09:05:17 GMT max@… [225] * trunk/hal/x86_64/core/hal_gpt.c (modified) implement hal_gpt_create Tue, 18 Jul 2017 08:29:58 GMT max@… [224] * trunk/hal/x86_64/core/hal_boot.h (modified) * trunk/hal/x86_64/core/hal_gpt.c (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_types.h (modified) Create a (virtual) copy of the local cluster in 0xffffe00000000000, ... Mon, 17 Jul 2017 12:14:21 GMT max@… [220] * trunk/hal/x86_64/core/hal_kentry.S (modified) * trunk/hal/x86_64/drivers/ioc_ata.c (modified) use the asm entry point to save the context Mon, 17 Jul 2017 11:50:38 GMT max@… [216] * trunk/hal/generic/hal_drivers.h (modified) * trunk/hal/tsar_mips32/core/hal_drivers.c (modified) * trunk/hal/x86_64/core/hal_drivers.c (modified) * trunk/kernel/devices/dev_ioc.c (modified) dispatch 'impl' in the hal Mon, 17 Jul 2017 11:41:13 GMT max@… [215] * trunk/hal/x86_64/core/hal_drivers.c (modified) * trunk/hal/x86_64/drivers/ioc_ata.c (moved) * trunk/hal/x86_64/drivers/ioc_ata.h (moved) rename the ATA driver Mon, 17 Jul 2017 11:29:41 GMT max@… [213] * trunk/hal/generic/hal_drivers.h (modified) * trunk/hal/tsar_mips32/core/hal_drivers.c (modified) * trunk/hal/x86_64/core/hal_drivers.c (modified) * trunk/kernel/devices/dev_ioc.c (modified) hide soclib_bdv Mon, 17 Jul 2017 11:01:31 GMT max@… [209] * trunk/hal/x86_64/core/hal_remote.c (modified) add hal_remote_strcpy Thu, 13 Jul 2017 13:24:38 GMT max@… [203] * trunk/hal/x86_64/core/hal_apic.c (modified) * trunk/hal/x86_64/core/hal_apic.h (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_internal.h (modified) * trunk/hal/x86_64/core/hal_kentry.S (modified) * trunk/hal/x86_64/core/hal_segmentation.h (modified) * trunk/hal/x86_64/drivers/pic_apic.c (modified) * trunk/hal/x86_64/drivers/soclib_bdv.c (modified) * trunk/hal/x86_64/drivers/soclib_xcu.c (modified) start moving the APIC code into the PIC driver Thu, 13 Jul 2017 12:09:32 GMT max@… [202] * trunk/hal/x86_64/core/hal_apic.c (modified) * trunk/hal/x86_64/core/hal_apic.h (modified) * trunk/hal/x86_64/core/hal_init.c (modified) register the ATA IRQs Thu, 13 Jul 2017 10:54:18 GMT max@… [199] * trunk/hal/x86_64/core/hal_apic.c (modified) * trunk/hal/x86_64/core/hal_init.c (modified) map the LAPIC and IOAPIC in a separate function Thu, 13 Jul 2017 10:45:17 GMT max@… [198] * trunk/hal/tsar_mips32/core/hal_drivers.c (modified) * trunk/hal/x86_64/core/hal_drivers.c (modified) mmh, mistakenly removed this Thu, 13 Jul 2017 10:42:33 GMT max@… [197] * trunk/Makefile.x86 (modified) * trunk/hal/x86_64/core/hal_drivers.c (modified) * trunk/hal/x86_64/drivers/pic_apic.c (moved) * trunk/hal/x86_64/drivers/pic_apic.h (moved) rename soclib->apic Thu, 13 Jul 2017 10:35:48 GMT max@… [196] * trunk/hal/tsar_mips32/core/hal_drivers.c (modified) * trunk/hal/x86_64/core/hal_drivers.c (modified) * trunk/hal/x86_64/drivers/soclib_pic.c (modified) * trunk/hal/x86_64/drivers/soclib_pic.h (modified) sync Thu, 13 Jul 2017 10:28:37 GMT max@… [195] * trunk/hal/x86_64/core/hal_context.c (modified) * trunk/hal/x86_64/core/hal_cpu.S (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_internal.h (modified) add IOC (ATA) Thu, 13 Jul 2017 07:28:06 GMT max@… [193] * trunk/hal/x86_64/core/hal_boot.S (modified) * trunk/hal/x86_64/core/hal_boot.h (modified) * trunk/hal/x86_64/core/hal_context.c (modified) * trunk/hal/x86_64/core/hal_interrupt.c (modified) * trunk/hal/x86_64/core/hal_kentry.h (modified) build the context Thu, 13 Jul 2017 07:27:38 GMT max@… [192] * trunk/hal/x86_64/core/hal_init.c (modified) initialize pic Thu, 13 Jul 2017 06:26:47 GMT max@… [190] * trunk/hal/generic/hal_drivers.h (modified) * trunk/hal/tsar_mips32/core/hal_drivers.c (modified) * trunk/hal/x86_64/core/hal_drivers.c (modified) * trunk/kernel/devices/dev_pic.c (modified) hide soclib Thu, 13 Jul 2017 06:25:13 GMT max@… [189] * trunk/hal/x86_64/core/hal_remote.c (modified) * trunk/hal/x86_64/core/hal_uspace.c (modified) sync Wed, 12 Jul 2017 14:03:13 GMT max@… [187] * trunk/hal/x86_64/core/hal_acpi.c (modified) count the number of IOAPICs Mon, 10 Jul 2017 08:33:42 GMT max@… [169] * trunk/hal/x86_64/core/hal_special.c (modified) remove unused var Mon, 10 Jul 2017 08:33:15 GMT max@… [168] * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_internal.h (modified) * trunk/hal/x86_64/core/hal_interrupt.c (modified) * trunk/hal/x86_64/core/hal_special.c (modified) make the TLS initialization per-cpu Mon, 10 Jul 2017 08:23:29 GMT max@… [167] * trunk/hal/x86_64/core/hal_segmentation.h (modified) * trunk/hal/x86_64/core/hal_special.c (modified) define the TLS in hal_segmentation.h Mon, 10 Jul 2017 08:14:27 GMT max@… [166] * trunk/hal/x86_64/core/hal_cpu.S (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_internal.h (modified) * trunk/hal/x86_64/core/hal_register.h (modified) identify the cpu features Mon, 10 Jul 2017 07:13:04 GMT max@… [165] * trunk/hal/x86_64/core/hal_init.c (modified) put the per-cpu structures into one structure Fri, 07 Jul 2017 13:22:59 GMT max@… [164] * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_segmentation.h (modified) we're gonna use an array of TSSs