Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								c94c15d45c 
								
							 
						 
						
							
							
								
								Everywhere: Replace AK::Singleton => Singleton  
							
							
							
						 
						
							2021-08-08 00:03:45 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Hendiadyoin1 
								
							 
						 
						
							
							
							
							
								
							
							
								62f9377656 
								
							 
						 
						
							
							
								
								Kernel: Move special sections into Sections.h  
							
							... 
							
							
							
							This also removes a lot of CPU.h includes infavor for Sections.h 
							
						 
						
							2021-06-24 00:38:23 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Hendiadyoin1 
								
							 
						 
						
							
							
							
							
								
							
							
								7ca3d413f7 
								
							 
						 
						
							
							
								
								Kernel: Pull apart CPU.h  
							
							... 
							
							
							
							This does not add any functional changes 
							
						 
						
							2021-06-24 00:38:23 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								4bf9b399f7 
								
							 
						 
						
							
							
								
								Kernel: Remove unused header includes from various files.  
							
							... 
							
							
							
							Found while browsing code with CLion. 
							
						 
						
							2021-05-03 16:03:17 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Linus Groh 
								
							 
						 
						
							
							
							
							
								
							
							
								dbe72fd962 
								
							 
						 
						
							
							
								
								Everywhere: Remove empty line after function body opening curly brace  
							
							
							
						 
						
							2021-04-25 20:20:00 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								1682f0b760 
								
							 
						 
						
							
							
								
								Everything: Move to SPDX license identifiers in all files.  
							
							... 
							
							
							
							SPDX License Identifiers are a more compact / standardized
way of representing file license information.
See: https://spdx.dev/resources/use/#identifiers 
This was done with the `ambr` search and replace tool.
 ambr --no-parent-ignore --key-from-file --rep-from-file key.txt rep.txt * 
							
						 
						
							2021-04-22 11:22:27 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Hendiadyoin1 
								
							 
						 
						
							
							
							
							
								
							
							
								0d934fc991 
								
							 
						 
						
							
							
								
								Kernel::CPU: Move headers into common directory  
							
							... 
							
							
							
							Alot of code is shared between i386/i686/x86 and x86_64
and a lot probably will be used for compatability modes.
So we start by moving the headers into one Directory.
We will probalby be able to move some cpp files aswell. 
							
						 
						
							2021-03-21 09:35:23 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								a906670d1c 
								
							 
						 
						
							
							
								
								Kernel: Convert klog() => dmesgln() in VMWareBackdoor  
							
							
							
						 
						
							2021-03-09 22:10:41 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								84a399de5d 
								
							 
						 
						
							
							
								
								Kernel: Move Kernel CommandLine parsing to strongly typed API.  
							
							... 
							
							
							
							Previously all of the CommandLine parsing was spread out around the
