1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-30 19:48:12 +00:00
serenity/Kernel/FileSystem
Andreas Kling dcc5b7397f Kernel: Take FS lock in BlockBasedFS during seek/read/write operations
Since these filesystems operate on an underlying file descriptor
and rely on its offset for correctness, let's use the FS lock to
serialize these operations.

This also means that FS subclasses can rely on block-level read/write
operations being atomic.
2021-02-26 17:15:32 +01:00
..
AnonymousFile.cpp Kernel: Factor address space management out of the Process class 2021-02-08 18:27:28 +01:00
AnonymousFile.h Kernel: Hoist VM range allocation up to sys$mmap() itself 2021-01-25 18:57:06 +01:00
BlockBasedFileSystem.cpp Kernel: Take FS lock in BlockBasedFS during seek/read/write operations 2021-02-26 17:15:32 +01:00
BlockBasedFileSystem.h Kernel: Make BlockBasedFS::BlockIndex a distinct integer type 2021-02-12 11:59:27 +01:00
Custody.cpp Kernel: Support read-only filesystem mounts 2020-05-29 07:53:30 +02:00
Custody.h Kernel: Support read-only filesystem mounts 2020-05-29 07:53:30 +02:00
DevFS.cpp Everywhere: Rename ASSERT => VERIFY 2021-02-23 20:56:54 +01:00
DevFS.h DevFS: Use strongly typed InodeIndex 2021-02-12 16:24:40 +01:00
DevPtsFS.cpp Everywhere: Rename ASSERT => VERIFY 2021-02-23 20:56:54 +01:00
DevPtsFS.h Kernel: Add distinct InodeIndex type 2021-02-12 10:26:29 +01:00
ext2_fs.h Meta: Split debug defines into multiple headers. 2021-01-26 21:20:00 +01:00
ext2_types.h Everywhere: Re-format with clang-format-11 2020-12-31 21:51:00 +01:00
Ext2FileSystem.cpp Revert "Ext2FS: Don't reload already-cached block list when freeing inode" 2021-02-26 14:57:00 +01:00
Ext2FileSystem.h Ext2FS: Inode allocation improvements 2021-02-26 14:05:18 +01:00
FIFO.cpp Everywhere: Rename ASSERT => VERIFY 2021-02-23 20:56:54 +01:00
FIFO.h Kernel: Improve ProcFS behavior in low memory conditions 2021-01-03 22:12:19 +01:00
File.cpp Kernel: Hoist VM range allocation up to sys$mmap() itself 2021-01-25 18:57:06 +01:00
File.h Everywhere: Rename ASSERT => VERIFY 2021-02-23 20:56:54 +01:00
FileBackedFileSystem.cpp Kernel: Split BlockBasedFileSystem off FileBackedFileSystem 2020-07-05 12:26:27 +02:00
FileBackedFileSystem.h Kernel: Split BlockBasedFileSystem off FileBackedFileSystem 2020-07-05 12:26:27 +02:00
FileDescription.cpp Everywhere: Rename ASSERT => VERIFY 2021-02-23 20:56:54 +01:00
FileDescription.h Kernel: Add forgotten 'const' flag 2021-02-13 00:40:31 +01:00
FileSystem.cpp Everywhere: Rename ASSERT => VERIFY 2021-02-23 20:56:54 +01:00
FileSystem.h Kernel: Add distinct InodeIndex type 2021-02-12 10:26:29 +01:00
Inode.cpp Everywhere: Rename ASSERT => VERIFY 2021-02-23 20:56:54 +01:00
Inode.h Kernel: Add distinct InodeIndex type 2021-02-12 10:26:29 +01:00
InodeFile.cpp Everywhere: Rename ASSERT => VERIFY 2021-02-23 20:56:54 +01:00
InodeFile.h Kernel: Add FIBMAP ioctl to Ext2FileSystem 2021-01-30 22:54:51 +01:00
InodeIdentifier.h Kernel: Add distinct InodeIndex type 2021-02-12 10:26:29 +01:00
InodeMetadata.h Kernel: Add distinct InodeIndex type 2021-02-12 10:26:29 +01:00
InodeWatcher.cpp Everywhere: Rename ASSERT => VERIFY 2021-02-23 20:56:54 +01:00
InodeWatcher.h Kernel: Move InodeWatcher::Event into Kernel/API/InodeWatcherEvent 2020-12-14 23:05:53 +01:00
Plan9FileSystem.cpp Everywhere: Rename ASSERT => VERIFY 2021-02-23 20:56:54 +01:00
Plan9FileSystem.h Kernel: Add distinct InodeIndex type 2021-02-12 10:26:29 +01:00
ProcFS.cpp Everywhere: Rename ASSERT => VERIFY 2021-02-23 20:56:54 +01:00
ProcFS.h Everywhere: Rename ASSERT => VERIFY 2021-02-23 20:56:54 +01:00
TmpFS.cpp Everywhere: Rename ASSERT => VERIFY 2021-02-23 20:56:54 +01:00
TmpFS.h Kernel: Add distinct InodeIndex type 2021-02-12 10:26:29 +01:00
VirtualFileSystem.cpp Everywhere: Rename ASSERT => VERIFY 2021-02-23 20:56:54 +01:00
VirtualFileSystem.h Kernel: Implement unveil() as a prefix-tree 2020-12-26 11:54:54 +01:00