Closed Andy-Python-Programmer closed 11 months ago
The webpage does not load yet, but we have some progress :^)
Today's Debugging Notes:
WebPageProxy
-> m_process
-> WebProcessProxy
-> WebProcessPool
Find why the process is not receiving the UNIX IPC messages sent.
Now kernel backtraces resolve userland address:
mlibc
tags the memory location using sys_tag
.
In addition, now systraces for syscalls that take in a file descriptor are more readable since now they print out the file path as-well.
Today's Debugging Notes:
static ssize_t readBytesFromSocket(int socketDescriptor, Vector<uint8_t>& buffer, Vector<int>& fileDescriptors)
The mmap(2)
silent failure memes have now been resolved.
I am merging this pull request, even though its not fully functional yet. The pull request adds other stuff that fixes stuff in master and I cannot be bothered to cherry pick the commits on top of master.
Todo
jq
Ext2::truncate()
getsockopt()
setsockopt()
mmap
failure. Apparently, WebKit makes use ofmmap
instead ofmprotect
to change the protection flags of the guard pages. The syscall fails withEFAULT
but should be fine for now since it does not check for failure. Checkout https://github.com/WebKit/WebKit/blob/main/Source/WTF/wtf/posix/OSAllocatorPOSIX.cpp#L106C2-L109C22pthread_getattr_np
with unsetstackAddr
andstackSize
is problematic since it internally callsget_own_stackinfo
which is reliant on/proc/self/maps
, which does not exist. Checkout https://github.com/managarm/mlibc/blob/ffea4f0cf708dc1a96528bf3cfa19fb2bbc75d24/options/posix/generic/pthread-stubs.cpp#L267C1-L294C1Debugging Notes
NetworkProcess
: Responsible for handling network requests and storage management. All WebContent processes in a single session (default vs. private browsing) share a single networking session in the networking process.