forked from Bananymous/banan-os
				
			
			update main #1
			
				
			
		
		
		
	| 
						 | 
				
			
			@ -148,6 +148,9 @@ target_compile_options(kernel PUBLIC $<$<COMPILE_LANGUAGE:CXX>:-Wno-literal-suff
 | 
			
		|||
target_compile_options(kernel PUBLIC -fmacro-prefix-map=${CMAKE_CURRENT_SOURCE_DIR}=.)
 | 
			
		||||
target_compile_options(kernel PUBLIC -fstack-protector -ffreestanding -Wall -Werror=return-type -Wstack-usage=1024 -fno-omit-frame-pointer -mgeneral-regs-only)
 | 
			
		||||
 | 
			
		||||
# This might not work with other toolchains
 | 
			
		||||
target_compile_options(kernel PUBLIC $<$<COMPILE_LANGUAGE:CXX>:-Wno-invalid-offsetof>)
 | 
			
		||||
 | 
			
		||||
if(ENABLE_KERNEL_UBSAN)
 | 
			
		||||
	target_compile_options(kernel PUBLIC -fsanitize=undefined)
 | 
			
		||||
endif()
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -213,7 +213,7 @@ namespace Kernel
 | 
			
		|||
				auto* fadt = (FADT*)header;
 | 
			
		||||
 | 
			
		||||
				paddr_t dsdt_paddr = 0;
 | 
			
		||||
				if (fadt->length > 140) // 140 is the offset of x_dsdt
 | 
			
		||||
				if (fadt->length > offsetof(FADT, x_dsdt))
 | 
			
		||||
					dsdt_paddr = fadt->x_dsdt;
 | 
			
		||||
				if (dsdt_paddr == 0 || !PageTable::is_valid_pointer(dsdt_paddr))
 | 
			
		||||
					dsdt_paddr = fadt->dsdt;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue