mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-09-30 00:31:14 +00:00
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.
This commit is contained in:
parent
5edd4bd512
commit
c2b5c5bac5
Notes:
sideshowbarker
2024-07-17 05:13:18 +09:00
Author: https://github.com/supercomputer7 Commit: https://github.com/SerenityOS/serenity/commit/c2b5c5bac5 Pull-request: https://github.com/SerenityOS/serenity/pull/15741 Reviewed-by: https://github.com/gmta ✅ Reviewed-by: https://github.com/kleinesfilmroellchen ✅
|
@ -294,11 +294,6 @@ ErrorOr<void> TmpFSInode::chown(UserID uid, GroupID gid)
|
|||
ErrorOr<NonnullLockRefPtr<Inode>> 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<NonnullLockRefPtr<Inode>> 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));
|
||||
|
|
Loading…
Reference in a new issue