serenity/Kernel/FileSystem
Liav A 5efb91ec06 Kernel/VFS: Ensure working with mount entry per a custody is safe
Previously we could get a raw pointer to a Mount object which might be
invalid when actually dereferencing it.
To ensure this could not happen, we should just use a callback that will
be used immediately after finding the appropriate Mount entry, while
holding the mount table lock.
2023-08-05 18:41:01 +02:00
..
DevPtsFS Kernel+LibCore+LibC: Split the mount syscall into multiple syscalls 2023-07-02 01:04:51 +02:00
Ext2FS Kernel/FileSystem: Rename block_size -> logical_block_size 2023-07-28 14:51:07 +02:00
FATFS Kernel/FileSystem: Rename block_size -> logical_block_size 2023-07-28 14:51:07 +02:00
ISO9660FS Kernel/FileSystem: Rename block_size -> logical_block_size 2023-07-28 14:51:07 +02:00
Plan9FS Kernel/Tasks: Allow Kernel processes to be shut down 2023-07-15 00:12:01 +02:00
ProcFS Kernel+LibCore+LibC: Split the mount syscall into multiple syscalls 2023-07-02 01:04:51 +02:00
RAMFS Kernel+LibCore+LibC: Split the mount syscall into multiple syscalls 2023-07-02 01:04:51 +02:00
SysFS Kernel/FileSystem: Rename block_size -> logical_block_size 2023-07-28 14:51:07 +02:00
AnonymousFile.cpp Kernel: Move all tasks-related code to the Tasks subdirectory 2023-06-04 21:32:34 +02:00
AnonymousFile.h Kernel: Use RefPtr instead of LockRefPtr for File and subclasses 2023-03-10 13:15:44 +01:00
BlockBasedFileSystem.cpp Kernel/FileSystem: Rename block_size -> logical_block_size 2023-07-28 14:51:07 +02:00
BlockBasedFileSystem.h Kernel/FileSystem: Rename logical_block_size -> device_block_size 2023-07-28 14:51:07 +02:00
Custody.cpp Kernel: Turn lock ranks into template parameters 2023-01-02 18:15:27 -05:00
Custody.h Everywhere: Move global Kernel pattern code to Kernel/Library directory 2023-06-04 21:32:34 +02:00
DeviceFileTypes.h Everywhere: Prefix 'TYPEDEF_DISTINCT_ORDERED_ID' with 'AK_' 2022-07-22 23:09:43 +01:00
FIFO.cpp Kernel: Move all tasks-related code to the Tasks subdirectory 2023-06-04 21:32:34 +02:00
FIFO.h Everywhere: Move global Kernel pattern code to Kernel/Library directory 2023-06-04 21:32:34 +02:00
File.cpp Kernel: Move all tasks-related code to the Tasks subdirectory 2023-06-04 21:32:34 +02:00
File.h Kernel+LibCore+LibC: Split the mount syscall into multiple syscalls 2023-07-02 01:04:51 +02:00
FileBackedFileSystem.cpp Kernel: Introduce support for using FileSystem object in multiple mounts 2022-10-22 16:57:52 -04:00
FileBackedFileSystem.h Kernel/FileSystem: Pass last mount point guest inode to unmount prepare 2023-07-15 00:12:01 +02:00
FileSystem.cpp Kernel/Ext2: Check and set file system state 2023-07-15 00:12:01 +02:00
FileSystem.h Kernel/FileSystem: Rename block_size -> logical_block_size 2023-07-28 14:51:07 +02:00
Initializer.h Kernel+LibCore+LibC: Split the mount syscall into multiple syscalls 2023-07-02 01:04:51 +02:00
Inode.cpp Everywhere: Move global Kernel pattern code to Kernel/Library directory 2023-06-04 21:32:34 +02:00
Inode.h Everywhere: Remove needless trailing semi-colons after functions 2023-07-08 10:32:56 +01:00
InodeFile.cpp Kernel: Move all tasks-related code to the Tasks subdirectory 2023-06-04 21:32:34 +02:00
InodeFile.h Kernel: Mark a bunch of NonnullRefPtrs also const to ensure immutability 2023-04-08 13:44:21 +02:00
InodeIdentifier.h Kernel: Remove declarations for non-existent methods 2023-01-27 20:33:18 +00:00
InodeMetadata.cpp Kernel: Move all tasks-related code to the Tasks subdirectory 2023-06-04 21:32:34 +02:00
InodeMetadata.h Kernel: Use UnixDateTime wherever applicable 2023-05-24 23:18:07 +02:00
InodeWatcher.cpp Kernel: Move all tasks-related code to the Tasks subdirectory 2023-06-04 21:32:34 +02:00
InodeWatcher.h Everywhere: Remove needless trailing semi-colons after functions 2023-07-08 10:32:56 +01:00
Mount.cpp Kernel: Add accessor for mount host custody 2023-07-15 00:12:01 +02:00
Mount.h Kernel: Add accessor for mount host custody 2023-07-15 00:12:01 +02:00
MountFile.cpp Kernel+LibCore+LibC: Split the mount syscall into multiple syscalls 2023-07-02 01:04:51 +02:00
MountFile.h Kernel+LibCore+LibC: Split the mount syscall into multiple syscalls 2023-07-02 01:04:51 +02:00
OpenFileDescription.cpp Kernel+LibCore+LibC: Split the mount syscall into multiple syscalls 2023-07-02 01:04:51 +02:00
OpenFileDescription.h Kernel+LibCore+LibC: Split the mount syscall into multiple syscalls 2023-07-02 01:04:51 +02:00
UnveilNode.h Everywhere: Move global Kernel pattern code to Kernel/Library directory 2023-06-04 21:32:34 +02:00
VirtualFileSystem.cpp Kernel/VFS: Ensure working with mount entry per a custody is safe 2023-08-05 18:41:01 +02:00
VirtualFileSystem.h Kernel/VFS: Ensure working with mount entry per a custody is safe 2023-08-05 18:41:01 +02:00