Selaa lähdekoodia

Kernel: Remove Inode::directory_entry_count()

This was only used in one place: VirtualFileSystem::rmdir(), and that
has now been converted to a simple directory traversal.
Andreas Kling 4 vuotta sitten
vanhempi
commit
b8d6c3722d

+ 0 - 20
Kernel/FileSystem/DevFS.cpp

@@ -122,11 +122,6 @@ KResult DevFSInode::remove_child(const StringView&)
     return EROFS;
 }
 
-KResultOr<size_t> DevFSInode::directory_entry_count() const
-{
-    VERIFY_NOT_REACHED();
-}
-
 KResult DevFSInode::chmod(mode_t)
 {
     return EPERM;
@@ -221,12 +216,6 @@ RefPtr<Inode> DevFSDirectoryInode::lookup(StringView)
     return nullptr;
 }
 
-KResultOr<size_t> DevFSDirectoryInode::directory_entry_count() const
-{
-    Locker locker(m_inode_lock);
-    return m_devices.size();
-}
-
 DevFSRootDirectoryInode::DevFSRootDirectoryInode(DevFS& fs)
     : DevFSDirectoryInode(fs)
     , m_parent_fs(fs)
@@ -332,11 +321,6 @@ InodeMetadata DevFSRootDirectoryInode::metadata() const
     metadata.mtime = mepoch;
     return metadata;
 }
-KResultOr<size_t> DevFSRootDirectoryInode::directory_entry_count() const
-{
-    Locker locker(m_parent_fs.m_lock);
-    return m_devices.size() + DevFSDirectoryInode::directory_entry_count().value();
-}
 
 DevFSDeviceInode::DevFSDeviceInode(DevFS& fs, Device const& device, NonnullOwnPtr<KString> name)
     : DevFSInode(fs)
@@ -429,9 +413,5 @@ InodeMetadata DevFSPtsDirectoryInode::metadata() const
     metadata.mtime = mepoch;
     return metadata;
 }
-KResultOr<size_t> DevFSPtsDirectoryInode::directory_entry_count() const
-{
-    return 0;
-}
 
 }

+ 0 - 4
Kernel/FileSystem/DevFS.h

@@ -58,7 +58,6 @@ protected:
     virtual KResultOr<NonnullRefPtr<Inode>> create_child(StringView name, mode_t, dev_t, uid_t, gid_t) override;
     virtual KResult add_child(Inode&, const StringView& name, mode_t) override;
     virtual KResult remove_child(const StringView& name) override;
-    virtual KResultOr<size_t> directory_entry_count() const override;
     virtual KResult chmod(mode_t) override;
     virtual KResult chown(uid_t, gid_t) override;
     virtual KResult truncate(u64) override;
@@ -119,7 +118,6 @@ protected:
     virtual InodeMetadata metadata() const override;
     virtual KResult traverse_as_directory(Function<bool(FileSystem::DirectoryEntryView const&)>) const override;
     virtual RefPtr<Inode> lookup(StringView name) override;
-    virtual KResultOr<size_t> directory_entry_count() const override;
 
     NonnullRefPtrVector<DevFSDeviceInode> m_devices;
 };
@@ -137,7 +135,6 @@ private:
     virtual KResult traverse_as_directory(Function<bool(FileSystem::DirectoryEntryView const&)>) const override;
     virtual RefPtr<Inode> lookup(StringView name) override;
     virtual InodeMetadata metadata() const override;
