diff options
| author | marcel.braun <marcel.braun@ost.ch> | 2026-03-23 09:49:32 +0100 |
|---|---|---|
| committer | Lukas Oesch <lukasoesch20@gmail.com> | 2026-03-26 21:18:49 +0100 |
| commit | bcb4f8a76dea2443c1597716e27b7c2d268bfc44 (patch) | |
| tree | 7e54a13ae440d52baed8ff7ff828a3b8b61b14a4 /kernel/src | |
| parent | d70e2df0885a844d47b6498bf2c710fb9730b364 (diff) | |
| download | teachos-bcb4f8a76dea2443c1597716e27b7c2d268bfc44.tar.xz teachos-bcb4f8a76dea2443c1597716e27b7c2d268bfc44.zip | |
Refactor filesystem
Diffstat (limited to 'kernel/src')
| -rw-r--r-- | kernel/src/filesystem/ext2/ext2_filesystem.cpp | 8 | ||||
| -rw-r--r-- | kernel/src/filesystem/filesystem.cpp | 11 |
2 files changed, 13 insertions, 6 deletions
diff --git a/kernel/src/filesystem/ext2/ext2_filesystem.cpp b/kernel/src/filesystem/ext2/ext2_filesystem.cpp index 87845d5..ea692ee 100644 --- a/kernel/src/filesystem/ext2/ext2_filesystem.cpp +++ b/kernel/src/filesystem/ext2/ext2_filesystem.cpp @@ -1,6 +1,7 @@ #include "kernel/filesystem/ext2/ext2_filesystem.hpp" #include "kernel/devices/device.hpp" +#include "kernel/filesystem/filesystem.hpp" #include "kernel/filesystem/inode.hpp" #include <kstd/memory> @@ -11,12 +12,7 @@ namespace filesystem::ext2 { auto ext2_filesystem::mount(kstd::shared_ptr<devices::device> const & device) -> int { - if (!device) - { - return -1; // TODO BA-FS26 panic or errorcode? - } - - m_device = device; + filesystem::mount(device); // TODO BA-FS26 error handling? // TODO BA-FS26 load proper root inode from ext2 metadata // m_root_inode = inode{inode_kind::directory}; diff --git a/kernel/src/filesystem/filesystem.cpp b/kernel/src/filesystem/filesystem.cpp index 50b5587..0e33d95 100644 --- a/kernel/src/filesystem/filesystem.cpp +++ b/kernel/src/filesystem/filesystem.cpp @@ -1,11 +1,22 @@ #include "kernel/filesystem/filesystem.hpp" +#include "kernel/devices/device.hpp" #include "kernel/filesystem/inode.hpp" #include <kstd/memory> namespace filesystem { + auto filesystem::mount(kstd::shared_ptr<devices::device> const & device) -> int + { + if (!device) + { + return -1; // TODO BA-FS26 panic or errorcode? + } + m_device = device; + return 0; + } + auto filesystem::root_inode() const -> kstd::shared_ptr<inode> const & { return m_root_inode; |
