New issue
Advanced search Search tips

Issue 812268 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Apr 2018
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 3
Type: Bug

Blocked on:
issue 808075



Sign in to add a comment

Build Cronet native library and test binaries for Windows

Project Member Reported by w...@chromium.org, Feb 14 2018

Issue description

Building Cronet for Windows requires some fixes to code to e.g. correctly initialize FilePath instances from UTF-8 strings, etc.
 

Comment 1 by w...@chromium.org, Feb 14 2018

Blockedon: 808075

Comment 2 by w...@chromium.org, Feb 14 2018

Status: Started (was: Assigned)
Summary: Build Cronet native library and test binaries for Windows (was: Build Cronet native library and test binaries for Fuchsia)
Project Member

Comment 3 by bugdroid1@chromium.org, Mar 27 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/12ce94a12442aa5710c60115f74ee165cc8e9148

commit 12ce94a12442aa5710c60115f74ee165cc8e9148
Author: Wez <wez@chromium.org>
Date: Tue Mar 27 03:42:25 2018

Build the Cronet library, tests and unittests under Windows.

- Fix various call-sites that perform string<->FilePath conversions, to assume UTF8 encoded input,
  since Windows' native strings are UTF16.
- Fix the export header to export symbols under Cronet.
- Fix Cronet_Buffer_InitWithAlloc() to handle >32-bit sized allocations correctly under 32-bit.
- Fix the BufferTest.TestInitWithHugeAllocFails to request an allocation size that cannot be
  satisfied even under systems with over-commit.

