diff options
Diffstat (limited to 'kernel/kernel/filesystem/filesystem.cpp')
| -rw-r--r-- | kernel/kernel/filesystem/filesystem.cpp | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/kernel/kernel/filesystem/filesystem.cpp b/kernel/kernel/filesystem/filesystem.cpp index 1d222888..362c4d1e 100644 --- a/kernel/kernel/filesystem/filesystem.cpp +++ b/kernel/kernel/filesystem/filesystem.cpp @@ -8,13 +8,10 @@ #include <kstd/result.hpp> #include <kstd/system_error.hpp> -#include <utility> - namespace kernel::filesystem { - auto filesystem::probe_and_mount(kstd::shared_ptr<inode> const & backing_inode) - -> kstd::result<std::pair<kstd::shared_ptr<filesystem>, kstd::shared_ptr<inode>>> + auto filesystem::probe(kstd::shared_ptr<inode> const & backing_inode) -> kstd::result<kstd::shared_ptr<filesystem>> { for (auto & type : type_registry::get().all()) { @@ -23,14 +20,10 @@ namespace kernel::filesystem continue; } - auto fs = type->make_instance(); - auto root = fs->mount(backing_inode); - if (!root) + if (auto fs = type->make_instance()) { - continue; + return fs; } - - return std::pair{fs, *root}; } return kstd::failure(vfs_errc::unsupported_filesystem); |
