WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
290211
Stop using IOChannel in NetworkCache
https://bugs.webkit.org/show_bug.cgi?id=290211
Summary
Stop using IOChannel in NetworkCache
Ben Nham
Reported
2025-03-21 13:39:00 PDT
We've seen sporadic logs of page loads taking minutes to complete when the system is under load. The logs are showing that the disk cache lookup in NetworkProcess is getting preempted for minutes and it's being serviced on a default overcommit dispatch queue at priority 4. We think this might be because we're using dispatch_io to read the records, which internally basically parks a thread on the overcommit queue in pread and somehow the priority propagation isn't always working and sometimes leading to the pread being stuck and preempted at pri 4. Since dispatch_io is basically buying us nothing here other than using more threads and making it harder to follow what's going on, we should probably just stop using it and instead make I/O syscalls directly on the network cache's I/O queue.
Attachments
Add attachment
proposed patch, testcase, etc.
Ben Nham
Comment 1
2025-03-21 13:39:01 PDT
<
rdar://problem/142645876
>
Ben Nham
Comment 2
2025-03-21 13:46:53 PDT
Pull request:
https://github.com/WebKit/WebKit/pull/42840
EWS
Comment 3
2025-03-23 21:49:41 PDT
Committed
292576@main
(0b589ff5c2f2): <
https://commits.webkit.org/292576@main
> Reviewed commits have been landed. Closing PR #42840 and removing active labels.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug