Compare commits

..

No commits in common. "5188def9e5ce3030b495513510ec0e57d8e0f656" and "b619f717c8812691fa206e9f5efe05a5b6d00046" have entirely different histories.

11 changed files with 21 additions and 39 deletions

View File

@ -14,7 +14,6 @@ static const char* file_type(mode_t mode)
case S_IFBLK: return "block special device";
case S_IFLNK: return "symbolic link";
case S_IFIFO: return "pipe";
case S_IFSOCK: return "socket";
default: return "unknown file type";
}
}

View File

@ -35,19 +35,6 @@ namespace VFS
struct timespec atime;
struct timespec mtime;
struct timespec ctime;
void initialize_times()
{
g_realtime_clock.get_time(atime);
g_realtime_clock.get_time(ctime);
g_realtime_clock.get_time(mtime);
}
void update_mtime()
{
g_realtime_clock.get_time(mtime);
g_realtime_clock.get_time(ctime);
}
};
class Inode;

View File

@ -27,14 +27,12 @@ Result<SharedPtr<VFS::Inode>> MasterPTY::create_pair(int index)
master->m_settings.c_cc[VQUIT] = '\x1c';
master->m_window.ws_col = 80;
master->m_window.ws_row = 25;
master->m_metadata.initialize_times();
slave->m_master = master.ptr();
slave->m_metadata.devid = luna_dev_makedev(DeviceRegistry::Terminal, index + 2);
slave->m_metadata.uid = Scheduler::current()->auth.euid;
slave->m_metadata.gid = Scheduler::current()->auth.egid;
slave->m_metadata.mode = 0620;
slave->m_metadata.initialize_times();
return (SharedPtr<VFS::Inode>)master;
}
@ -195,8 +193,6 @@ Result<usize> MasterPTY::write(const u8* buf, usize, usize length)
{
for (usize i = 0; i < length; i++) { TRY(handle_input(buf[i])); }
m_metadata.update_mtime();
return length;
}

View File

@ -6,7 +6,6 @@ PTYMultiplexer::PTYMultiplexer()
{
m_metadata.devid = luna_dev_makedev(DeviceRegistry::Terminal, 0);
m_metadata.mode = 0666;
m_metadata.initialize_times();
}
Result<SharedPtr<VFS::Inode>> PTYMultiplexer::open()

View File

@ -31,8 +31,6 @@ Result<usize> SlavePTY::write(const u8* buf, usize, usize length)
TRY(m_master->m_buffer.append_data(buf, length));
m_metadata.update_mtime();
return length;
}

View File

@ -5,7 +5,6 @@ TTYLink::TTYLink()
{
m_metadata.devid = luna_dev_makedev(DeviceRegistry::Terminal, 1);
m_metadata.mode = 0666;
m_metadata.initialize_times();
}
Result<SharedPtr<VFS::Inode>> TTYLink::open()

View File

@ -21,7 +21,9 @@ namespace DevPTS
root->set_fs(*fs, {});
root->set_inode_number();
root->m_metadata.mode = 0755;
root->m_metadata.initialize_times();
g_realtime_clock.get_time(root->m_metadata.ctime);
g_realtime_clock.get_time(root->m_metadata.atime);
g_realtime_clock.get_time(root->m_metadata.mtime);
fs->set_root(root);
TRY(g_devpts_instances.try_append(fs.ptr()));

View File

@ -43,7 +43,7 @@ namespace DevPTS
inode->did_link();
m_metadata.update_mtime();
g_realtime_clock.get_time(m_metadata.mtime);
return {};
}
@ -61,7 +61,7 @@ namespace DevPTS
inode->did_unlink();
m_metadata.update_mtime();
g_realtime_clock.get_time(m_metadata.mtime);
return {};
}

View File

@ -27,7 +27,9 @@ namespace TmpFS
inode->set_fs(*this, {});
inode->set_inode_number(m_next_inode_number++, {});
inode->m_metadata.mode = mode;
inode->m_metadata.initialize_times();
g_realtime_clock.get_time(inode->m_metadata.mtime);
g_realtime_clock.get_time(inode->m_metadata.atime);
g_realtime_clock.get_time(inode->m_metadata.ctime);
return (SharedPtr<VFS::Inode>)inode;
}
@ -37,7 +39,9 @@ namespace TmpFS
inode->set_fs(*this, {});
TRY(inode->set_link(link, {}));
inode->set_inode_number(m_next_inode_number++, {});
inode->m_metadata.initialize_times();
g_realtime_clock.get_time(inode->m_metadata.mtime);
g_realtime_clock.get_time(inode->m_metadata.atime);
g_realtime_clock.get_time(inode->m_metadata.ctime);
return (SharedPtr<VFS::Inode>)inode;
}
@ -52,7 +56,9 @@ namespace TmpFS
inode->set_fs(*this, {});
inode->set_inode_number(m_next_inode_number++, {});
inode->m_metadata.mode = mode;
inode->m_metadata.initialize_times();
g_realtime_clock.get_time(inode->m_metadata.mtime);
g_realtime_clock.get_time(inode->m_metadata.atime);
g_realtime_clock.get_time(inode->m_metadata.ctime);
return (SharedPtr<VFS::Inode>)inode;
}
@ -69,7 +75,9 @@ namespace TmpFS
// device ID atm.
inode->set_device_id(luna_dev_makedev(major, minor), {});
inode->m_metadata.mode = mode;
inode->m_metadata.initialize_times();
g_realtime_clock.get_time(inode->m_metadata.mtime);
g_realtime_clock.get_time(inode->m_metadata.atime);
g_realtime_clock.get_time(inode->m_metadata.ctime);
inode->m_metadata.size = device->size();
return (SharedPtr<VFS::Inode>)inode;

View File

@ -45,7 +45,7 @@ namespace TmpFS
inode->did_link();
m_metadata.update_mtime();
g_realtime_clock.get_time(m_metadata.mtime);
return {};
}
@ -63,7 +63,7 @@ namespace TmpFS
inode->did_unlink();
m_metadata.update_mtime();
g_realtime_clock.get_time(m_metadata.mtime);
return {};
}
@ -118,7 +118,7 @@ namespace TmpFS
m_metadata.size = m_data_buffer.size();
m_metadata.update_mtime();
g_realtime_clock.get_time(m_metadata.mtime);
return length;
}
@ -133,7 +133,7 @@ namespace TmpFS
m_metadata.size = m_data_buffer.size();
m_metadata.update_mtime();
g_realtime_clock.get_time(m_metadata.mtime);
return {};
}

View File

@ -5,12 +5,10 @@
UnixSocket::UnixSocket()
{
m_metadata.initialize_times();
}
UnixSocket::UnixSocket(UnixSocket* peer) : m_state(State::Connected), m_peer(peer)
{
m_metadata.initialize_times();
}
UnixSocket::~UnixSocket()
@ -43,8 +41,6 @@ Result<usize> UnixSocket::send(const u8* buf, usize length, int)
TRY(m_peer->m_data.append_data(buf, length));
m_peer->m_metadata.update_mtime();
return length;
}
@ -213,7 +209,5 @@ Result<SharedPtr<OpenFileDescription>> UnixSocket::accept(Registers* regs, int f
*addr = (struct sockaddr*)&peer->m_addr;
*addrlen = peer->m_addrlen;
m_metadata.update_mtime();
return description;
}