Bug:  812268 
Cq-Include-Trybots: master.tryserver.chromium.android:android_cronet_tester;master.tryserver.chromium.mac:ios-simulator-cronet
Change-Id: If18a2c223e3ee18619543484a55d268ec12b5b78
Reviewed-on: https://chromium-review.googlesource.com/972674
Reviewed-by: Misha Efimov <mef@chromium.org>
Reviewed-by: John Budorick <jbudorick@chromium.org>
Commit-Queue: Wez <wez@chromium.org>
Cr-Commit-Position: refs/heads/master@{#545993}
[modify] https://crrev.com/12ce94a12442aa5710c60115f74ee165cc8e9148/BUILD.gn
[modify] https://crrev.com/12ce94a12442aa5710c60115f74ee165cc8e9148/components/cronet/BUILD.gn
[modify] https://crrev.com/12ce94a12442aa5710c60115f74ee165cc8e9148/components/cronet/cronet_prefs_manager.cc
[modify] https://crrev.com/12ce94a12442aa5710c60115f74ee165cc8e9148/components/cronet/cronet_url_request_context.cc
[modify] https://crrev.com/12ce94a12442aa5710c60115f74ee165cc8e9148/components/cronet/host_cache_persistence_manager_unittest.cc
[modify] https://crrev.com/12ce94a12442aa5710c60115f74ee165cc8e9148/components/cronet/native/buffer.cc
[modify] https://crrev.com/12ce94a12442aa5710c60115f74ee165cc8e9148/components/cronet/native/engine.cc
[modify] https://crrev.com/12ce94a12442aa5710c60115f74ee165cc8e9148/components/cronet/native/include/cronet_export.h
[modify] https://crrev.com/12ce94a12442aa5710c60115f74ee165cc8e9148/components/cronet/native/test/buffer_test.cc
[modify] https://crrev.com/12ce94a12442aa5710c60115f74ee165cc8e9148/components/cronet/native/test/engine_test.cc
[modify] https://crrev.com/12ce94a12442aa5710c60115f74ee165cc8e9148/components/cronet/stale_host_resolver.h
[modify] https://crrev.com/12ce94a12442aa5710c60115f74ee165cc8e9148/components/cronet/url_request_context_config.cc

Project Member

Comment 4 by bugdroid1@chromium.org, Apr 4 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c5cf88e63121be2a09876b902aadbc1657118824

commit c5cf88e63121be2a09876b902aadbc1657118824
Author: Misha Efimov <mef@chromium.org>
Date: Wed Apr 04 20:02:33 2018

[Cronet] Make cronet_[unit]tests run on Mac OS X.

Cq-Include-Trybots: master.tryserver.chromium.android:android_cronet_tester;master.tryserver.chromium.mac:ios-simulator-cronet
Change-Id: I10071ce60082dc66a4b63c57fe7ad53f51ccdac3
Bug:  812268 
Reviewed-on: https://chromium-review.googlesource.com/985056
Reviewed-by: Wez <wez@chromium.org>
Commit-Queue: Misha Efimov <mef@chromium.org>
Cr-Commit-Position: refs/heads/master@{#548173}
[modify] https://crrev.com/c5cf88e63121be2a09876b902aadbc1657118824/components/cronet/BUILD.gn
[modify] https://crrev.com/c5cf88e63121be2a09876b902aadbc1657118824/components/cronet/cronet_global_state_stubs.cc
[modify] https://crrev.com/c5cf88e63121be2a09876b902aadbc1657118824/components/cronet/stale_host_resolver_unittest.cc

Project Member

Comment 5 by bugdroid1@chromium.org, Apr 6 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8fa7ecedfa0a5de4a27d93979d330b91e531b00c

commit 8fa7ecedfa0a5de4a27d93979d330b91e531b00c
Author: Wez <wez@chromium.org>
Date: Fri Apr 06 04:52:24 2018

Enable Cronet tests on desktop platforms.

- Only initialize global state (e.g. AtExitManager) in non-Debug builds, so that our component-
  build Debug bots can run cronet_tests.
- Fix memory leaks in a number of unit-tests.
- Disable some StaleHostResolver tests under ASAN, since they have leaks
  that need resolving.

Bug:  812268 ,  816705 ,  829097 
Cq-Include-Trybots: master.tryserver.chromium.android:android_cronet_tester;master.tryserver.chromium.mac:ios-simulator-cronet
Change-Id: I5084dd578682b2a8c128487c62de12e437e646f3
Reviewed-on: https://chromium-review.googlesource.com/981787
Commit-Queue: Wez <wez@chromium.org>
Reviewed-by: John Budorick <jbudorick@chromium.org>
Reviewed-by: Misha Efimov <mef@chromium.org>
Cr-Commit-Position: refs/heads/master@{#548672}
[modify] https://crrev.com/8fa7ecedfa0a5de4a27d93979d330b91e531b00c/components/cronet/cronet_global_state_stubs.cc
[modify] https://crrev.com/8fa7ecedfa0a5de4a27d93979d330b91e531b00c/components/cronet/native/runnables_unittest.cc
[modify] https://crrev.com/8fa7ecedfa0a5de4a27d93979d330b91e531b00c/components/cronet/native/test/buffer_test.cc
[modify] https://crrev.com/8fa7ecedfa0a5de4a27d93979d330b91e531b00c/components/cronet/native/test/executors_test.cc
[modify] https://crrev.com/8fa7ecedfa0a5de4a27d93979d330b91e531b00c/components/cronet/native/test/url_request_test.cc
[modify] https://crrev.com/8fa7ecedfa0a5de4a27d93979d330b91e531b00c/components/cronet/native/url_request.cc
[modify] https://crrev.com/8fa7ecedfa0a5de4a27d93979d330b91e531b00c/components/cronet/stale_host_resolver.cc
[modify] https://crrev.com/8fa7ecedfa0a5de4a27d93979d330b91e531b00c/components/cronet/stale_host_resolver_unittest.cc
[modify] https://crrev.com/8fa7ecedfa0a5de4a27d93979d330b91e531b00c/testing/buildbot/chromium.clang.json
[modify] https://crrev.com/8fa7ecedfa0a5de4a27d93979d330b91e531b00c/testing/buildbot/chromium.fyi.json
[modify] https://crrev.com/8fa7ecedfa0a5de4a27d93979d330b91e531b00c/testing/buildbot/chromium.linux.json
[modify] https://crrev.com/8fa7ecedfa0a5de4a27d93979d330b91e531b00c/testing/buildbot/chromium.mac.json
[modify] https://crrev.com/8fa7ecedfa0a5de4a27d93979d330b91e531b00c/testing/buildbot/chromium.memory.json
[modify] https://crrev.com/8fa7ecedfa0a5de4a27d93979d330b91e531b00c/testing/buildbot/chromium.win.json
[modify] https://crrev.com/8fa7ecedfa0a5de4a27d93979d330b91e531b00c/testing/buildbot/test_suites.pyl

Comment 6 by w...@chromium.org, Apr 6 2018

Status: Fixed (was: Started)
Project Member

Comment 7 by bugdroid1@chromium.org, Apr 6 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c9d03f9ef7d636af0719b8c0cadfe46856e28c70

commit c9d03f9ef7d636af0719b8c0cadfe46856e28c70
Author: Stephen McGruer <smcgruer@chromium.org>
Date: Fri Apr 06 14:27:42 2018

Revert "Enable Cronet tests on desktop platforms."

This reverts commit 8fa7ecedfa0a5de4a27d93979d330b91e531b00c.

Reason for revert: HistogramManager.HistogramBucketFields crashes consistently on Win7 Tests (dbg):

https://test-results.appspot.com/dashboards/flakiness_dashboard.html#testType=cronet_unittests&tests=HistogramManager.HistogramBucketFields

First failing run:

https://ci.chromium.org/p/chromium/builders/luci.chromium.ci/Win7%20Tests%20%28dbg%29%281%29/68309

Original change's description:
> Enable Cronet tests on desktop platforms.
> 
> - Only initialize global state (e.g. AtExitManager) in non-Debug builds, so that our component-
>   build Debug bots can run cronet_tests.
> - Fix memory leaks in a number of unit-tests.
> - Disable some StaleHostResolver tests under ASAN, since they have leaks
>   that need resolving.
> 
> Bug:  812268 ,  816705 ,  829097 
> Cq-Include-Trybots: master.tryserver.chromium.android:android_cronet_tester;master.tryserver.chromium.mac:ios-simulator-cronet
> Change-Id: I5084dd578682b2a8c128487c62de12e437e646f3
> Reviewed-on: https://chromium-review.googlesource.com/981787
> Commit-Queue: Wez <wez@chromium.org>
> Reviewed-by: John Budorick <jbudorick@chromium.org>
> Reviewed-by: Misha Efimov <mef@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#548672}

TBR=wez@chromium.org,mef@chromium.org,jbudorick@chromium.org

Change-Id: Ic30729594ae2b1264702c7bb77c971d55e5e9ae9
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug:  812268 ,  816705 ,  829097 
Cq-Include-Trybots: master.tryserver.chromium.android:android_cronet_tester;master.tryserver.chromium.mac:ios-simulator-cronet
Reviewed-on: https://chromium-review.googlesource.com/999334
Reviewed-by: Stephen McGruer <smcgruer@chromium.org>
Commit-Queue: Stephen McGruer <smcgruer@chromium.org>
Cr-Commit-Position: refs/heads/master@{#548771}
[modify] https://crrev.com/c9d03f9ef7d636af0719b8c0cadfe46856e28c70/components/cronet/cronet_global_state_stubs.cc
[modify] https://crrev.com/c9d03f9ef7d636af0719b8c0cadfe46856e28c70/components/cronet/native/runnables_unittest.cc
[modify] https://crrev.com/c9d03f9ef7d636af0719b8c0cadfe46856e28c70/components/cronet/native/test/buffer_test.cc
[modify] https://crrev.com/c9d03f9ef7d636af0719b8c0cadfe46856e28c70/components/cronet/native/test/executors_test.cc
[modify] https://crrev.com/c9d03f9ef7d636af0719b8c0cadfe46856e28c70/components/cronet/native/test/url_request_test.cc
[modify] https://crrev.com/c9d03f9ef7d636af0719b8c0cadfe46856e28c70/components/cronet/native/url_request.cc
[modify] https://crrev.com/c9d03f9ef7d636af0719b8c0cadfe46856e28c70/components/cronet/stale_host_resolver.cc
[modify] https://crrev.com/c9d03f9ef7d636af0719b8c0cadfe46856e28c70/components/cronet/stale_host_resolver_unittest.cc
[modify] https://crrev.com/c9d03f9ef7d636af0719b8c0cadfe46856e28c70/testing/buildbot/chromium.clang.json
[modify] https://crrev.com/c9d03f9ef7d636af0719b8c0cadfe46856e28c70/testing/buildbot/chromium.fyi.json
[modify] https://crrev.com/c9d03f9ef7d636af0719b8c0cadfe46856e28c70/testing/buildbot/chromium.linux.json
[modify] https://crrev.com/c9d03f9ef7d636af0719b8c0cadfe46856e28c70/testing/buildbot/chromium.mac.json
[modify] https://crrev.com/c9d03f9ef7d636af0719b8c0cadfe46856e28c70/testing/buildbot/chromium.memory.json
[modify] https://crrev.com/c9d03f9ef7d636af0719b8c0cadfe46856e28c70/testing/buildbot/chromium.win.json
[modify] https://crrev.com/c9d03f9ef7d636af0719b8c0cadfe46856e28c70/testing/buildbot/test_suites.pyl

Comment 8 by w...@chromium.org, Apr 6 2018

Status: Started (was: Fixed)
Project Member

Comment 9 by bugdroid1@chromium.org, Apr 6 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/406630a0bd675a39ca5abdc9f768f77c1b945231

commit 406630a0bd675a39ca5abdc9f768f77c1b945231
Author: Misha Efimov <mef@google.com>
Date: Fri Apr 06 17:40:33 2018

[Cronet] Fix HistogramManager.HistogramBucketFields crashes on Win7 Tests

Bug:  812268 
Cq-Include-Trybots: master.tryserver.chromium.android:android_cronet_tester;master.tryserver.chromium.mac:ios-simulator-cronet
Change-Id: I15a0d9f4e3a0c16d9a63e82ebb10943e082e1835
Reviewed-on: https://chromium-review.googlesource.com/999331
Reviewed-by: Wez <wez@chromium.org>
Commit-Queue: Wez <wez@chromium.org>
Cr-Commit-Position: refs/heads/master@{#548845}
[modify] https://crrev.com/406630a0bd675a39ca5abdc9f768f77c1b945231/components/cronet/histogram_manager.cc

Project Member

Comment 10 by bugdroid1@chromium.org, Apr 6 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/37176bc20f476b852a6139d1fa3d1fda76791709

commit 37176bc20f476b852a6139d1fa3d1fda76791709
Author: Wez <wez@chromium.org>
Date: Fri Apr 06 20:07:44 2018

Reland "Enable Cronet tests on desktop platforms."

This is a reland of 8fa7ecedfa0a5de4a27d93979d330b91e531b00c, which revealed several issues:
- Histogram recording did not cope correctly with an empty metrics proto.
- Several call-sites triggered MSan failures (e.g. due to read of uninitialized data).

Original change's description:
> Enable Cronet tests on desktop platforms.
>
> - Only initialize global state (e.g. AtExitManager) in non-Debug builds, so that our component-
>   build Debug bots can run cronet_tests.
> - Fix memory leaks in a number of unit-tests.
> - Disable some StaleHostResolver tests under ASAN, since they have leaks
>   that need resolving.
>
> Bug:  812268 ,  816705 ,  829097 
> Cq-Include-Trybots: master.tryserver.chromium.android:android_cronet_tester;master.tryserver.chromium.mac:ios-simulator-cronet
> Change-Id: I5084dd578682b2a8c128487c62de12e437e646f3
> Reviewed-on: https://chromium-review.googlesource.com/981787
> Commit-Queue: Wez <wez@chromium.org>
> Reviewed-by: John Budorick <jbudorick@chromium.org>
> Reviewed-by: Misha Efimov <mef@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#548672}

Bug:  812268 ,  816705 ,  829097 ,  786559 
Change-Id: Ia4027c994d475c48673c8e961f5d96255e703a15
Cq-Include-Trybots: master.tryserver.chromium.android:android_cronet_tester;master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.linux:linux_chromium_msan_rel_ng;master.tryserver.chromium.linux:linux_chromium_asan_rel_ng
Reviewed-on: https://chromium-review.googlesource.com/999932
Reviewed-by: Wez <wez@chromium.org>
Reviewed-by: Misha Efimov <mef@chromium.org>
Reviewed-by: John Budorick <jbudorick@chromium.org>
Commit-Queue: Wez <wez@chromium.org>
Cr-Commit-Position: refs/heads/master@{#548914}
[modify] https://crrev.com/37176bc20f476b852a6139d1fa3d1fda76791709/components/cronet/cronet_global_state_stubs.cc
[modify] https://crrev.com/37176bc20f476b852a6139d1fa3d1fda76791709/components/cronet/native/runnables_unittest.cc
[modify] https://crrev.com/37176bc20f476b852a6139d1fa3d1fda76791709/components/cronet/native/test/buffer_test.cc
[modify] https://crrev.com/37176bc20f476b852a6139d1fa3d1fda76791709/components/cronet/native/test/executors_test.cc
[modify] https://crrev.com/37176bc20f476b852a6139d1fa3d1fda76791709/components/cronet/native/test/url_request_test.cc
[modify] https://crrev.com/37176bc20f476b852a6139d1fa3d1fda76791709/components/cronet/native/url_request.cc
[modify] https://crrev.com/37176bc20f476b852a6139d1fa3d1fda76791709/components/cronet/stale_host_resolver.cc
[modify] https://crrev.com/37176bc20f476b852a6139d1fa3d1fda76791709/components/cronet/stale_host_resolver_unittest.cc
[modify] https://crrev.com/37176bc20f476b852a6139d1fa3d1fda76791709/testing/buildbot/chromium.clang.json
[modify] https://crrev.com/37176bc20f476b852a6139d1fa3d1fda76791709/testing/buildbot/chromium.fyi.json
[modify] https://crrev.com/37176bc20f476b852a6139d1fa3d1fda76791709/testing/buildbot/chromium.linux.json
[modify] https://crrev.com/37176bc20f476b852a6139d1fa3d1fda76791709/testing/buildbot/chromium.mac.json
[modify] https://crrev.com/37176bc20f476b852a6139d1fa3d1fda76791709/testing/buildbot/chromium.memory.json
[modify] https://crrev.com/37176bc20f476b852a6139d1fa3d1fda76791709/testing/buildbot/chromium.win.json
[modify] https://crrev.com/37176bc20f476b852a6139d1fa3d1fda76791709/testing/buildbot/test_suites.pyl

Comment 11 by w...@chromium.org, Apr 6 2018

Status: Fixed (was: Started)
*crosses fingers that it sticks this time*

Sign in to add a comment