-    virtual KResultOr<size_t> directory_entry_count() const override;
 };
 
 class DevFSRootDirectoryInode final : public DevFSDirectoryInode {
@@ -153,7 +150,6 @@ private:
     virtual KResult traverse_as_directory(Function<bool(FileSystem::DirectoryEntryView const&)>) const override;
     virtual RefPtr<Inode> lookup(StringView name) override;
     virtual InodeMetadata metadata() const override;
-    virtual KResultOr<size_t> directory_entry_count() const override;
 
     NonnullRefPtrVector<DevFSDirectoryInode> m_subfolders;
     NonnullRefPtrVector<DevFSLinkInode> m_links;

+ 0 - 7
Kernel/FileSystem/DevPtsFS.cpp

@@ -136,13 +136,6 @@ KResult DevPtsFSInode::traverse_as_directory(Function<bool(FileSystem::Directory
     return KSuccess;
 }
 
-KResultOr<size_t> DevPtsFSInode::directory_entry_count() const
-{
-    VERIFY(identifier().index() == 1);
-
-    return 2 + s_ptys->size();
-}
-
 RefPtr<Inode> DevPtsFSInode::lookup(StringView name)
 {
     VERIFY(identifier().index() == 1);

+ 0 - 1
Kernel/FileSystem/DevPtsFS.h

@@ -56,7 +56,6 @@ private:
     virtual KResultOr<NonnullRefPtr<Inode>> create_child(StringView name, mode_t, dev_t, uid_t, gid_t) override;
     virtual KResult add_child(Inode&, const StringView& name, mode_t) override;
     virtual KResult remove_child(const StringView& name) override;
-    virtual KResultOr<size_t> directory_entry_count() const override;
     virtual KResult chmod(mode_t) override;
     virtual KResult chown(uid_t, gid_t) override;
 

+ 0 - 9
Kernel/FileSystem/Ext2FileSystem.cpp

@@ -1709,15 +1709,6 @@ void Ext2FS::uncache_inode(InodeIndex index)
     m_inode_cache.remove(index);
 }
 
-KResultOr<size_t> Ext2FSInode::directory_entry_count() const
-{
-    VERIFY(is_directory());
-    Locker locker(m_inode_lock);
-    if (auto result = populate_lookup_cache(); result.is_error())
-        return KResultOr<size_t>(result);
-    return m_lookup_cache.size();
-}
-
 KResult Ext2FSInode::chmod(mode_t mode)
 {
     Locker locker(m_inode_lock);

+ 0 - 1
Kernel/FileSystem/Ext2FileSystem.h

@@ -52,7 +52,6 @@ private:
     virtual KResult set_mtime(time_t) override;
     virtual KResult increment_link_count() override;
     virtual KResult decrement_link_count() override;
-    virtual KResultOr<size_t> directory_entry_count() const override;
     virtual KResult chmod(mode_t) override;
     virtual KResult chown(uid_t, gid_t) override;
     virtual KResult truncate(u64) override;

+ 0 - 1
Kernel/FileSystem/Inode.h

@@ -59,7 +59,6 @@ public:
     virtual KResultOr<NonnullRefPtr<Inode>> create_child(StringView name, mode_t, dev_t, uid_t, gid_t) = 0;
     virtual KResult add_child(Inode&, const StringView& name, mode_t) = 0;
     virtual KResult remove_child(const StringView& name) = 0;
-    virtual KResultOr<size_t> directory_entry_count() const = 0;
     virtual KResult chmod(mode_t) = 0;
     virtual KResult chown(uid_t, gid_t) = 0;
     virtual KResult truncate(u64) { return KSuccess; }

+ 0 - 14
Kernel/FileSystem/Plan9FileSystem.cpp

@@ -851,20 +851,6 @@ void Plan9FSInode::flush_metadata()
     // Do nothing.
 }
 
-KResultOr<size_t> Plan9FSInode::directory_entry_count() const
-{
-    size_t count = 0;
-    KResult result = traverse_as_directory([&count](auto&) {
-        count++;
-        return true;
-    });
-
-    if (result.is_error())
-        return result;
-
-    return count;
-}
-
 KResult Plan9FSInode::traverse_as_directory(Function<bool(FileSystem::DirectoryEntryView const&)> callback) const
 {
     KResult result = KSuccess;

+ 0 - 1
Kernel/FileSystem/Plan9FileSystem.h

@@ -163,7 +163,6 @@ public:
     virtual KResultOr<NonnullRefPtr<Inode>> create_child(StringView name, mode_t, dev_t, uid_t, gid_t) override;
     virtual KResult add_child(Inode&, const StringView& name, mode_t) override;
     virtual KResult remove_child(const StringView& name) override;
-    virtual KResultOr<size_t> directory_entry_count() const override;
     virtual KResult chmod(mode_t) override;
     virtual KResult chown(uid_t, gid_t) override;
     virtual KResult truncate(u64) override;

+ 0 - 11
Kernel/FileSystem/ProcFS.cpp

@@ -173,11 +173,6 @@ KResult ProcFSInode::remove_child(const StringView&)
     return EROFS;
 }
 
-KResultOr<size_t> ProcFSInode::directory_entry_count() const
-{
-    VERIFY_NOT_REACHED();
-}
-
 KResult ProcFSInode::chmod(mode_t)
 {
     return EPERM;
@@ -234,12 +229,6 @@ RefPtr<Inode> ProcFSDirectoryInode::lookup(StringView name)
     return component->to_inode(m_parent_fs);
 }
 
-KResultOr<size_t> ProcFSDirectoryInode::directory_entry_count() const
-{
-    Locker locker(m_inode_lock);
-    return m_associated_component->entries_count();
-}
-
 NonnullRefPtr<ProcFSLinkInode> ProcFSLinkInode::create(const ProcFS& procfs, const ProcFSExposedComponent& component)
 {
     return adopt_ref(*new (nothrow) ProcFSLinkInode(procfs, component));

+ 0 - 2
Kernel/FileSystem/ProcFS.h

@@ -59,7 +59,6 @@ protected:
     virtual KResult add_child(Inode&, const StringView& name, mode_t) override;
     virtual KResult remove_child(const StringView& name) override;
     virtual void did_seek(FileDescription&, off_t) override;
-    virtual KResultOr<size_t> directory_entry_count() const override;
     virtual KResult chmod(mode_t) override;
     virtual KResult chown(uid_t, gid_t) override;
     virtual KResult truncate(u64) override;
@@ -91,7 +90,6 @@ protected:
     virtual InodeMetadata metadata() const override;
     virtual KResult traverse_as_directory(Function<bool(FileSystem::DirectoryEntryView const&)>) const override;
     virtual RefPtr<Inode> lookup(StringView name) override;
-    virtual KResultOr<size_t> directory_entry_count() const override;
 
     ProcFS& m_parent_fs;
 };

+ 0 - 11
Kernel/FileSystem/SysFS.cpp

@@ -145,11 +145,6 @@ KResult SysFSInode::remove_child(StringView const&)
     return EROFS;
 }
 
-KResultOr<size_t> SysFSInode::directory_entry_count() const
-{
-    VERIFY_NOT_REACHED();
-}
-
 KResult SysFSInode::chmod(mode_t)
 {
     return EPERM;
@@ -206,10 +201,4 @@ RefPtr<Inode> SysFSDirectoryInode::lookup(StringView name)
     return component->to_inode(m_parent_fs);
 }
 
-KResultOr<size_t> SysFSDirectoryInode::directory_entry_count() const
-{
-    Locker locker(m_inode_lock);
-    return m_associated_component->entries_count();
-}
-
 }

