Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								899cee8185 
								
							 
						 
						
							
							
								
								Kernel: Make KBuffer::try_create_with_size() return KResultOr  
							
							... 
							
							
							
							This allows us to use TRY() in a lot of new places. 
							
						 
						
							2021-09-07 15:15:08 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								ed5d04b0ea 
								
							 
						 
						
							
							
								
								Kernel: Use KResultOr and TRY() for FIFO  
							
							
							
						 
						
							2021-09-07 13:58:16 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								01993d0af3 
								
							 
						 
						
							
							
								
								Kernel: Make DoubleBuffer::try() return KResultOr  
							
							... 
							
							
							
							This tidies up error propagation in a number of places. 
							
						 
						
							2021-09-07 13:53:14 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								4a9c18afb9 
								
							 
						 
						
							
							
								
								Kernel: Rename FileDescription => OpenFileDescription  
							
							... 
							
							
							
							Dr. POSIX really calls these "open file description", not just
"file description", so let's call them exactly that. :^) 
							
						 
						
							2021-09-07 13:53:14 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								cae20d2aa9 
								
							 
						 
						
							
							
								
								Kernel: Add FileDescription::try_serialize_absolute_path()  
							
							... 
							
							
							
							Unlike FileDescription::absolute_path(), this knows that failures can
happen and will propagate them to the caller. 
							
						 
						
							2021-09-07 13:53:14 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								6ad427993a 
								
							 
						 
						
							
							
								
								Everywhere: Behaviour => Behavior  
							
							
							
						 
						
							2021-09-07 13:53:14 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								55b0b06897 
								
							 
						 
						
							
							
								
								Kernel: Store process names as KString  
							
							
							
						 
						
							2021-09-07 13:53:14 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								b481132418 
								
							 
						 
						
							
							
								
								Kernel: Make UserOrKernelBuffer return KResult from read/write/memset  
							
							... 
							
							
							
							This allows us to simplify a whole bunch of call sites with TRY(). :^) 
							
						 
						
							2021-09-07 13:53:14 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								0d44cdb7a2 
								
							 
						 
						
							
							
								
								Kernel: Wrap two VirtualFileSystem directory traversals in TRY()  
							
							
							
						 
						
							2021-09-06 20:30:18 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								1101994fad 
								
							 
						 
						
							
							
								
								Kernel: Wrap ISO9660FS directory traversal in TRY()  
							
							
							
						 
						
							2021-09-06 20:28:40 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								704a2bfad5 
								
							 
						 
						
							
							
								
								Kernel: Use TRY() in TmpFSInode::write_bytes()  
							
							
							
						 
						
							2021-09-06 20:24:38 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								56a2594de7 
								
							 
						 
						
							
							
								
								Kernel: Make KString factories return KResultOr + use TRY() everywhere  
							
							... 
							
							
							
							There are a number of places that don't have an error propagation path
right now, so I've added FIXME's about that. 
							
						 
						
							2021-09-06 19:25:36 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								2065ced8f6 
								
							 
						 
						
							
							
								
								Kernel: Make KBufferBuilder::append() & friends return KResult  
							
							... 
							
							
							
							This allows callers to react to a failed append (due to OOM.) 
							
						 
						
							2021-09-06 18:56:51 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								6e3381ac32 
								
							 
						 
						
							
							
								
								Kernel: Use KResultOr and TRY() for {Shared,Private}InodeVMObject  
							
							
							
						 
						
							2021-09-06 13:06:05 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								cda2b9e71c 
								
							 
						 
						
							
							
								
								Kernel: Improvements to Custody absolute path serialization  
							
							... 
							
							
							
							- Renamed try_create_absolute_path() => try_serialize_absolute_path()
- Use KResultOr and TRY() to propagate errors
- Don't call this when it's only for debug logging 
							
						 
						
							2021-09-06 13:06:05 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								b083b165a7 
								
							 
						 
						
							
							
								
								Kernel/Ext2FS: Wrap calls to traverse_as_directory() in TRY()  
							
							... 
							
							
							
							Nothing says we can't TRY() a multi-line function call. :^) 
							
						 
						
							2021-09-06 13:06:05 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								18dbafec85 
								
							 
						 
						
							
							
								
								Kernel: Use TRY() more in Plan9FS  
							
							
							
						 
						
							2021-09-06 13:06:05 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								d34f2b643e 
								
							 
						 
						
							
							
								
								Kernel: Tidy up Plan9FS construction a bit  
							
							
							
						 
						
							2021-09-06 13:06:05 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								36725228fa 
								
							 
						 
						
							
							
								
								Kernel: Tidy up Ext2FS construction a bit  
							
							
							
						 
						
							2021-09-06 13:06:05 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								47bfbe343b 
								
							 
						 
						
							
							
								
								Kernel: Tidy up SysFS construction  
							
							... 
							
							
							
							- Use KResultOr and TRY() to propagate errors