Kernel. Instead move it all into the Kernel CommandLine class, and
expose a strongly typed API for querying the state of options. 
							
						 
						
							2021-03-03 11:05:16 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tom 
								
							 
						 
						
							
							
							
							
								
							
							
								b4c1b96d96 
								
							 
						 
						
							
							
								
								Kernel: Fix scrolling up in VMware  
							
							... 
							
							
							
							The mouse wheel delta is provided as a signed 8 bit value. 
							
						 
						
							2021-03-01 11:10:10 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								2b2828ae52 
								
							 
						 
						
							
							
								
								Kernel: Slap UNMAP_AFTER_INIT on a bunch more functions  
							
							... 
							
							
							
							We're now able to unmap 100 KiB of kernel text after init. :^) 
							
						 
						
							2021-02-19 21:42:18 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									AnotherTest 
								
							 
						 
						
							
							
							
							
								
							
							
								09a43969ba 
								
							 
						 
						
							
							
								
								Everywhere: Replace dbgln<flag>(...) with dbgln_if(flag, ...)  
							
							... 
							
							
							
							Replacement made by `find Kernel Userland -name '*.h' -o -name '*.cpp' | sed -i -Ee 's/dbgln\b<(\w+)>\(/dbgln_if(\1, /g'` 
							
						 
						
							2021-02-08 18:08:55 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									asynts 
								
							 
						 
						
							
							
							
							
								
							
							
								7cf0c7cc0d 
								
							 
						 
						
							
							
								
								Meta: Split debug defines into multiple headers.  
							
							... 
							
							
							
							The following script was used to make these changes:
    #!/bin/bash
    set -e
    tmp=$(mktemp -d)
    echo "tmp=$tmp"
    find Kernel \( -name '*.cpp' -o -name '*.h' \) | sort > $tmp/Kernel.files
    find . \( -path ./Toolchain -prune -o -path ./Build -prune -o -path ./Kernel -prune \) -o \( -name '*.cpp' -o -name '*.h' \) -print | sort > $tmp/EverythingExceptKernel.files
    cat $tmp/Kernel.files | xargs grep -Eho '[A-Z0-9_]+_DEBUG' | sort | uniq > $tmp/Kernel.macros
    cat $tmp/EverythingExceptKernel.files | xargs grep -Eho '[A-Z0-9_]+_DEBUG' | sort | uniq > $tmp/EverythingExceptKernel.macros
    comm -23 $tmp/Kernel.macros $tmp/EverythingExceptKernel.macros > $tmp/Kernel.unique
    comm -1 $tmp/Kernel.macros $tmp/EverythingExceptKernel.macros > $tmp/EverythingExceptKernel.unique
    cat $tmp/Kernel.unique | awk '{ print "#cmakedefine01 "$1 }' > $tmp/Kernel.header
    cat $tmp/EverythingExceptKernel.unique | awk '{ print "#cmakedefine01 "$1 }' > $tmp/EverythingExceptKernel.header
    for macro in $(cat $tmp/Kernel.unique)
    do
        cat $tmp/Kernel.files | xargs grep -l $macro >> $tmp/Kernel.new-includes ||:
    done
    cat $tmp/Kernel.new-includes | sort > $tmp/Kernel.new-includes.sorted
    for macro in $(cat $tmp/EverythingExceptKernel.unique)
    do
        cat $tmp/Kernel.files | xargs grep -l $macro >> $tmp/Kernel.old-includes ||:
    done
    cat $tmp/Kernel.old-includes | sort > $tmp/Kernel.old-includes.sorted
    comm -23 $tmp/Kernel.new-includes.sorted $tmp/Kernel.old-includes.sorted > $tmp/Kernel.includes.new
    comm -13 $tmp/Kernel.new-includes.sorted $tmp/Kernel.old-includes.sorted > $tmp/Kernel.includes.old
    comm -12 $tmp/Kernel.new-includes.sorted $tmp/Kernel.old-includes.sorted > $tmp/Kernel.includes.mixed
    for file in $(cat $tmp/Kernel.includes.new)
    do
        sed -i -E 's/#include <AK\/Debug\.h>/#include <Kernel\/Debug\.h>/' $file
    done
    for file in $(cat $tmp/Kernel.includes.mixed)
    do
        echo "mixed include in $file, requires manual editing."
    done 
							
						 
						
							2021-01-26 21:20:00 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									asynts 
								
							 
						 
						
							
							
							
							
								
							
							
								8465683dcf 
								
							 
						 
						
							
							
								
								Everywhere: Debug macros instead of constexpr.  
							
							... 
							
							
							
							This was done with the following script:
    find . \( -name '*.cpp' -o -name '*.h' -o -name '*.in' \) -not -path './Toolchain/*' -not -path './Build/*' -exec sed -i -E 's/dbgln<debug_([a-z_]+)>/dbgln<\U\1_DEBUG>/' {} \;
    find . \( -name '*.cpp' -o -name '*.h' -o -name '*.in' \) -not -path './Toolchain/*' -not -path './Build/*' -exec sed -i -E 's/if constexpr \(debug_([a-z0-9_]+)/if constexpr \(\U\1_DEBUG/' {} \; 
							
						 
						
							2021-01-25 09:47:36 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									asynts 
								
							 
						 
						
							
							
							
							
								
							
							
								acdcf59a33 
								
							 
						 
						
							
							
								
								Everywhere: Remove unnecessary debug comments.  
							
							... 
							
							
							
							It would be tempting to uncomment these statements, but that won't work
