[webkit-changes] [WebKit/WebKit] 5b9af9: [GLIB] Many network process crashes when running W...
Carlos Garcia Campos
noreply at github.com
Mon Jan 2 06:07:38 PST 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 5b9af92f602ee677d977c4b49768c66f0862a903
https://github.com/WebKit/WebKit/commit/5b9af92f602ee677d977c4b49768c66f0862a903
Author: Carlos Garcia Campos <cgarcia at igalia.com>
Date: 2023-01-02 (Mon, 02 Jan 2023)
Changed paths:
M Source/WTF/wtf/glib/RunLoopSourcePriority.h
M Source/WebKit/NetworkProcess/cache/NetworkCacheIOChannel.h
M Source/WebKit/NetworkProcess/cache/NetworkCacheIOChannelGLib.cpp
M Source/WebKit/NetworkProcess/cache/NetworkCacheStorage.cpp
Log Message:
-----------
[GLIB] Many network process crashes when running WPT tests
https://bugs.webkit.org/show_bug.cgi?id=232629
Reviewed by Michael Catanzaro.
Stop using GLib async APIs for network cache IOChannel implementation,
and use the sync API from a thread instead. The async API ends up doing
the job in a thread because file streams are not pollable. The problem
is that the internal GThreadPool tries to change the thread scheduler
setting and it fails when the current thread uses the idle scheduler,
which is the case of disk cache background threads. This reverts the
workaround introduced in 244519 at main.
* Source/WTF/wtf/glib/RunLoopSourcePriority.h:
* Source/WebKit/NetworkProcess/cache/NetworkCacheIOChannel.h:
(WebKit::NetworkCache::IOChannel::isOpened const):
* Source/WebKit/NetworkProcess/cache/NetworkCacheIOChannelGLib.cpp:
(WebKit::NetworkCache::IOChannel::IOChannel):
(WebKit::NetworkCache::IOChannel::read):
(WebKit::NetworkCache::IOChannel::write):
(WebKit::NetworkCache::fillDataFromReadBuffer): Deleted.
(WebKit::NetworkCache::inputStreamReadReadyCallback): Deleted.
(WebKit::NetworkCache::IOChannel::readSyncInThread): Deleted.
(WebKit::NetworkCache::outputStreamWriteReadyCallback): Deleted.
* Source/WebKit/NetworkProcess/cache/NetworkCacheStorage.cpp:
(WebKit::NetworkCache::Storage::Storage):
(WebKit::NetworkCache::qosForBackgroundIOQueue): Deleted.
Canonical link: https://commits.webkit.org/258379@main
More information about the webkit-changes
mailing list