+ 0 - 2
Kernel/FileSystem/SysFS.h

@@ -78,7 +78,6 @@ protected:
     virtual KResultOr<NonnullRefPtr<Inode>> create_child(StringView name, mode_t, dev_t, uid_t, gid_t) override;
     virtual KResult add_child(Inode&, StringView const& name, mode_t) override;
     virtual KResult remove_child(StringView const& name) override;
-    virtual KResultOr<size_t> directory_entry_count() const override;
     virtual KResult chmod(mode_t) override;
     virtual KResult chown(uid_t, gid_t) override;
     virtual KResult truncate(u64) override;
@@ -99,7 +98,6 @@ protected:
     virtual InodeMetadata metadata() const override;
     virtual KResult traverse_as_directory(Function<bool(FileSystem::DirectoryEntryView const&)>) const override;
     virtual RefPtr<Inode> lookup(StringView name) override;
-    virtual KResultOr<size_t> directory_entry_count() const override;
 
     SysFS& m_parent_fs;
 };

+ 0 - 7
Kernel/FileSystem/TmpFS.cpp

@@ -212,13 +212,6 @@ RefPtr<Inode> TmpFSInode::lookup(StringView name)
     return fs().get_inode(it->value.inode->identifier());
 }
 
-KResultOr<size_t> TmpFSInode::directory_entry_count() const
-{
-    Locker locker(m_inode_lock, Mutex::Mode::Shared);
-    VERIFY(is_directory());
-    return 2 + m_children.size();
-}
-
 void TmpFSInode::notify_watchers()
 {
     set_metadata_dirty(true);

+ 0 - 1
Kernel/FileSystem/TmpFS.h

@@ -63,7 +63,6 @@ public:
     virtual KResultOr<NonnullRefPtr<Inode>> create_child(StringView name, mode_t, dev_t, uid_t, gid_t) override;
     virtual KResult add_child(Inode&, const StringView& name, mode_t) override;
     virtual KResult remove_child(const StringView& name) override;
-    virtual KResultOr<size_t> directory_entry_count() const override;
     virtual KResult chmod(mode_t) override;
     virtual KResult chown(uid_t, gid_t) override;
     virtual KResult truncate(u64) override;