with the new changes.
This was done with the following commands:
    find . \( -name '*.cpp' -o -name '*.h' -o -name '*.in' \) -not -path './Toolchain/*' -not -path './Build/*' -exec awk -i inplace '$0 !~ /\/\/#define/ { if (!toggle) { print; } else { toggle = !toggle } } ; $0 ~/\/\/#define/ { toggle = 1 }' {} \;
    find . \( -name '*.cpp' -o -name '*.h' -o -name '*.in' \) -not -path './Toolchain/*' -not -path './Build/*' -exec awk -i inplace '$0 !~ /\/\/ #define/ { if (!toggle) { print; } else { toggle = !toggle } } ; $0 ~/\/\/ #define/ { toggle = 1 }' {} \; 
							
						 
						
							2021-01-25 09:47:36 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									asynts 
								
							 
						 
						
							
							
							
							
								
							
							
								1a3a0836c0 
								
							 
						 
						
							
							
								
								Everywhere: Use CMake to generate AK/Debug.h.  
							
							... 
							
							
							
							This was done with the help of several scripts, I dump them here to
easily find them later:
    awk '/#ifdef/ { print "#cmakedefine01 "$2 }' AK/Debug.h.in
    for debug_macro in $(awk '/#ifdef/ { print $2 }' AK/Debug.h.in)
    do
        find . \( -name '*.cpp' -o -name '*.h' -o -name '*.in' \) -not -path './Toolchain/*' -not -path './Build/*' -exec sed -i -E 's/#ifdef '$debug_macro'/#if '$debug_macro'/' {} \;
    done
    # Remember to remove WRAPPER_GERNERATOR_DEBUG from the list.
    awk '/#cmake/ { print "set("$2" ON)" }' AK/Debug.h.in 
							
						 
						
							2021-01-25 09:47:36 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									asynts 
								
							 
						 
						
							
							
							
							
								
							
							
								78b2be5a2a 
								
							 
						 
						
							
							
								
								Everywhere: Replace a bundle of dbg with dbgln.  
							
							... 
							
							
							
							These changes are arbitrarily divided into multiple commits to make it
easier to find potentially introduced bugs with git bisect. 
							
						 
						
							2021-01-22 22:14:30 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ben Wiederhake 
								
							 
						 
						
							
							
							
							
								
							
							
								64cc3f51d0 
								
							 
						 
						
							
							
								
								Meta+Kernel: Make clang-format-10 clean  
							
							
							
						 
						
							2020-09-25 21:18:17 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tom 
								
							 
						 
						
							
							
							
							
								
							
							
								d89582880e 
								
							 
						 
						
							
							
								
								Kernel: Switch singletons to use new Singleton class  
							
							... 
							
							
							
							MemoryManager cannot use the Singleton class because
MemoryManager::initialize is called before the global constructors
are run. That caused the Singleton to be re-initialized, causing
it to create another MemoryManager instance.
Fixes  #3226  
							
						 
						
							2020-08-25 09:48:48 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								2fd9e72264 
								
							 
						 
						
							
							
								
								Revert "Kernel: Switch singletons to use new Singleton class"  
							
							... 
							
							
							
							This reverts commit f48feae0b2 
							
						 
						
							2020-08-22 18:01:59 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								8925ad3fa0 
								
							 
						 
						
							
							
								
								Revert "Kernel: Move Singleton class to AK"  
							
							... 
							
							
							
							This reverts commit f0906250a1 
							
						 
						
							2020-08-22 16:34:49 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								68580d5a8d 
								
							 
						 
						
							
							
								
								Revert "AK: Get rid of make_singleton function"  
							
							... 
							
							
							
							This reverts commit 5a98e329d1 
							
						 
						
							2020-08-22 16:34:14 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tom 
								
							 
						 
						
							
							
							
							
								
							
							
								5a98e329d1 
								
							 
						 
						
							
							
								
								AK: Get rid of make_singleton function  
							
							... 
							
							
							
							Just default the InitFunction template argument. 
							
						 
						
							2020-08-22 10:46:24 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tom 
								
							 
						 
						
							
							
							
							
								
							
							
								f0906250a1 
								
							 
						 
						
							
							
								
								Kernel: Move Singleton class to AK  
							
							
							
						 
						
							2020-08-22 10:46:24 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tom 
								
							 
						 
						
							
							
							
							
								
							
							
								f48feae0b2 
								
							 
						 
						
							
							
								
								Kernel: Switch singletons to use new Singleton class  
							
							... 
							
							
							
							Fixes  #3226  
						
							2020-08-21 11:47:35 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								11c4a28660 
								
							 
						 
						
							
							
								
								Kernel: Move headers intended for userspace use into Kernel/API/  
							
							
							
						 
						
							2020-07-04 17:22:23 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								21d5f4ada1 
								
							 
						 
						
							
							
								
								Kernel: Absorb LibBareMetal back into the kernel  
							
							... 
							
							
							
							This was supposed to be the foundation for some kind of pre-kernel
