From c2b5c5bac59b3e4ff0e53a09263b7f64d056897b Mon Sep 17 00:00:00 2001 From: Liav A Date: Fri, 21 Oct 2022 18:39:41 +0300 Subject: [PATCH] Kernel: Add support for device nodes in TmpFS Later on we will remove the DevTmpFS code, so in order to support mounting TmpFS instead, we need to be able to create device nodes on the filesystem. --- Kernel/FileSystem/TmpFS.cpp | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/Kernel/FileSystem/TmpFS.cpp b/Kernel/FileSystem/TmpFS.cpp index f00845eb1e..7f66a9b4d4 100644 --- a/Kernel/FileSystem/TmpFS.cpp +++ b/Kernel/FileSystem/TmpFS.cpp @@ -294,11 +294,6 @@ ErrorOr TmpFSInode::chown(UserID uid, GroupID gid) ErrorOr> TmpFSInode::create_child(StringView name, mode_t mode, dev_t dev, UserID uid, GroupID gid) { MutexLocker locker(m_inode_lock); - - // TODO: Support creating devices on TmpFS. - if (dev != 0) - return ENOTSUP; - time_t now = kgettimeofday().to_truncated_seconds(); InodeMetadata metadata; @@ -308,6 +303,8 @@ ErrorOr> TmpFSInode::create_child(StringView name, mode metadata.atime = now; metadata.ctime = now; metadata.mtime = now; + metadata.major_device = major_from_encoded_device(dev); + metadata.minor_device = minor_from_encoded_device(dev); auto child = TRY(TmpFSInode::try_create(fs(), metadata, *this)); TRY(add_child(*child, name, mode));