aboutsummaryrefslogtreecommitdiff
path: root/kernel/src/filesystem/mount.cpp
diff options
context:
space:
mode:
authorMarcel Braun <marcel.braun@ost.ch>2026-03-28 19:16:27 +0100
committerMarcel Braun <marcel.braun@ost.ch>2026-03-28 19:16:27 +0100
commit2864e0b061f923a3c73c608b9c27ca4a7116e27c (patch)
tree7175be5fcaa789e0bfd6d0aeb4e7f6ac756cabf6 /kernel/src/filesystem/mount.cpp
parent05269b10e50a80f557c2be475904ff15dc1bbec4 (diff)
parent8a9bf5a90b7f46d5c615b55a3fc418b419db4926 (diff)
downloadteachos-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.cpp23
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