gecko-dev/dom/system
Markus Stange df441c491f Bug 1726480 - Add IOUtils::OpenFileForSyncReading. r=dom-worker-reviewers,asuth
This exposes synchronous file reading to workers. It's intended to be used
by profiler symbolication.
The API only supports reading into an existing Uint8Array. This avoids
creating garbage, and minimizes copies.
It also keeps the file open so that it doesn't need to be reopened for
each read.

The implementation uses nsFileStream.

I first tried an implementation which used mmap + memcpy rather than read,
but it didn't work for files larger than 2GiB due to limitations in NSPR's
mmap support, and the profiler needs to read >2GiB files.
Specifically, the profiler sometimes needs to read
/System/Library/dyld/dyld_shared_cache_arm64e , which is 2.2GiB big on
macOS 11.5.

Differential Revision: https://phabricator.services.mozilla.com/D124207
2021-11-04 19:47:29 +00:00
..
android
linux Bug 1726571 - Add gpsd API 11-12 support r=emilio 2021-08-20 13:08:07 +00:00
mac
tests Bug 1726734 - Replace deprecated octal sequences to satisfy ESLint no-octal-rule. r=Standard8 2021-10-18 14:37:04 +00:00
windows
components.conf
IOUtils.cpp Bug 1726480 - Add IOUtils::OpenFileForSyncReading. r=dom-worker-reviewers,asuth 2021-11-04 19:47:29 +00:00
IOUtils.h Bug 1726480 - Add IOUtils::OpenFileForSyncReading. r=dom-worker-reviewers,asuth 2021-11-04 19:47:29 +00:00
moz.build
NetworkGeolocationProvider.jsm Bug 1714259 - Remove REGION_LOCATION_SERVICES_DIFFERENCE telemetry. r=Standard8 2021-06-23 08:25:08 +00:00
nsDeviceSensors.cpp Bug 1701789 - Restore UserProximityEvent r=smaug 2021-03-30 20:44:47 +00:00
nsDeviceSensors.h Bug 1723050 - Part 29: Replace typedef by using in dom/system/ r=smaug 2021-08-09 13:37:30 +00:00
nsIOSFileConstantsService.idl
nsIOSPermissionRequest.idl
nsOSPermissionRequest.h
nsOSPermissionRequestBase.cpp
nsOSPermissionRequestBase.h
OSFileConstants.cpp Bug 1723641 - Remove OS.Constants.Path.libsqlite3. r=peterv 2021-08-05 07:43:44 +00:00
OSFileConstants.h
PathUtils.cpp Bug 1710193 - Return correct dir from PathUtils.getLocalProfileDir. r=barret 2021-05-11 20:59:38 +00:00
PathUtils.h