| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
BUG=461222
Review URL: https://codereview.chromium.org/1343273005
Cr-Commit-Position: refs/heads/master@{#365010}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The plugin is automatically registered in layout tests using the
MIME type application/x-blink-test-plugin. Several layout tests
have also been migrated to use the new plugin.
Implementing the plugin also revealed a bug in PPAPI and the
layout test runner:
- Retrieving the key code via PPAPI always returned KeyA on Mac.
- The layout test runner explicitly set DYLD_FRAMEWORK_PATH,
making it hard to load the plugin from the right location.
BUG=474535
Review URL: https://codereview.chromium.org/1480303002
Cr-Commit-Position: refs/heads/master@{#362872}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
#1 id:1 of https://codereview.chromium.org/1224453003/)
Reason for revert:
Results in multiple data races reported on ppapi_unittests by ThreadSanitizer
Original issue's description:
> Convert ppapi_unittests to run exclusively on Swarming
>
> 0 configs already ran on Swarming
> 46 used to run locally and were converted:
> - chromium.chromiumos.json: Linux ChromiumOS Ozone Tests (1)
> - chromium.chromiumos.json: Linux ChromiumOS Tests (1)
> - chromium.chromiumos.json: Linux ChromiumOS Tests (dbg)(1)
> - chromium.fyi.json: ClangToTLinux tester
> - chromium.fyi.json: ClangToTLinuxASan tester
> - chromium.fyi.json: ClangToTMac tester
> - chromium.fyi.json: ClangToTMacASan tester
> - chromium.fyi.json: ClangToTWin tester
> - chromium.fyi.json: ClangToTWin(dbg) tester
> - chromium.fyi.json: ClangToTWin(dll) tester
> - chromium.fyi.json: ClangToTWin64 tester
> - chromium.fyi.json: ClangToTWin64(dbg) tester
> - chromium.fyi.json: ClangToTWin64(dll) tester
> - chromium.fyi.json: CrWinAsan tester
> - chromium.fyi.json: CrWinAsan(dll) tester
> - chromium.fyi.json: CrWinClang tester
> - chromium.fyi.json: CrWinClang(dbg) tester
> - chromium.fyi.json: CrWinClang(shared) tester
> - chromium.fyi.json: CrWinClang64 tester
> - chromium.fyi.json: CrWinClang64(dbg) tester
> - chromium.fyi.json: CrWinClang64(dll) tester
> - chromium.fyi.json: CrWinClangLLD tester
> - chromium.fyi.json: Linux Trusty
> - chromium.fyi.json: Linux Trusty (dbg)
> - chromium.linux.json: Cast Linux
> - chromium.linux.json: Linux Tests
> - chromium.linux.json: Linux Tests (dbg)(1)
> - chromium.linux.json: Linux Tests (dbg)(1)(32)
> - chromium.mac.json: Mac10.10 Tests
> - chromium.mac.json: Mac10.6 Tests
> - chromium.mac.json: Mac10.8 Tests
> - chromium.mac.json: Mac10.9 Tests
> - chromium.mac.json: Mac10.9 Tests (dbg)
> - chromium.memory.fyi.json: Linux ChromeOS MSan Tests
> - chromium.memory.fyi.json: Linux MSan Tests
> - chromium.memory.fyi.json: Linux TSan Tests
> - chromium.memory.json: Linux ASan LSan Tests (1)
> - chromium.memory.json: Linux Chromium OS ASan LSan Tests (1)
> - chromium.memory.json: Mac ASan 64 Tests (1)
> - chromium.webkit.json: Linux ChromiumOS Tests (1)
> - chromium.webkit.json: Linux ChromiumOS Tests (dbg)(1)
> - chromium.win.json: Vista Tests (1)
> - chromium.win.json: Win 7 Tests x64 (1)
> - chromium.win.json: Win7 Tests (1)
> - chromium.win.json: Win7 Tests (dbg)(1)
> - chromium.win.json: XP Tests (1)
>
> Ran:
> ./manage.py --convert ppapi_unittests
>
> BUG=98637
>
> Committed: https://crrev.com/0e660cb50e66dc9d5e794d63b4bd72079acefc2e
> Cr-Commit-Position: refs/heads/master@{#337272}
TBR=raymes@chromium.org,maruel@chromium.org,thakis@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=98637
Review URL: https://codereview.chromium.org/1218743005
Cr-Commit-Position: refs/heads/master@{#337347}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
0 configs already ran on Swarming
46 used to run locally and were converted:
- chromium.chromiumos.json: Linux ChromiumOS Ozone Tests (1)
- chromium.chromiumos.json: Linux ChromiumOS Tests (1)
- chromium.chromiumos.json: Linux ChromiumOS Tests (dbg)(1)
- chromium.fyi.json: ClangToTLinux tester
- chromium.fyi.json: ClangToTLinuxASan tester
- chromium.fyi.json: ClangToTMac tester
- chromium.fyi.json: ClangToTMacASan tester
- chromium.fyi.json: ClangToTWin tester
- chromium.fyi.json: ClangToTWin(dbg) tester
- chromium.fyi.json: ClangToTWin(dll) tester
- chromium.fyi.json: ClangToTWin64 tester
- chromium.fyi.json: ClangToTWin64(dbg) tester
- chromium.fyi.json: ClangToTWin64(dll) tester
- chromium.fyi.json: CrWinAsan tester
- chromium.fyi.json: CrWinAsan(dll) tester
- chromium.fyi.json: CrWinClang tester
- chromium.fyi.json: CrWinClang(dbg) tester
- chromium.fyi.json: CrWinClang(shared) tester
- chromium.fyi.json: CrWinClang64 tester
- chromium.fyi.json: CrWinClang64(dbg) tester
- chromium.fyi.json: CrWinClang64(dll) tester
- chromium.fyi.json: CrWinClangLLD tester
- chromium.fyi.json: Linux Trusty
- chromium.fyi.json: Linux Trusty (dbg)
- chromium.linux.json: Cast Linux
- chromium.linux.json: Linux Tests
- chromium.linux.json: Linux Tests (dbg)(1)
- chromium.linux.json: Linux Tests (dbg)(1)(32)
- chromium.mac.json: Mac10.10 Tests
- chromium.mac.json: Mac10.6 Tests
- chromium.mac.json: Mac10.8 Tests
- chromium.mac.json: Mac10.9 Tests
- chromium.mac.json: Mac10.9 Tests (dbg)
- chromium.memory.fyi.json: Linux ChromeOS MSan Tests
- chromium.memory.fyi.json: Linux MSan Tests
- chromium.memory.fyi.json: Linux TSan Tests
- chromium.memory.json: Linux ASan LSan Tests (1)
- chromium.memory.json: Linux Chromium OS ASan LSan Tests (1)
- chromium.memory.json: Mac ASan 64 Tests (1)
- chromium.webkit.json: Linux ChromiumOS Tests (1)
- chromium.webkit.json: Linux ChromiumOS Tests (dbg)(1)
- chromium.win.json: Vista Tests (1)
- chromium.win.json: Win 7 Tests x64 (1)
- chromium.win.json: Win7 Tests (1)
- chromium.win.json: Win7 Tests (dbg)(1)
- chromium.win.json: XP Tests (1)
Ran:
./manage.py --convert ppapi_unittests
BUG=98637
Review URL: https://codereview.chromium.org/1224453003
Cr-Commit-Position: refs/heads/master@{#337272}
|
|
|
|
|
|
|
|
| |
BUG=478309
Review URL: https://codereview.chromium.org/1140953003
Cr-Commit-Position: refs/heads/master@{#329874}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://codereview.chromium.org/1126133003 changes the behavior of
Blink CSS file support; we need to send the proper MIME type, even in
quirks mode. This CL fixes the tests which broke when that patch
initially landed way back when.
BUG=419383
TBR=bbudge@chromium.org
Review URL: https://codereview.chromium.org/1136493003
Cr-Commit-Position: refs/heads/master@{#329358}
|
|
|
|
|
|
|
|
|
|
|
| |
These browser tests should end the need for constant manual testing.
These have been a long time coming.
BUG=475688
Review URL: https://codereview.chromium.org/1088763002
Cr-Commit-Position: refs/heads/master@{#326867}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Remove obsolete private Pepper interface private/ppb_talk_private.h,
associated Pepper plumbing code, strings, and chrome::PepperTalkHost.
These are no longer needed as support for Pepper GTalk has been
dropped.
BUG=392002
TEST=browser_tests
Review URL: https://codereview.chromium.org/1088183003
Cr-Commit-Position: refs/heads/master@{#325310}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In particular, make it possible to invoke Run() and friends from any thread
even without holding the ProxyLock. See:
https://codereview.chromium.org/869883003/
for more context. Summary: We need to be able to Run the callback from the IO
thread, but we have to never acquire the ProxyLock on the IO thread.
(See bug for still more context).
BUG=439588
Review URL: https://codereview.chromium.org/923263003
Cr-Commit-Position: refs/heads/master@{#323133}
|
|
|
|
|
|
|
|
|
| |
Reland of https://codereview.chromium.org/961323004
TBR=dpranke
Review URL: https://codereview.chromium.org/969173002
Cr-Commit-Position: refs/heads/master@{#319080}
|
|
|
|
|
|
|
|
|
| |
BUG=417589
TEST=run ppapi/examples/video_encode/video_encode.html
Review URL: https://codereview.chromium.org/937643006
Cr-Commit-Position: refs/heads/master@{#318785}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://codereview.chromium.org/961323004/)
Reason for revert:
broke windows GN builds as seen in
http://build.chromium.org/p/chromium.win/builders/Win8%20GN/builds/5206/steps/compile/logs/stdio
Original issue's description:
> Add remoting and PPAPI tests to GN build
>
> Reland of https://codereview.chromium.org/965633002/
>
> TBR=dpranke
>
> Committed: https://crrev.com/66c53eef76f7dff97b1bc76d51740c3a9c07844f
> Cr-Commit-Position: refs/heads/master@{#318756}
TBR=dpranke@chromium.org,brettw@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/968243004
Cr-Commit-Position: refs/heads/master@{#318772}
|
|
|
|
|
|
|
|
|
|
| |
Reland of https://codereview.chromium.org/965633002/
TBR=dpranke
Review URL: https://codereview.chromium.org/961323004
Cr-Commit-Position: refs/heads/master@{#318756}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://codereview.chromium.org/965633002/)
Reason for revert:
http://build.chromium.org/p/chromium.mac/buildstatus?builder=Mac%20GN&number=4498
ERROR at //remoting/host/BUILD.gn:56:7: Item not found
"linux/x_server_clipboard.cc",
^----------------------------
You were trying to remove "linux/x_server_clipboard.cc"
Original issue's description:
> Add remoting and PPAPI tests to GN build
>
> BUG=
>
> Committed: https://crrev.com/d0437210926b14b1b7e06b2b56174fc92ade9c37
> Cr-Commit-Position: refs/heads/master@{#318539}
TBR=kelvinp@chromium.org,dpranke@chromium.org,brettw@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=
Review URL: https://codereview.chromium.org/970443002
Cr-Commit-Position: refs/heads/master@{#318545}
|
|
|
|
|
|
|
|
| |
BUG=
Review URL: https://codereview.chromium.org/965633002
Cr-Commit-Position: refs/heads/master@{#318539}
|
|
|
|
|
|
|
|
|
| |
BUG=455409
TEST=run ./ppapi_unittests --gtest_filter=VideoEncoderResourceTest
Review URL: https://codereview.chromium.org/905023005
Cr-Commit-Position: refs/heads/master@{#317938}
|
|
|
|
|
|
|
|
|
|
|
|
| |
For tools/sort_sources.py to be useful, existing GYP and GN files
should be sorted.
BUG=456014
TEST=everything should build as before
Review URL: https://codereview.chromium.org/930753002
Cr-Commit-Position: refs/heads/master@{#316434}
|
|
|
|
|
|
|
|
| |
This adds the "threading" example which was unreferenced in the GYP build, despite existing and compiling OK.
Review URL: https://codereview.chromium.org/921993002
Cr-Commit-Position: refs/heads/master@{#316379}
|
|
|
|
|
|
|
|
|
|
|
|
| |
This puts BUILD files in the corresponding directories without duplicate names.
Adds a template for ppapi examples and writes the build for one example. I only did one at this point to test the infrastructure without making this patch too large.
NOPRESUBMIT=true
Review URL: https://codereview.chromium.org/921953002
Cr-Commit-Position: refs/heads/master@{#316352}
|
|
|
|
|
|
|
|
|
|
|
|
| |
Also removed a few extra "-Wpedantic" warnings in ppapi_cpp. I don't see a good justification why this should be different than the rest of the project.
Fix GN error in media.
NOPRESUBMIT=true
Review URL: https://codereview.chromium.org/915403003
Cr-Commit-Position: refs/heads/master@{#316289}
|
|
|
|
|
|
|
|
|
|
| |
reason, LoadV8Snapshot() must have been called in PreInitializeSandbox(), so the asserts are still valid.
BUG=421063
Review URL: https://codereview.chromium.org/735283002
Cr-Commit-Position: refs/heads/master@{#305000}
|
|
|
|
|
|
|
|
| |
BUG=421063
Review URL: https://codereview.chromium.org/718453003
Cr-Commit-Position: refs/heads/master@{#304223}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix libxml clang warnings.
Add ppapi_unittest_shared target.
Rename ipc:test_support_ipc to ipc:test_support and use this target when needed (the places that wanted this incorrectly specified only "ipc".
R=hclam@chromium.org
Review URL: https://codereview.chromium.org/418453002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@285027 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=366304
TEST=None
Review URL: https://codereview.chromium.org/314823002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@277513 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Implement the compositor API which allows a plugin to combine different sources of visual data efficiently, such as PPB_ImageData and OpengGL texture.
API Proposal http://goo.gl/V7xcu3
BUG=374383
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=277208
Review URL: https://codereview.chromium.org/298023004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@277422 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This CL seems to cause perf bot failure.
The log said nacl_helper-data size gained exceeds expectation.
http://build.chromium.org/p/chromium/builders/Linux/builds/50560
https://chromeperf.appspot.com/report?masters=Chromium&bots=chromium-rel-linux&tests=sizes%2Fnacl_helper-data&rev=277212&checked=core
> [PPAPI] Compositor API implementation.
>
> Implement the compositor API which allows a plugin to combine different sources of visual data efficiently, such as PPB_ImageData and OpengGL texture.
>
> API Proposal http://goo.gl/V7xcu3
>
> BUG=374383
>
> Review URL: https://codereview.chromium.org/298023004
TBR=penghuang@chromium.org
Review URL: https://codereview.chromium.org/331123003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@277372 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
Implement the compositor API which allows a plugin to combine different sources of visual data efficiently, such as PPB_ImageData and OpengGL texture.
API Proposal http://goo.gl/V7xcu3
BUG=374383
Review URL: https://codereview.chromium.org/298023004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@277208 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
A optionally larger number of buffers makes recording audio in a pnacl module
more reliable when latency is not an issue.
BUG=330851
Review URL: https://codereview.chromium.org/290993005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274511 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adds resource and host, unit test for the resource, and an example plugin.
Implements only the hardware accelerated case. Software fallback will be
in a follow-on CL.
Adds two new PP_Error codes:
PP_ERROR_UNREADABLE_INPUT
PP_ERROR_PLATFORM_FAILED
BUG=281689
R=dmichael@chromium.org, fischman@chromium.org, jar@chromium.org, piman@chromium.org, tsepez@chromium.org
Review URL: https://codereview.chromium.org/270213004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@273920 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Now we introduced create_nonsfi_test_nmf.py. So, by this CL
it starts to be used to generate nmf file for non-SFI ppapi_tests.
Also, this CL removes ppapi_nacl_tests_pnacl_nonsfi.nmf.
BUG=368949
TEST=Ran browser_tests --gtest_filter=*NonSfi* and trybots.
Review URL: https://codereview.chromium.org/302533007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@273127 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Make a 'ppapi_example_video_decode' target to fix the build.
Some chromeos target seems to want to build this. When the
new video decoder CL lands, this will build the rewritten example.
R=andresantoso@chromium.org
TBR=fischman@chromium.org
BUG=281689
Review URL: https://codereview.chromium.org/271733002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@268886 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If this change breaks some bots, please try restarting the
bot before reverting it. http://crrev.com/264460 may not be
effective yet until restarting.
See the bug and http://crrev.com/255129 for the details.
BUG=345554
Review URL: https://codereview.chromium.org/258433005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@268876 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=281689
R=fischman@chromium.org, teravest@chromium.org
Review URL: https://codereview.chromium.org/269283002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@268797 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
This change moves HTTP response header parsing to Chromium, removing the need
for having this logic in ppapi/native_client.
BUG=239656
Review URL: https://codereview.chromium.org/227913008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@263168 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This CL adds simple non-SFI PPAPI testing framework
with enabling one test "Core".
The testee nexe file for non-SFI mode is build by
translating a pexe file.
BUG=358425
TEST=Run trybots, run test locally with target_arch=ia32, and run test with ASAN.
Review URL: https://codereview.chromium.org/212633003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@261357 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
those APIs that needed by it.
BUG=None
TEST=None
Review URL: https://codereview.chromium.org/178953003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@258773 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change is to add a new build option 'use_allocator' which will
replace 'linux_use_tcmalloc' in the future. It doesn't change the
behavior immediately. The migration plan is as follows:
1) (this change)
... Add 'use_allocator' and set its default to "see_use_tcmalloc".
... Change allocator conditions to check use_allocator firstly.
... Use linux_use_tcmalloc if use_allocator=="see_use_tcmalloc".
... NO IMPACT without specifying use_allocator explicitly.
2) Change Blink to accept use_allocator. http://crrev.com/177053003/
3) Change gyp to accept use_allocator. http://crrev.com/178643004/
4) PSA the transition period to chromium-dev@.
5) (after the PSA-ed transition period)
... Make 'use_allocator' to "tcmalloc" or "none" (it depends) by default.
... Remove all linux_use_tcmalloc.
... Assert in gyp_chromium to check if linux_use_tcmalloc is not specified.
At the point of this change (1), linux_use_tcmalloc is still used by default
because 'use_allocator%': "see_use_tcmalloc".
As written in http://crbug.com/345554, linux_use_tcmalloc would
be confusing to have more options about allocators. We plan to:
A) enable gperftools' heap-profiler with non-tcmalloc allocator,
B) add a new memory allocator instead of tcmalloc.
BUG=345554, 339604, 341349
R=agl@chromium.org, brettw@chromium.org, dgarrett@chromium.org, jam@chromium.org, jamesr@chromium.org, joi@chromium.org, miket@chromium.org, nick@chromium.org, rsleevi@chromium.org, scherkus@chromium.org, sergeyu@chromium.org, shess@chromium.org, sievers@chromium.org, sky@chromium.org, vitalybuka@chromium.org, willchan@chromium.org
Review URL: https://codereview.chromium.org/177353002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@255129 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=330851
Review URL: https://codereview.chromium.org/172943003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253467 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
TBR=jamesr@chromium.org
BUG=330851
Review URL: https://codereview.chromium.org/140783004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@249245 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=330851
Review URL: https://codereview.chromium.org/134643002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244686 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adds a unit test for file system resources.
Test Open failure cases.
Test RequestQuota.
BUG=194304
Review URL: https://codereview.chromium.org/113773006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@242888 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This eliminates IPC for FileIO.Write, instead using the plugin's file descriptor.
Performs the file op on the plugin's thread if blocking, otherwise on the file
thread.
FileIOResources know their maximum written offset after they are opened.
They can thus calculate whether a Write or SetLength operation will extend
this max offset. If so, they call FileSystemResource::RequestQuota. This can
return synchronously or asynchronously, and either returns the requested
amount or 0 in case it can't be satisfied.
FileSystemResource will request a quota reservation from the host, queuing
up unsatisfied requests. The quota reservation will be at least 1MB with this
CL. The main point of a quota reservation is to reduce the number of times
we query the quota system.
Both the FileSystemResource and the host maintain a collection of open files
that are subject to quota. These are kept in sync. Maps that take PP_Resource
to resource or host are used to ensure good performance and make it easier
to keep the resource and host collections synced.
SetLength uses the plugin side machinery to request quota. When its request
is granted, it calls over to the host side as before. This is because of OS X
sandbox restrictions.
For trusted plugins, I assume that this plugin / host checking is sufficient. In
particular, SetLength is performed in the browser process without checking
the length against quota restrictions. We're essentially assuming trusted
plugins don't cheat.
For untrusted plugins, this approach isn't sufficient. NaClMessageScanner
audits the FIleSystem and FileIO message traffic to maintain a parallel
accounting of quota reservation and current file sizes. In addition, we wrap
the native file handle in a NaClDescQuota for files that need quota checking.
This NaClDescQuota uses NaClMessageScanner information to determine
whether or not to allow a Write. We must check at the descriptor level since
the untrusted plugin may bypass our proxy code and use the file handle
directly to Write. We must also fail any attempt to call ftruncate directly.
BUG=194304
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=242659
Review URL: https://codereview.chromium.org/100703004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@242691 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This seems to have introduced a static initializer on Mac:
http://build.chromium.org/p/chromium/builders/Mac/builds/24153/steps/sizes/logs/stdio
It identifies one in:
../../components/nacl/loader/nacl_ipc_adapter.cc
/Volumes/data/b/build/slave/Mac/build/src/out/Release/libnacl.a(nacl.nacl_ipc_adapter.o)
> Do PPB_FileIO Write on the plugin side.
>
> This eliminates IPC for FileIO.Write, instead using the plugin's file descriptor.
> Performs the file op on the plugin's thread if blocking, otherwise on the file
> thread.
>
> FileIOResources know their maximum written offset after they are opened.
> They can thus calculate whether a Write or SetLength operation will extend
> this max offset. If so, they call FileSystemResource::RequestQuota. This can
> return synchronously or asynchronously, and either returns the requested
> amount or 0 in case it can't be satisfied.
>
> FileSystemResource will request a quota reservation from the host, queuing
> up unsatisfied requests. The quota reservation will be at least 1MB with this
> CL. The main point of a quota reservation is to reduce the number of times
> we query the quota system.
>
> Both the FileSystemResource and the host maintain a collection of open files
> that are subject to quota. These are kept in sync. Maps that take PP_Resource
> to resource or host are used to ensure good performance and make it easier
> to keep the resource and host collections synced.
>
> SetLength uses the plugin side machinery to request quota. When its request
> is granted, it calls over to the host side as before. This is because of OS X
> sandbox restrictions.
>
> For trusted plugins, I assume that this plugin / host checking is sufficient. In
> particular, SetLength is performed in the browser process without checking
> the length against quota restrictions. We're essentially assuming trusted
> plugins don't cheat.
>
> For untrusted plugins, this approach isn't sufficient. NaClMessageScanner
> audits the FIleSystem and FileIO message traffic to maintain a parallel
> accounting of quota reservation and current file sizes. In addition, we wrap
> the native file handle in a NaClDescQuota for files that need quota checking.
> This NaClDescQuota uses NaClMessageScanner information to determine
> whether or not to allow a Write. We must check at the descriptor level since
> the untrusted plugin may bypass our proxy code and use the file handle
> directly to Write. We must also fail any attempt to call ftruncate directly.
>
> BUG=194304
>
> Review URL: https://codereview.chromium.org/100703004
TBR=bbudge@chromium.org
Review URL: https://codereview.chromium.org/122013002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@242670 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This eliminates IPC for FileIO.Write, instead using the plugin's file descriptor.
Performs the file op on the plugin's thread if blocking, otherwise on the file
thread.
FileIOResources know their maximum written offset after they are opened.
They can thus calculate whether a Write or SetLength operation will extend
this max offset. If so, they call FileSystemResource::RequestQuota. This can
return synchronously or asynchronously, and either returns the requested
amount or 0 in case it can't be satisfied.
FileSystemResource will request a quota reservation from the host, queuing
up unsatisfied requests. The quota reservation will be at least 1MB with this
CL. The main point of a quota reservation is to reduce the number of times
we query the quota system.
Both the FileSystemResource and the host maintain a collection of open files
that are subject to quota. These are kept in sync. Maps that take PP_Resource
to resource or host are used to ensure good performance and make it easier
to keep the resource and host collections synced.
SetLength uses the plugin side machinery to request quota. When its request
is granted, it calls over to the host side as before. This is because of OS X
sandbox restrictions.
For trusted plugins, I assume that this plugin / host checking is sufficient. In
particular, SetLength is performed in the browser process without checking
the length against quota restrictions. We're essentially assuming trusted
plugins don't cheat.
For untrusted plugins, this approach isn't sufficient. NaClMessageScanner
audits the FIleSystem and FileIO message traffic to maintain a parallel
accounting of quota reservation and current file sizes. In addition, we wrap
the native file handle in a NaClDescQuota for files that need quota checking.
This NaClDescQuota uses NaClMessageScanner information to determine
whether or not to allow a Write. We must check at the descriptor level since
the untrusted plugin may bypass our proxy code and use the file handle
directly to Write. We must also fail any attempt to call ftruncate directly.
BUG=194304
Review URL: https://codereview.chromium.org/100703004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@242659 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change completes the wiring, adding a file to list dev channel interfaces,
analogous to what exists for different permissions today. We only need to
introduce interfaces_ppb_public_dev_channel.h since we don't anticipate
dev channel APIs with permissions other than NONE.
BUG=325403
R=dmichael@chromium.org
Review URL: https://codereview.chromium.org/112343005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@241877 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Note that the new code is still behind a runtime flag
(--brave-new-test-launcher), but compiling tests with support for it
will make further testing possible.
BUG=236893, 79359
R=akalin@chromium.org, enne@chromium.org, erikwright@chromium.org, joi@chromium.org, keybuk@chromium.org, sky@chromium.org, thestig@chromium.org, tommi@chromium.org, wtc@chromium.org, xhwang@chromium.org, yzshen@chromium.org
Review URL: https://codereview.chromium.org/23442019
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@221464 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: https://chromiumcodereview.appspot.com/23171010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@217839 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This causes a hang if the plugin passes a blocking callback. We should
figure out why the tests don't exercise this case.
> Do PPB_FileIO Query and Read in the plugin process.
> This changes Open to send a file descriptor to the plugin process on Open.
> The file descriptor is used on the plugin side to implement Query and Read.
> The implementation reuses base::FileUtilProxy to use a file thread on the
> plugin side to call potentially blocking file functions.
>
> TBR=dmichael@chromium.org, jschuh@chromium.org
>
> BUG=194304
> TEST=browser_tests, PPAPITest.FileIO
>
> Review URL: https://codereview.chromium.org/21016004
TBR=bbudge@chromium.org
Review URL: https://codereview.chromium.org/20820003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@214995 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This changes Open to send a file descriptor to the plugin process on Open.
The file descriptor is used on the plugin side to implement Query and Read.
The implementation reuses base::FileUtilProxy to use a file thread on the
plugin side to call potentially blocking file functions.
TBR=dmichael@chromium.org, jschuh@chromium.org
BUG=194304
TEST=browser_tests, PPAPITest.FileIO
Review URL: https://codereview.chromium.org/21016004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@214420 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Failures of PPAPITest.FileIO on Linux Tests (dbg)
> Move PPB_FileIO Query and Read implementation from the renderer to the plugin process.
> This sends the file descriptor to the plugin side and moves some FileIO
> implementation from the renderer to the plugin, using that file descriptor.
>
> BUG=194304
> R=dmichael@chromium.org, sky@chromium.org, teravest@chromium.org
>
> Review URL: https://codereview.chromium.org/18063005
TBR=bbudge@chromium.org
Review URL: https://codereview.chromium.org/20816002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@213976 0039d316-1c4b-4281-b951-d872f2087c98
|