Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								20e2a5c111 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the module_unload syscall  
							
							
							
						 
						
							2020-08-10 12:52:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								c4927ceb08 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the module_load syscall  
							
							
							
						 
						
							2020-08-10 12:52:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								b5a2a215f6 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the getrandom syscall  
							
							
							
						 
						
							2020-08-10 12:52:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								c8ae244ab8 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the shbuf_get syscall  
							
							
							
						 
						
							2020-08-10 12:52:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								e073f2b59e 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the get_thread_name syscall  
							
							
							
						 
						
							2020-08-10 12:52:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								9652b0ae2b 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the set_thread_name syscall  
							
							
							
						 
						
							2020-08-10 12:52:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								0e20a6df0a 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the connect syscall  
							
							
							
						 
						
							2020-08-10 12:52:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								8bd9dbc220 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the accept syscall  
							
							
							
						 
						
							2020-08-10 12:52:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								02660b5d60 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the bind syscall, and implementation  
							
							
							
						 
						
							2020-08-10 12:52:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								2bac7190c8 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the chmod syscall  
							
							
							
						 
						
							2020-08-10 12:52:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								82bf6e8133 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the umount syscall  
							
							
							
						 
						
							2020-08-10 12:52:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								317800324c 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the unlink syscall  
							
							
							
						 
						
							2020-08-10 12:52:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								ecfe20efd2 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the sigpending syscall  
							
							
							
						 
						
							2020-08-10 12:52:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								fbb26b28b9 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the sigprocmask syscall  
							
							
							
						 
						
							2020-08-10 12:52:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								431145148e 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the fstat syscall  
							
							
							
						 
						
							2020-08-10 12:52:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								8dd78201a4 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the uname syscall  
							
							
							
						 
						
							2020-08-10 12:52:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								cfedd62b5c 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the sethostname syscall  
							
							
							
						 
						
							2020-08-10 12:52:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								1d9554f470 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the gethostname syscall  
							
							
							
						 
						
							2020-08-10 12:52:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								b069d757a3 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the clock_settime syscall  
							
							
							
						 
						
							2020-08-10 12:52:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								1be6145fdf 
								
							 
						 
						
							
							
								
								Kernel: Modifiy clock_settime timespec argument to const  
							
							... 
							
							
							
							The timeppec paramter is read only, and should be const. 
							
						 
						
							2020-08-10 12:52:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								b4d04fd8d1 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the clock_gettime syscall  
							
							
							
						 
						
							2020-08-10 12:52:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								48d9f3c2e6 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the getresgid syscall  
							
							
							
						 
						
							2020-08-10 12:52:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								3ca18a88d7 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the getresuid syscall  
							
							
							
						 
						
							2020-08-10 12:52:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								7943655838 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the times syscall  
							
							
							
						 
						
							2020-08-10 12:52:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								e7728ca8fd 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the getgroups syscall  
							
							
							
						 
						
							2020-08-10 12:52:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								80011cd62d 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the setgroups syscall  
							
							
							
						 
						
							2020-08-10 12:52:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								0f42463eab 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the execve syscall  
							
							
							
						 
						
							2020-08-10 12:52:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ben Wiederhake 
								
							 
						 
						
							
							
							
							
								
							
							
								bee08a4b9f 
								
							 
						 
						
							
							
								
								Kernel: More PID/TID typing  
							
							
							
						 
						
							2020-08-10 11:51:45 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ben Wiederhake 
								
							 
						 
						
							
							
							
							
								
							
							
								7bdf54c837 
								
							 
						 
						
							
							
								
								Kernel: PID/PGID typing  
							
							... 
							
							
							
							This compiles, and fixes two bugs:
- setpgid() confusion (see previous commit)
- tcsetpgrp() now allows to set a non-empty process group even if
  the group leader has already died. This makes Serenity slightly
  more POSIX-compatible. 
							
						 
						
							2020-08-10 11:51:45 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ben Wiederhake 
								
							 
						 
						
							
							
							
							
								
							
							
								f5744a6f2f 
								
							 
						 
						
							
							
								
								Kernel: PID/TID typing  
							
							... 
							
							
							
							This compiles, and contains exactly the same bugs as before.