- Check for OOM errors
- Move allocation out of constructors
There's still a lot more to do here, as SysFS is still quite brittle
in the face of memory pressure. 
							
						 
						
							2021-09-06 13:06:05 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								788b91a65c 
								
							 
						 
						
							
							
								
								Kernel: Tidy up DevFS construction and handle OOM errorso  
							
							... 
							
							
							
							- Use KResultOr and TRY() to propagate errors
- Check for OOM
- Move allocations out of the DevFS constructor 
							
						 
						
							2021-09-06 13:06:05 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								efe4e230ee 
								
							 
						 
						
							
							
								
								Kernel: Tidy up DevPtsFS construction and handle OOM errors  
							
							... 
							
							
							
							- Use KResultOr and TRY() to propagate errors
- Check for OOM when creating new inodes 
							
						 
						
							2021-09-06 13:06:05 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								a8516681b7 
								
							 
						 
						
							
							
								
								Kernel: Tidy up TmpFS and TmpFSInode construction  
							
							... 
							
							
							
							- Use KResultOr<NonnullRefPtr<T>>
- Propagate errors
- Use TRY() at call sites 
							
						 
						
							2021-09-06 02:36:21 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								7a8061ba0c 
								
							 
						 
						
							
							
								
								Kernel: Use TRY() in ISO9660FileSystem  
							
							
							
						 
						
							2021-09-06 02:06:49 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								540d62d3b2 
								
							 
						 
						
							
							
								
								Kernel: Simplify WatchDescription::create()  
							
							
							
						 
						
							2021-09-06 01:55:27 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								8ceff65161 
								
							 
						 
						
							
							
								
								Kernel: Use TRY() some more in FileDescription  
							
							
							
						 
						
							2021-09-06 01:55:27 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								5516592748 
								
							 
						 
						
							
							
								
								Kernel: Use TRY() in BlockBasedFileSystem  
							
							
							
						 
						
							2021-09-06 01:55:27 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ali Mohammad Pur 
								
							 
						 
						
							
							
							
							
								
							
							
								97e97bccab 
								
							 
						 
						
							
							
								
								Everywhere: Make ByteBuffer::{create_*,copy}() OOM-safe  
							
							
							
						 
						
							2021-09-06 01:53:26 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Gianforcaro 
								
							 
						 
						
							
							
							
							
								
							
							
								bb58a4d943 
								
							 
						 
						
							
							
								
								Kernel: Make all Spinlocks use u8 for storage, remove template  
							
							... 
							
							
							
							The default template argument is only used in one place, and it
looks like it was probably just an oversight. The rest of the Kernel
code all uses u8 as the type. So lets make that the default and remove
the unused template argument, as there doesn't seem to be a reason to
allow the size to be customizable. 
							
						 
						
							2021-09-05 20:46:02 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								100b3835f0 
								
							 
						 
						
							
							
								
								Kernel: Use TRY() in DevFSLinkInode::write_bytes()  
							
							
							
						 
						
							2021-09-05 19:02:57 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								667a39df6b 
								
							 
						 
						
							
							
								
								Kernel: Use TRY() in ProcFS  
							
							
							
						 
						
							2021-09-05 19:01:38 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								caaeae9607 
								
							 
						 
						
							
							
								
								Kernel: Make FileSystem::get_inode() return KResultOr<NRP<Inode>>  
							
							... 
							
							
							
							This allows for natural error propagation in a bunch of new places. 
							
						 
						
							2021-09-05 18:55:55 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								48a0b31c47 
								
							 
						 
						
							
							
								
								Kernel: Make copy_{from,to}_user() return KResult and use TRY()  
							
							... 
							
							
							
							This makes EFAULT propagation flow much more naturally. :^) 
							
						 
						
							2021-09-05 17:38:37 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								abb43468dc 
								
							 
						 
						
							
							
								
								Kernel: Use TRY() in FileDescription::attach()  
							
							
							
						 
						
							2021-09-05 16:25:40 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								b2950c67ea 
								
							 
						 
						
							
							
								
								Kernel: Use TRY() in Inode  
							
							
							
						 
						
							2021-09-05 16:25:40 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								c1c774da91 
								
							 
						 
						
							
							
								
								Kernel: Use TRY() in FIFO  
							
							
							
						 
						
							2021-09-05 16:25:40 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								cad78f5904 
								
							 
						 
						
							
							
								
								Kernel: Use TRY() in InodeFile  
							
							
							
						 
						
							2021-09-05 16:25:40 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								865eb54f75 
								
							 
						 
						
							
							
								
								Kernel/Ext2FS: Use TRY() in the Ext2FS  
							
							... 
							
							
							
							This class was just *full* of great opportunities for TRY(). :^) 
							
						 
						
							2021-09-05 15:30:15 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								0cf65cf7ec 
								
							 
						 
						
							
							
								
								Kernel: Use TRY() even more in VirtualFileSystem  
							
							... 
							
							
							
							Allowing TRY() with KResult unlocked a whole lot more opportunities. 
							
						 
						
							2021-09-05 14:55:51 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								71187d865e 
								
							 
						 
						
							
							
								
								Kernel: Tidy up VirtualFileSystem::mount_root() a little bit  
							
							... 
							
							
							
							- Return KResult instead of bool