environment, but nobody is working on it right now, so let's move
everything back into the kernel and remove all the confusion. 
							
						 
						
							2020-05-16 12:00:04 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Liav A 
								
							 
						 
						
							
							
							
							
								
							
							
								e9df6189f4 
								
							 
						 
						
							
							
								
								Kernel: Assert if we try to initialize VMWareBackdoor more than once  
							
							
							
						 
						
							2020-04-11 10:02:31 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								5cc09b0245 
								
							 
						 
						
							
							
								
								Kernel: Simplify VMWareBackdoor somewhat  
							
							... 
							
							
							
							- If there is no VMWare backdoor, don't allocate memory for it.
- Remove the "unsupported" state, instead just don't instantiate.
- Move the command-line parsing from init to the driver.
- Move mouse packet reception from PS2MouseDevice to VMWareBackdoor. 
							
						 
						
							2020-04-08 17:19:46 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Liav A 
								
							 
						 
						
							
							
							
							
								
							
							
								0fc60e41dd 
								
							 
						 
						
							
							
								
								Kernel: Use klog() instead of kprintf()  
							
							... 
							
							
							
							Also, duplicate data in dbg() and klog() calls were removed.
In addition, leakage of virtual address to kernel log is prevented.
This is done by replacing kprintf() calls to dbg() calls with the
leaked data instead.
Also, other kprintf() calls were replaced with klog(). 
							
						 
						
							2020-03-02 22:23:39 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Liav A 
								
							 
						 
						
							
							
							
							
								
							
							
								9ee6d00b57 
								
							 
						 
						
							
							
								
								VMWareBackdoor: Use dbg() instead of dbgprintf()  
							
							
							
						 
						
							2020-02-27 13:05:12 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								a356e48150 
								
							 
						 
						
							
							
								
								Kernel: Move all code into the Kernel namespace  
							
							
							
						 
						
							2020-02-16 01:27:42 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Liav A 
								
							 
						 
						
							
							
							
							
								
							
							
								e559af2008 
								
							 
						 
						
							
							
								
								Kernel: Apply changes to use LibBareMetal definitions  
							
							
							
						 
						
							2020-02-09 19:38:17 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Liav A 
								
							 
						 
						
							
							
							
							
								
							
							
								f6ce24eb48 
								
							 
						 
						
							
							
								
								Kernel: Move the VMWare helpers out of the IO namespace  
							
							
							
						 
						
							2020-02-05 18:58:27 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Liav A 
								
							 
						 
						
							
							
							
							
								
							
							
								8e8f5c212b 
								
							 
						 
						
							
							
								
								Kernel: Fix vmmouse detection method  
							
							... 
							
							
							
							Also, add debug messages in the VMWareBackdoor class. 
							
						 
						
							2020-02-05 18:58:27 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Liav A 
								
							 
						 
						
							
							
							
							
								
							
							
								6070fe581b 
								
							 
						 
						
							
							
								
								Kernel: Add support for high bandwidth IO communication with VMWare  
							
							
							
						 
						
							2020-02-05 18:58:27 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Liav A 
								
							 
						 
						
							
							
							
							
								
							
							
								47978a5828 
								
							 
						 
						
							
							
								
								Kernel: Add support for vmmouse  
							
							... 
							
							
							
							We add this feature together with the VMWareBackdoor class.
VMWareBackdoor class is responsible for enabling the vmmouse, and then
controlling it from the PS2 mouse IRQ handler. 
							
						 
						
							2020-02-04 19:11:52 +01:00