The regex 'FIXME: PID/' should reveal all markers that I left behind, including:
- Incomplete conversion
- Issues or things that look fishy
- Actual bugs that will go wrong during runtime 
							
						 
						
							2020-08-10 11:51:45 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								35c745ca54 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the realpath syscall  
							
							
							
						 
						
							2020-08-07 16:18:36 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								30b2c0dc85 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the getsockopt syscall and Socket interface  
							
							... 
							
							
							
							The way getsockopt is implemented for socket types requires us to push
down Userspace<T> using into those interfaces. This change does so, and
utilizes proper copy implementations instead of the kind of haphazard
pointer dereferencing that was occurring there before. 
							
						 
						
							2020-08-07 16:18:36 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								6920d5f423 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the setsockopt syscall  
							
							
							
						 
						
							2020-08-07 16:18:36 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								8fa46bcb7d 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the getsockname syscall  
							
							
							
						 
						
							2020-08-07 16:18:36 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								dc75ea9fc2 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the getpeername syscall  
							
							
							
						 
						
							2020-08-07 16:18:36 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								0db669a9d2 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the chown syscall  
							
							
							
						 
						
							2020-08-07 16:18:36 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								7e7ee2ec94 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the mount syscall  
							
							
							
						 
						
							2020-08-07 16:18:36 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Valtteri Koskivuori 
								
							 
						 
						
							
							
							
							
								
							
							
								00a0e525e6 
								
							 
						 
						
							
							
								
								Kernel+LibKeyboard: Store the keymap name when setting system keymap  
							
							... 
							
							
							
							This way we can query the kernel to see which keymap is currently in use. 
							
						 
						
							2020-08-06 17:45:06 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								7e6fbef8db 
								
							 
						 
						
							
							
								
								Kernel: Partial usage of Userspace<T> for the poll syscall  
							
							... 
							
							
							
							This change mostly converts poll to Userspace<T> with the caveat
of the fds member of SC_poll_params. It's current usage is a bit
too gnarly for me to take on right now, this appears to need a lot
more love.
In addition to enlightening the syscall to use Userspace<T>, I've
also re-worked most of the handling to use validate_read_and_copy
instead of just directly de-referencing the user pointer. We also
appeared to be missing a re-evaluation of the fds array after the
thread block is awoken. 
							
						 
						
							2020-08-06 10:22:44 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								946c96dd56 
								
							 
						 
						
							
							
								
								Kernel: Suppress remaining unobserved KResult return codes  
							
							... 
							
							
							
							These are all cases where there is no clear and easy fix,
I've left FIXME bread crumbs so that these can hopefully
be fixed over time. 
							
						 
						
							2020-08-05 14:36:48 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								fa666f6897 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the futex syscall  
							
							... 
							
							
							
							Utilizie Userspace<T> for the syscall argument itself, as well
as internally in the SC_futex_params struct.
We were double validating the SC_futex_params.timeout validation,
that was removed as well. 
							
						 
						
							2020-08-05 13:03:50 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								7490ea9449 
								
							 
						 
						
							
							
								
								Kernel + LibPthread: Use Userspace<T> in the create_thread syscall  
							
							
							
						 
						
							2020-08-05 09:36:53 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								337e8f98cd 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the rename syscall  
							
							
							
						 
						
							2020-08-05 09:36:53 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								c1541f4a61 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the mknod syscall  
							
							
							
						 
						
							2020-08-05 09:36:53 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								d949b2a367 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the set_mmap_name syscall  
							
							
							
						 
						
							2020-08-05 09:36:53 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								7449921f53 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the readlink syscall  
							
							
							
						 
						
							2020-08-05 09:36:53 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								901dae0227 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the mmap syscall  
							
							
							
						 
						
							2020-08-05 09:36:53 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								74d3b202f1 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the waitid syscall  
							
							
							
						 
						
							2020-08-05 09:36:53 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								84035e1035 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the clock_nanosleep syscall  
							
							
							
						 
						
							2020-08-05 09:36:53 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								baa070afb8 
								
							 
						 
						
							
							
								
								Kernel: Use Userspace<T> for the gettimeofday syscall  
							
							
							
						 
						
							2020-08-05 09:36:53 +02:00