Andreas Kling
e485667201
Kernel: ftruncate() should update mtime
2020-01-08 15:21:06 +01:00
Andreas Kling
d84299c7be
Kernel: Allow fchmod() and fchown() on pre-bind() local sockets
...
In order to ensure a specific owner and mode when the local socket
filesystem endpoint is instantiated, we need to be able to call
fchmod() and fchown() on a socket fd between socket() and bind().
This is because until we call bind(), there is no filesystem inode
for the socket yet.
2020-01-03 20:14:56 +01:00
Andreas Kling
82760998a9
Ext2FS: Take the inode lock in Ext2FSInode::metadata()
...
Remove an unnecessary InterruptDisabler to make this not assert. :^)
2020-01-03 17:48:02 +01:00
Andreas Kling
5a45376180
Kernel+SystemMonitor: Log amounts of I/O per thread
...
This patch adds these I/O counters to each thread:
- (Inode) file read bytes
- (Inode) file write bytes
- Unix socket read bytes
- Unix socket write bytes
- IPv4 socket read bytes
- IPv4 socket write bytes
These are then exposed in /proc/all and seen in SystemMonitor.
2019-12-01 17:40:27 +01:00
Andreas Kling
0782c60fe5
Kernel: Update the mtime after a successful InodeFile::write()
...
Well this was pretty silly. We were not updating the modification time
of files.. after modifying them. :^)
2019-10-22 22:23:58 +02:00
Andreas Kling
27f699ef0c
AK: Rename the common integer typedefs to make it obvious what they are.
...
These types can be picked up by including <AK/Types.h>:
* u8, u16, u32, u64 (unsigned)
* i8, i16, i32, i64 (signed)
2019-07-03 21:20:13 +02:00
Andreas Kling
90b1354688
AK: Rename RetainPtr => RefPtr and Retained => NonnullRefPtr.
2019-06-21 18:37:47 +02:00
Andreas Kling
c1bbd40b9e
Kernel: Rename "descriptor" to "description" where appropriate.
...
Now that FileDescription is called that, variables of that type should not
be called "descriptor". This is kinda wordy but we'll get used to it.
2019-06-13 22:03:04 +02:00
Andreas Kling
e42c3b4fd7
Kernel: Rename LinearAddress => VirtualAddress.
2019-06-07 12:56:50 +02:00
Andreas Kling
bc951ca565
Kernel: Run clang-format on everything.
2019-06-07 11:43:58 +02:00
Andreas Kling
08cd75ac4b
Kernel: Rename FileDescriptor to FileDescription.
...
After reading a bunch of POSIX specs, I've learned that a file descriptor
is the number that refers to a file description, not the description itself.
So this patch renames FileDescriptor to FileDescription, and Process now has
FileDescription* file_description(int fd).
2019-06-07 09:36:51 +02:00
Andreas Kling
5e1c7cb32c
Kernel: Memory-mapped files now have the absolute path as their name.
...
It's generated when the mapping is first created, so it won't update if
the file moves. Maybe that's something we should support, too.
2019-06-02 10:14:28 +02:00
Andreas Kling
2dd9ef6863
Kernel: Make File::absolute_path() const.
2019-06-01 18:56:56 +02:00
Andreas Kling
874bffc729
FileSystem: Get rid of VFS::absolute_path() and teach Mount about custodies.
2019-05-30 22:30:29 +02:00
Andreas Kling
baaede1bf9
Kernel: Make the Process allocate_region* API's understand "int prot".
...
Instead of having to inspect 'prot' at every call site, make the Process
API's take care of that so we can just pass it through.
2019-05-30 16:14:37 +02:00
Andreas Kling
08926e59b3
Kernel: Add InodeFile, a File subclass for regular files.
...
Finally everything that can be held by a FileDescriptor actually inherits
from the File class.
2019-05-30 13:39:17 +02:00