Closed Bug 523175 Opened 15 years ago Closed 15 years ago

IPDL: Frontend support for shmem

Categories

(Core :: IPC, enhancement)

enhancement
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: cjones, Assigned: cjones)

References

Details

Attachments

(1 file, 6 obsolete files)

Add a shmem<T> type to IPDL.
Attached patch IPDL support for shmem (obsolete) (deleted) — Splinter Review
Ended up being significantly more complicated than I anticipated because IPDL actors need HANDLEs on Windows in order to share mappings.
Attachment #407480 - Flags: review?(bent.mozilla)
Attachment #407480 - Flags: review?(bent.mozilla)
Comment on attachment 407480 [details] [diff] [review] IPDL support for shmem Sorry for the wasted fly-over, this needs more work. See https://wiki.mozilla.org/IPDL/Proposal:Shmem_access_control#drawWindow_Example for a start.
Attached patch backup, with bug 523761 excised (obsolete) (deleted) — Splinter Review
Attachment #407480 - Attachment is obsolete: true
Comment on attachment 407704 [details] [diff] [review] backup, with bug 523761 excised Oops, crud, changed the wrong bug.
Attachment #407704 - Flags: review?(joe) → review?(bent.mozilla)
I tried extacting the above patch in the electrolysis branch (at rev 34406:6894db5c84a1), and I ran into merge problems: ~> patch -p1 <~/Download/shmem407704.patch patching file ipc/glue/ProtocolUtils.h Hunk #1 FAILED at 39. Hunk #2 FAILED at 75. 2 out of 2 hunks FAILED -- saving rejects to file ipc/glue/ProtocolUtils.h.rej patching file ipc/ipdl/ipdl/builtin.py patching file ipc/ipdl/ipdl/cxx/ast.py patching file ipc/ipdl/ipdl/cxx/cgen.py patching file ipc/ipdl/ipdl/lower.py Hunk #8 FAILED at 1128. Hunk #9 succeeded at 1375 (offset -8 lines). Hunk #11 succeeded at 2324 (offset -15 lines). Hunk #12 FAILED at 2406. Hunk #13 FAILED at 2522. 3 out of 13 hunks FAILED -- saving rejects to file ipc/ipdl/ipdl/lower.py.rej patching file ipc/ipdl/ipdl/parser.py patching file ipc/ipdl/ipdl/type.py patching file ipc/ipdl/test/cxx/Makefile.in patching file ipc/ipdl/test/cxx/PTestShmem.ipdl patching file ipc/ipdl/test/cxx/TestShmem.cpp patching file ipc/ipdl/test/cxx/TestShmem.h patching file ipc/ipdl/test/cxx/ipdl.mk patching file ipc/ipdl/test/ipdl/error/shmem.ipdl patching file ipc/ipdl/test/ipdl/ok/shmem.ipdl Is there a particular rev I should patch? Is it dependent on any other patch?
Attached patch same as above, adds some windows hackery (obsolete) (deleted) — Splinter Review
Rohit, this patch applies cleanly for me ... are you sure your e10s repo is updated to the latest version? (Try hg pull -u).
Attachment #407704 - Attachment is obsolete: true
Attachment #408852 - Flags: review?(bent.mozilla)
Attachment #407704 - Flags: review?(bent.mozilla)
Attached patch bitrotted already (obsolete) (deleted) — Splinter Review
Attachment #408852 - Attachment is obsolete: true
Attachment #409136 - Flags: review?(bent.mozilla)
Attachment #408852 - Flags: review?(bent.mozilla)
Comment on attachment 409136 [details] [diff] [review] bitrotted already >+ # bool AllocShmem(size_t size, Shmem* outmem): >+ # nsAutoPtr<shmem_t> shmem(Shmem::Alloc(size)); The code is correct but the comment neglects the autoptr.forget() that you need to make this work :)
Attachment #409136 - Flags: review?(bent.mozilla) → review+
Tried applying attachment 407704 [details] [diff] [review] against the latest rev (34549:46ebd7e439dc), but that still fails exactly as above. However, I just tried applying 409136, and that seems to work just fine. :)
Attached patch updated because of Shmem review comments (obsolete) (deleted) — Splinter Review
Attachment #409136 - Attachment is obsolete: true
Attached patch un-bitrotted (obsolete) (deleted) — Splinter Review
Attachment #411831 - Attachment is obsolete: true
Attached patch updated (deleted) — Splinter Review
Attachment #412886 - Attachment is obsolete: true
Pushed http://hg.mozilla.org/projects/electrolysis/rev/82549dbf71d8 to reduce merge conflicts in later patches. Have a local followup patch, will push that when shmem is ready to land.
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: