[tbb-bugs] #21549 [Applications/Tor Browser]: Investigate wasm for linkability/fingerprintability/disk avoidance issues

Tor Bug Tracker & Wiki blackhole at torproject.org
Wed Oct 9 19:02:44 UTC 2019


#21549: Investigate wasm for linkability/fingerprintability/disk avoidance issues
-------------------------------------------------+-------------------------
 Reporter:  gk                                   |          Owner:  tbb-
                                                 |  team
     Type:  task                                 |         Status:  new
 Priority:  Very High                            |      Milestone:
Component:  Applications/Tor Browser             |        Version:
 Severity:  Normal                               |     Resolution:
 Keywords:  ff68-esr, tbb-9.0,                   |  Actual Points:
  TorBrowserTeam201910                           |
Parent ID:                                       |         Points:  1
 Reviewer:                                       |        Sponsor:
                                                 |  Sponsor44-can
-------------------------------------------------+-------------------------

Comment (by sysrqb):

 Okay, I started from the beginning, and then worked backwards :)

 This was tedious because most of the initial patches were simply
 refactoring asmjs compiler code such that the code could be shared with
 wasm. Reading these patches was helpful except the code has significantly
 changed since four years ago (and wasm has mostly replaced asmjs in the
 codebase now). As an example, the compiler cached asmjs code until earlier
 this year. I'm taking a different approach now, but I'll post this anyway.
 The next comments will be based on the current implementation.

 https://bugzilla.mozilla.org/show_bug.cgi?id=1188259
   - Meta ticket of implementing wasm
 https://bugzilla.mozilla.org/show_bug.cgi?id=1224389
   - Odin: refactor in preparation for WebAssembly decoder
   Commits:
     - f7c5ebaa664b0dc07836fe06d3609e239ba7e71a - okay
       - Mostly refactoring
     - 4ef42db6e3cad192ccefaacc823aab012a57c6e5 - okay
       - Mostly code simplification
     - 28f2c8f11d211e30e1f0fb77902c9ba4d2a7d1c5 -
         - Check JS::AsmJSCache_QuotaExceeded, LookupAsmJSModuleInCache
           - https://bugzilla.mozilla.org/show_bug.cgi?id=1516697 - Remove
 the implementation of the asm.js caching mechanism.
         - masm.loadAsmJSHeapRegisterFromGlobalData is isolated?
 https://bugzilla.mozilla.org/show_bug.cgi?id=1232205
   - wasm:Baseline JIT
   Commits:
     - 9e9fafcd38f7e3ec3db1d4508bf4230a2d4b3678 - okay
     - 8938a215ec16a20f9fa4f4156d9bd611e8fa8562 - okay
     - 5f37b8277391842f5e56c211c3ca4acd86237d72 - okay
     - 8ec23c07dd09da1e46bf17f05ecad83f8aa12e4e - okay
     - 9af7246a474bb824f39562b68e5f7fae0921a8d9 - okay
       - All refactoring and JIT impl, no caching
     - 136c1d78af1bf603c4bcd2fc2488d3c3f9661569 - okay
       - Adds mechanism for running baseline wasm tests
     - 65b0869d9e684d486c1ac4cf90c60bf3dfc22c82 - okay
       - Adds test directive
     - 2a5c7f48c92c2163b9f69ebc9f287c7ae8db7c7c -
       - Baseline JIT impl.
       - Pushes code onto masm stack? Is this masm stack isolated?
       - ffiCall? WasmTableCallPtrReg?
     - bd9aa07076b543051bcfbd8937c32a9ad2bec883 - okay
       - Add pref and jsshell runtime arg

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/21549#comment:30>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tbb-bugs mailing list