Add GPU process support for accessLog, errorLog, updateVideoFullscreenInlineImage, etc.
Created attachment 389268 [details] Patch
Comment on attachment 389268 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=389268&action=review > Source/WebKit/GPUProcess/media/RemoteMediaPlayerManagerProxy.cpp:199 > +void RemoteMediaPlayerManagerProxy::updateVideoFullscreenInlineImage(MediaPlayerPrivateRemoteIdentifier id) Please don't use 'id'. It will cause compile errors if this file is ever made a .mm file. > Source/WebKit/GPUProcess/media/RemoteMediaPlayerManagerProxy.messages.in:40 > + AccessLog(WebKit::MediaPlayerPrivateRemoteIdentifier id) -> (String accessLog) Synchronous > + ErrorLog(WebKit::MediaPlayerPrivateRemoteIdentifier id) -> (String errorLog) Synchronous no id > Source/WebKit/GPUProcess/media/RemoteMediaPlayerProxy.cpp:243 > +void RemoteMediaPlayerProxy::updateVideoFullscreenInlineImage(void) No need for void > Source/WebKit/WebProcess/GPU/media/MediaPlayerPrivateRemote.cpp:530 > + if (!connection().sendSync(Messages::RemoteMediaPlayerProxy::AccessLog(), Messages::RemoteMediaPlayerProxy::AccessLog::Reply(log), m_id)) Does this have to be synchronous IPC? We try to avoid that as much as possible.
Comment on attachment 389268 [details] Patch Can we enable some layout tests in this patch?
iOS bots are failing due to: /Volumes/Data/worker/iOS-13-Simulator-Build-EWS/build/Source/WebKit/WebProcess/GPU/media/MediaPlayerPrivateRemote.cpp:530:79: error: no member named 'AccessLog' in namespace 'Messages::RemoteMediaPlayerProxy'; did you mean 'Messages::RemoteMediaPlayerManagerProxy::AccessLog'? Looks like it's a simple fix; the message is defined on RemoteMediaPlayerManagerProxy, not RemoteMediaPlayerProxy.
Created attachment 389825 [details] Patch
Created attachment 391655 [details] Patch
Comment on attachment 391655 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=391655&action=review > Source/WebKit/GPUProcess/media/RemoteMediaPlayerManagerProxy.messages.in:39 > + AccessLog(WebKit::MediaPlayerPrivateRemoteIdentifier playerIdentifier) -> (String accessLog) Synchronous Is it possible to use Async messages here?
I'm not sure how we would do this asynchronously. At any rate, my understanding of these two methods suggests that they would be called rarely, so perhaps the synchronous nature of the call will not be a real issue?
(In reply to Tim Monroe from comment #8) > I'm not sure how we would do this asynchronously. At any rate, my > understanding of these two methods suggests that they would be called > rarely, so perhaps the synchronous nature of the call will not be a real > issue? It doesn't matter how rare they are. Any synchronous message can cause hangs in the calling process if the receiving process is busy.
(In reply to Simon Fraser (smfr) from comment #9) > (In reply to Tim Monroe from comment #8) > > I'm not sure how we would do this asynchronously. At any rate, my > > understanding of these two methods suggests that they would be called > > rarely, so perhaps the synchronous nature of the call will not be a real > > issue? > > It doesn't matter how rare they are. Any synchronous message can cause hangs > in the calling process if the receiving process is busy. Or the receiving process crashed.
Comment on attachment 391655 [details] Patch Clearing flags on attachment: 391655 Committed r257577: <https://trac.webkit.org/changeset/257577>
All reviewed patches have been landed. Closing bug.
<rdar://problem/59854422>