- Use TRY() 
							
						 
						
							2021-09-05 14:46:44 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								b0f2acbd91 
								
							 
						 
						
							
							
								
								Kernel: Use TRY() in FileDescription  
							
							
							
						 
						
							2021-09-05 14:43:51 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								4012099338 
								
							 
						 
						
							
							
								
								Kernel: Tidy up AnonymousFile construction a bit  
							
							... 
							
							
							
							- Rename create() => try_create()
- Use adopt_nonnull_ref_or_enomem() 
							
						 
						
							2021-09-05 14:33:25 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								a5e71debef 
								
							 
						 
						
							
							
								
								Kernel: Use TRY() in VirtualFileSystem  
							
							
							
						 
						
							2021-09-05 14:08:12 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									sin-ack 
								
							 
						 
						
							
							
							
							
								
							
							
								566c5d1e99 
								
							 
						 
						
							
							
								
								AK+Kernel: Move KResult.h to Kernel/API for userspace access  
							
							... 
							
							
							
							This commit moves the KResult and KResultOr objects to Kernel/API to
signify that they may now be freely used by userspace code at points
where a syscall-related error result is to be expected. It also exposes
KResult and KResultOr to the global namespace to make it nicer to use
for userspace code. 
							
						 
						
							2021-09-05 12:54:48 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								e851a77346 
								
							 
						 
						
							
							
								
								Kernel: Rename FileBlocker::unblock() => unblock_if_conditions_are_met()  
							
							... 
							
							
							
							Since this may not actually unblock, the old name was very confusing. 
							
						 
						
							2021-09-05 01:10:56 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								68a6d4c30a 
								
							 
						 
						
							
							
								
								Kernel: Tidy up InodeWatcher construction  
							
							... 
							
							
							
							- Rename create() => try_create()
- Use adopt_nonnull_ref_or_enomem() 
							
						 
						
							2021-09-05 01:10:56 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								211c1c087d 
								
							 
						 
						
							
							
								
								Kernel/Plan9FS: Use KString instead of String in one place  
							
							
							
						 
						
							2021-09-05 01:10:56 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								9d736772bd 
								
							 
						 
						
							
							
								
								Kernel/Ext2FS: Remove a String allocation in debug logging  
							
							... 
							
							
							
							We were creating a temporary String just to log the target when writing
a symlink directly into inline storage. 
							
						 
						
							2021-09-05 01:10:55 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Liav A 
								
							 
						 
						
							
							
							
							
								
							
							
								e490c17bde 
								
							 
						 
						
							
							
								
								Kernel/SysFS: Ensure data stability when reading from Inodes  
							
							... 
							
							
							
							Like with the ProcFS, description data can change at anytime, so it's
wise to ensure that when the userland reads from an Inode, data is
consistent unless the userland indicated it wants to refresh the data
(by seeking to offset 0, or re-attaching the Inode).
Otherwise, if the data changes in the middle of the reading, it can
cause silent corruption in output which can lead to random crashes. 
							
						 
						
							2021-09-04 16:33:56 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Liav A 
								
							 
						 
						
							
							
							
							
								
							
							
								f2ba44cbdf 
								
							 
						 
						
							
							
								
								Kernel/DevFS: Remove unnecessary include  
							
							
							
						 
						
							2021-09-04 16:19:12 +02:00