Bug 141559

Summary: WorkQueue should support concurrent queues
Product: WebKit Reporter: Antti Koivisto <koivisto>
Component: PlatformAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: andersca, buildbot, rniwa
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
patch
none
iOS build fix
buildbot: commit-queue-
Archive of layout-test-results from ews107 for mac-mavericks-wk2
none
without the qos change andersca: review+

Description Antti Koivisto 2015-02-13 03:57:34 PST
Currently it only does serial.
Comment 1 Antti Koivisto 2015-02-13 04:41:19 PST
Created attachment 246516 [details]
patch
Comment 2 Antti Koivisto 2015-02-13 05:26:53 PST
Created attachment 246518 [details]
iOS build fix
Comment 3 Build Bot 2015-02-13 06:22:40 PST
Comment on attachment 246518 [details]
iOS build fix

Attachment 246518 [details] did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-queues.appspot.com/results/6659487410683904

New failing tests:
fast/frames/frame-limit.html
Comment 4 Build Bot 2015-02-13 06:22:43 PST
Created attachment 246521 [details]
Archive of layout-test-results from ews107 for mac-mavericks-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: ews107  Port: mac-mavericks-wk2  Platform: Mac OS X 10.9.5
Comment 5 Antti Koivisto 2015-02-13 09:12:56 PST
Created attachment 246528 [details]
without the qos change
Comment 6 Anders Carlsson 2015-02-13 09:27:36 PST
Comment on attachment 246528 [details]
without the qos change

View in context: https://bugs.webkit.org/attachment.cgi?id=246528&action=review

> Source/WebKit2/UIProcess/Launcher/ProcessLauncher.cpp:38
> +    static NeverDestroyed<Ref<WorkQueue>> processLauncherWorkQueue { WorkQueue::create("com.apple.WebKit.ProcessLauncher") };

No need to use NeverDestroyed with a smart pointer type.
Comment 7 Antti Koivisto 2015-02-13 09:51:38 PST
https://trac.webkit.org/r180054
Comment 8 Sam Weinig 2015-02-13 12:01:25 PST
Comment on attachment 246528 [details]
without the qos change

View in context: https://bugs.webkit.org/attachment.cgi?id=246528&action=review

> Source/WebKit2/Shared/mac/SecItemShim.cpp:181
> +    connection->addWorkQueueMessageReceiver(Messages::SecItemShim::messageReceiverName(), &m_queue.get(), this);

You can do m_queue.ptr() here.

> Source/WebKit2/WebProcess/Plugins/PluginProcessConnectionManager.cpp:61
> +    connection->addWorkQueueMessageReceiver(Messages::PluginProcessConnectionManager::messageReceiverName(), &m_queue.get(), this);

&m_queue.get() -> m_queue.ptr()

> Source/WebKit2/WebProcess/WebPage/EventDispatcher.cpp:90
> +    connection->addWorkQueueMessageReceiver(Messages::EventDispatcher::messageReceiverName(), &m_queue.get(), this);

&m_queue.get() -> m_queue.ptr()

> Source/WebKit2/WebProcess/WebPage/ViewUpdateDispatcher.cpp:55
> +    connection->addWorkQueueMessageReceiver(Messages::ViewUpdateDispatcher::messageReceiverName(), &m_queue.get(), this);

&m_queue.get() -> m_queue.ptr()