From 2062e7070710989abf7271838efb99cbfbe511d0 Mon Sep 17 00:00:00 2001 From: Brett Weiland Date: Sun, 12 Sep 2021 12:53:33 -0500 Subject: SMP fixed for CPUs with defective cores modified: README.md modified: src/.gdb_history modified: src/bootloader/enter_kernel.asm modified: src/bootloader/gdt.asm modified: src/debug/gdbinit.gdb modified: src/include/int.h modified: src/include/paging.h modified: src/include/smp.h modified: src/include/smp_sync.h modified: src/indigo_os modified: src/kernel/int.c modified: src/kernel/kernel.c modified: src/kernel/klog.c modified: src/kernel/madt.c modified: src/kernel/page.c modified: src/kernel/panic.c modified: src/kernel/printf.c modified: src/kernel/smp.c modified: src/kernel/smp_trampoline.asm modified: .gitignore deleted: src/.gdb_history --- src/.gdb_history | 314 +++++++++++++++++++++++++++---------------------------- 1 file changed, 157 insertions(+), 157 deletions(-) (limited to 'src/.gdb_history') diff --git a/src/.gdb_history b/src/.gdb_history index b48fd09..e77f7f1 100644 --- a/src/.gdb_history +++ b/src/.gdb_history @@ -1,227 +1,233 @@ -thread 0 -thread 2 -print cores_active -context -thread 1 -next -c -print cores_active -print &cores_active -thread 2 +info reg rbx +info reg rsp +info reg rbx +info reg rax +x 0xffff8000bffde058 +stepi +info reg rsp +x 0xffff8000bffde058 +stepi info reg rax +stex 0x8111 +x 0x8111 info reg rax -x 0x1000bf +stepi quit -c -print smp_bootstrap_stackarray -print smp_bootstrap_corecount -print smp_bootstrap_bsp quit c -x smp_bootstrap_bsp -next -print smp_bootstrap_bsp -print smp_bootstrap_stackarray -print smp_bootstrap_bsp -print smp_bootstrap_bsp -info reg rax -x smp_bootstrap_corecount -print smp_bootstrap_corecount quit c -c -c -c quit c -c -c -c quit -b panic c -thread -threads -info thread -thread 2 -thread 3 -thread 4 quit +quit +hb bruh c -c -c -c +stepi +info rip +info reg rip quit +hb smp_enter_kernel +c quit -print final_gdt_descriptor -print gdt +hb smp_enter_kernel +c +stepi +info reg rsp quit quit +hb smp_longsetup +c +stepi quit -nexti -thread 1 -thread 23 -thread 2 -print final_gdt_descriptor.offset -qut quit -context -disassemble -x/i 0x80dd quit +hb smp_enter_kernel c +stepi +info reg rsp +quit c c quit -next -print gdt -print gdtr -next -print gdtr -print/x (void *)&gdtr -print/x *(void *)&gdtr -hexdump &gdtr -print/x gdtr -quit c -quit -next +stepi stepi info reg rax -info reg rdx -print final_gdt_descriptor -print &final_gdt_descriptor +stepi quit +c +stepi +info reg rbx +stepi +x $rbx quit +hb smp_enter_kernel c +info reg rsp +stepi +x $rsp +stepi +x $rsp quit +hb smp_enter_kernel c -thread 2 -next +stepi +info reg rsp +stepi +quit quit c -thread -threads -info threads -thread 1 c c -quit c -quit c quit -hb klog.c -hb klog -hb klog_init c quit -hb init_klog +hb fuckin_testeroni c -print sizeof(serial_ports) -print sizeof(serial_ports) / sizeof(uint16_t) +stepi +info reg rax +stepi +info reg bl +stepi quit +hb fuckin_testroni c quit +hb fuckin_testeroni c -quit +stepi +info reg bl +print/c 51 +stepi c -quit -hb smp_trampoline.asm:163 c -print smp_kinit -x smp_kinit -next -info reg rax -x smp_kinit -nexti -x smp_kinit -info reg rax -quit c -quit c +make quit c quit c quit -nexti -stepi -stepi -next -quit -b _putchar +hb smnp_boot c -stepi -next +print smp_bootstrap_stackarray +print &smp_bootstrap_stackarray +print smp_bootstrap_stackarray +quit c +print smp_stackarray +print *smp_stackarray +print smp_stackarray[0] +print smp_stackarray[1] +print smp_stackarray[2] +print smp_stackarray[3] +print smp_stackarray[4] +quit c +print smp_stackarray[0] +print smp_stackarray[1] +print smp_stackarray[2] +print smp_stackarray[3] quit -hb _putchar c +info threads +thread 2w +thread 2 c -next -step -print screen_buffer -x 0xffff8000000b80a0 -0xffff800000000000 -x 0xffff800000000000 quit +hb smp_enter_kernel c quit -b _putchar +hb smp_enter_kernel c c -step -print screen_buffer -stepi -c -d +threads +threads +info threads c +info threads +cpu 3 +info cpu 3 +thread 3 +context +stepi +info reg rsi quit -next -quit -b init_klog +hb smp_longsetup c -next -print serial_ports[0] -print/x serial_ports[0] -next -quit +stepi +info reg rsi +stepi +info reg rsi +print rsi+1 +x rsi +x $rsi +print (uint64_t *)$rsi +print *(uint64_t *)$rsi +x $rsi +x/x $rsi +x/c $rsi +x/p $rsi +x &rsi +x $rsi +x $rsi+8 +x $rsi+1 +print (uint64_t*)0xffff8000bffde059 +print *(uint64_t*)0xffff8000bffde059 +print/x *(uint64_t*)0xffff8000bffde059 +thread 1 +thread 0 +ls quit c +info threads +cpu 1 +thread 1 +stepi quit +hb smp_longsetup c +info thread +stepi +d +thread 0 +thread 3 +thread 4 +stepi +info reg bl +stepi +info reg rsi +stepi +info reg al +stepi +info reg rsi +print (struct core_stack *)0xffff8000bffde058 +print *(struct core_stack *)0xffff8000bffde058 +print *(struct core_stack *)0xffff8000bffde061 +stepi +stepi +uit quit +hb smp_trampoline +c +stepi c -quit c -quit c -quit -b init_klog c -print sizeof(serial_ports) / sizeof(uint16_t) -next -print p -next -make -quit -b init_klog c -next -step -b _putchar c -step -step -print (char *)((uint64_t)VIDEO_BUFFER + ((on_line * 160) + (on_char * 2))) -print (char *)((uint64_t)0xb8000 + ((on_line * 160) + (on_char * 2))) -quit c +c +cq uit quit -hb test_shit +hb smp_trampoline c c c @@ -233,24 +239,18 @@ c c c c +thread 1 +thread 2 c quit +hb smp_protected c +print smp_stackarray_ptr +print smp_bootstrap_bsp +print &smp_bootstrap_bsp quit -quit -next -quit -quit -quit -info reg edx -nexti -info reg edx -quit -next -info reg ebx -quit -hb fuckyou -quit +hb smp_boot c -info reg ebx +print smp_bootstrap_ +print smp_bootstrap_corecount quit -- cgit v1.2.3