aboutsummaryrefslogtreecommitdiff
path: root/kernel/src/filesystem/filesystem.cpp
diff options
context:
space:
mode:
authorFelix Morgner <felix.morgner@ost.ch>2026-07-03 09:32:30 +0200
committerFelix Morgner <felix.morgner@ost.ch>2026-07-03 09:32:30 +0200
commit3012fa5dfe5dfed5e83baf9b40934ed8e8317627 (patch)
tree00d1c60a3d5d1cdfa55e0ff1691cd3362b6064ee /kernel/src/filesystem/filesystem.cpp
parent5d8a58d538515ffc57ddf82ba40ba763990a8696 (diff)
downloadkernel-3012fa5dfe5dfed5e83baf9b40934ed8e8317627.tar.xz
kernel-3012fa5dfe5dfed5e83baf9b40934ed8e8317627.zip
kernel: rearrange sources according to p1204
Diffstat (limited to 'kernel/src/filesystem/filesystem.cpp')
-rw-r--r--kernel/src/filesystem/filesystem.cpp60
1 files changed, 0 insertions, 60 deletions
diff --git a/kernel/src/filesystem/filesystem.cpp b/kernel/src/filesystem/filesystem.cpp
deleted file mode 100644
index 24d0e229..00000000
--- a/kernel/src/filesystem/filesystem.cpp
+++ /dev/null
@@ -1,60 +0,0 @@
-#include <kernel/filesystem/filesystem.hpp>
-
-#include <kernel/filesystem/ext2/filesystem.hpp>
-#include <kernel/filesystem/inode.hpp>
-
-#include <kapi/system.hpp>
-
-#include <kstd/memory>
-
-#include <array>
-
-namespace kernel::filesystem
-{
- namespace
- {
- constexpr auto static filesystem_factories = std::array{
- []() { return kstd::make_shared<ext2::filesystem>(); },
- };
- } // namespace
-
- auto filesystem::probe_and_mount(kstd::shared_ptr<inode> const & backing_inode) -> kstd::shared_ptr<filesystem>
- {
- if (!backing_inode)
- {
- kapi::system::panic("[FILESYSTEM] cannot mount filesystem: backing inode is null.");
- }
-
- for (auto & factory : filesystem_factories)
- {
- auto fs = factory();
- if (fs->mount(backing_inode) == operation_result::success)
- {
- return fs;
- }
- }
-
- return nullptr;
- }
-
- auto filesystem::mount(kstd::shared_ptr<inode> const & backing_inode) -> operation_result
- {
- if (!backing_inode)
- {
- kapi::system::panic("[FILESYSTEM] cannot mount filesystem: backing inode is null.");
- }
-
- m_backing_inode = backing_inode;
- return operation_result::success;
- }
-
- auto filesystem::root_inode() const -> kstd::shared_ptr<inode> const &
- {
- return m_root_inode;
- }
-
- auto filesystem::backing_inode() const -> kstd::shared_ptr<inode> const &
- {
- return m_backing_inode;
- }
-} // namespace kernel::filesystem \ No newline at end of file