diff options
| author | Marcel Braun <marcel.braun@ost.ch> | 2026-03-28 19:16:27 +0100 |
|---|---|---|
| committer | Marcel Braun <marcel.braun@ost.ch> | 2026-03-28 19:16:27 +0100 |
| commit | 2864e0b061f923a3c73c608b9c27ca4a7116e27c (patch) | |
| tree | 7175be5fcaa789e0bfd6d0aeb4e7f6ac756cabf6 /kernel/src/filesystem/mount.cpp | |
| parent | 05269b10e50a80f557c2be475904ff15dc1bbec4 (diff) | |
| parent | 8a9bf5a90b7f46d5c615b55a3fc418b419db4926 (diff) | |
| download | teachos-2864e0b061f923a3c73c608b9c27ca4a7116e27c.tar.xz teachos-2864e0b061f923a3c73c608b9c27ca4a7116e27c.zip | |
Merge branch 'vfs' into 'develop-BA-FS26'
implement basic vfs
See merge request teachos/kernel!16
Diffstat (limited to 'kernel/src/filesystem/mount.cpp')
| -rw-r--r-- | kernel/src/filesystem/mount.cpp | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/kernel/src/filesystem/mount.cpp b/kernel/src/filesystem/mount.cpp index a2c501f..afc07fa 100644 --- a/kernel/src/filesystem/mount.cpp +++ b/kernel/src/filesystem/mount.cpp @@ -2,16 +2,21 @@ #include "kapi/system.hpp" +#include "kernel/filesystem/dentry.hpp" #include "kernel/filesystem/filesystem.hpp" #include <kstd/memory> +#include <kstd/string> #include <string_view> namespace filesystem { - mount::mount(std::string_view const & path, kstd::shared_ptr<filesystem> const & fs) - : m_path(path) + mount::mount(kstd::shared_ptr<dentry> const & mount_dentry, kstd::shared_ptr<dentry> const & root_dentry, + kstd::shared_ptr<filesystem> const & fs, std::string_view mount_path) + : m_mount_path(mount_path) + , m_mount_dentry(mount_dentry) + , m_root_dentry(root_dentry) , m_filesystem(fs) { if (!m_filesystem) @@ -20,13 +25,23 @@ namespace filesystem } } - auto mount::path() const -> std::string_view + auto mount::get_mount_dentry() const -> kstd::shared_ptr<dentry> { - return m_path; + return m_mount_dentry; } auto mount::get_filesystem() const -> kstd::shared_ptr<filesystem> const & { return m_filesystem; } + + auto mount::root_dentry() const -> kstd::shared_ptr<dentry> const & + { + return m_root_dentry; + } + + auto mount::get_mount_path() const -> std::string_view + { + return m_mount_path.view(); + } } // namespace filesystem
\ No newline at end of file |
