Closed Bug 1635956 Opened 1 year ago Closed 1 year ago

Use Shmems instead of SharedMemory in WebGL remoting

Categories

(Core :: Canvas: WebGL, task, P1)

task

Tracking

()

RESOLVED FIXED
mozilla79
Tracking Status
firefox79 --- fixed

People

(Reporter: handyman, Assigned: handyman)

References

Details

Attachments

(3 files)

IpdlQueue is still set up to create and send SharedMemory objects instead of Shmems, which won't work on Linux as FileDescriptors must be handled by the socket. This bug will change the operations in QueueParamTraits to use Shmem.

The old style of using SharedMemory objects was fine for Windows but was incompatible with Mac and Linux because the objects were not sent to the remote process with the proper socket scheme. This meant that shared memory could not be read by the destination process. Shmems are capable of this on all platforms so we use them instead.

Implements LookupSharedMemory and AllocShmem in IpdlQueue (and fixes a few minor build issues).

Depends on D74972

Implements LookupSharedMemory and AllocShmem in ProducerConsumerQueue (and fixes a few minor build issues).

Depends on D74973

The severity field is not set for this bug.
:jgilbert, could you have a look please?

For more information, please visit auto_nag documentation.

Flags: needinfo?(jgilbert)
Severity: -- → N/A
Flags: needinfo?(jgilbert)

The severity field is not set for this bug.
:jgilbert, could you have a look please?

For more information, please visit auto_nag documentation.

Flags: needinfo?(jgilbert)
Flags: needinfo?(jgilbert)
Type: defect → task
Pushed by daparks@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/864c987c5aa8
Part 1 - Refactor WebGL QueueParamTraits to use Push/PopShmem r=jgilbert
https://hg.mozilla.org/integration/autoland/rev/f004c5cbfce3
Part 2 - Implement Shmem functionality in WebGL IpdlQueue r=jgilbert
https://hg.mozilla.org/integration/autoland/rev/801f886cf1b6
Part 3 - Implement Shmem functionality in WebGL ProducerConsumerQueue r=jgilbert
Regressions: 1643987
Regressions: 1645010
Regressions: 1644404
You need to log in before you can comment on or make changes to this bug.