New issue
Advanced search Search tips

Issue 778316 link

Starred by 1 user

Issue metadata

Status: Verified
Owner:
Closed: Dec 2017
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 3
Type: Bug

Blocked on:
issue 780327
issue 778867



Sign in to add a comment

roll llvm and compiler-rt to version r316199

Project Member Reported by llozano@chromium.org, Oct 25 2017

Issue description

tracking bug for rolling to next version of llvm using "llvm-next" 


 
we need to fix these warnings in libchrome

base/files/memory_mapped_file_posix.cc:55:23: error: comparison 'int64_t' (aka 'long') > 9223372036854775807 is always false [-Werror,-Wtautological-constant-compare]
        aligned_start > std::numeric_limits<off_t>::max() ||
        ~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
base/files/memory_mapped_file_posix.cc:56:45: error: comparison 'uint64_t' (aka 'unsigned long') > 18446744073709551615 is always false [-Werror,-Wtautological-constant-compare]
        static_cast<uint64_t>(aligned_size) >
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
base/files/memory_mapped_file_posix.cc:58:44: error: comparison 'uint64_t' (aka 'unsigned long') > 18446744073709551615 is always false [-Werror,-Wtautological-constant-compare]
        static_cast<uint64_t>(region.size) >
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^

also need to fix this in cryptohome:
cryptohome-0.0.1-r2177: armv7a-cros-linux-gnueabi-clang++ -MMD -MF obj/cryptohome/libcryptohome.mount.o.d -DUSE_TPM2=0 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Iobj/cryptohome/libcryptohome.gen/include -Igen/include -I/build/daisy/tmp/portage/chromeos-base/cryptohome-0.0.1-r2177/work/cryptohome-0.0.1/platform2 -I/build/daisy/tmp/portage/chromeos-base/cryptohome-0.0.1-r2177/work/cryptohome-0.0.1/platform -I/build/daisy/usr/include -Igen -Wall -Wno-psabi -Wunused -Wno-unused-parameter -ggdb3 -fstack-protector-strong -Wformat=2 -fvisibility=internal -Wa,--noexecstack -Werror --sysroot=/build/daisy -Wno-deprecated-register -Wno-c++11-extensions -Wno-unused-local-typedefs -DBASE_VER=395517 -pthread -I/build/daisy/usr/include/base-395517 -I/build/daisy/usr/include/glib-2.0 -I/build/daisy/usr/lib/glib-2.0/include -I/build/daisy/usr/include/nss -I/build/daisy/usr/include/nspr -I/build/daisy/usr/include/dbus-1.0 -I/build/daisy/usr/lib/dbus-1.0/include -fPIE -std=gnu++14 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -O2 -O2 -O2 -pipe -march=armv7-a -mtune=cortex-a15 -mfpu=neon -mfloat-abi=hard -g -fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables -clang-syntax -clang-syntax -fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables  -c ../../../../../../../tmp/portage/chromeos-base/cryptohome-0.0.1-r2177/work/cryptohome-0.0.1/platform2/cryptohome/mount.cc -o obj/cryptohome/libcryptohome.mount.o
cryptohome-0.0.1-r2177: ../../../../../../../tmp/portage/chromeos-base/cryptohome-0.0.1-r2177/work/cryptohome-0.0.1/platform2/cryptohome/mount.cc:1624:35: error: unused variable 'ent_iter' [-Werror,-Wunused-variable]
cryptohome-0.0.1-r2177:   std::vector<FilePath>::iterator ent_iter;
cryptohome-0.0.1-r2177:                                   ^
cryptohome-0.0.1-r2177: 1 error generated.
cryptohome-0.0.1-r2177: 
Project Member

Comment 3 by bugdroid1@chromium.org, Oct 26 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform2/+/a01451755d37bee0a6ae373ea53c6645d05822cc

commit a01451755d37bee0a6ae373ea53c6645d05822cc
Author: Luis A. Lozano <llozano@google.com>
Date: Thu Oct 26 11:17:53 2017

cryptohome: Fixed unused local variable warning.

cryptohome-0.0.1-r2177:
../../../../../../../tmp/portage/chromeos-base/cryptohome-0.0.1-r2177/work/cryptohome-0.0.1/platform2/cryptohome/mount.cc:1624:35:
error: unused variable 'ent_iter' [-Werror,-Wunused-variable]
cryptohome-0.0.1-r2177:   std::vector<FilePath>::iterator ent_iter;

BUG= chromium:778316 
TEST=verified warning is gone

Change-Id: I4e18e8f51c6d1ab481682a6390082207a5960a84
Reviewed-on: https://chromium-review.googlesource.com/738157
Commit-Ready: Luis Lozano <llozano@chromium.org>
Tested-by: Luis Lozano <llozano@chromium.org>
Reviewed-by: Mike Frysinger <vapier@chromium.org>

[modify] https://crrev.com/a01451755d37bee0a6ae373ea53c6645d05822cc/cryptohome/mount.cc

imageloader UniTests is failing on elm https://uberchromegw.corp.google.com/i/chromiumos.tryserver/builders/release/builds/16685
package bisection shows dev-libs/nss is miscompiled.
Summary: roll llvm and compiler-rt to version r316199 (was: roll llmv and compiler-rt to version r316199)
nss-3.30.2/nss-.arm/lib/freebl/Linux2.6_arm_clang-6.0_glibc_PTH_OPT.OBJ/Linux_SINGLE_SHLIB/ecp_256.o is the miscompiled file. Will continue the bisection tomorrow to find the offending llvm CL.
when buiding kernel 4.4 with the new compiler, we get a bunch of errors like the ones below.

Compiler seems to be right?
I will file a separate issue and discuss with kernel team. For now, I am going to disable -Wsection so that I can do more testing. 


chromeos-kernel-4_4-4.4.92-r1177: In file included from ../../../../../tmp/portage/sys-kernel/chromeos-kernel-4_4-4.4.92-r1177/work/chromeos-kernel-4_4-4.4.92/kernel/sched/debug.c:20:
chromeos-kernel-4_4-4.4.92-r1177: ../../../../../tmp/portage/sys-kernel/chromeos-kernel-4_4-4.4.92-r1177/work/chromeos-kernel-4_4-4.4.92/kernel/sched/sched.h:1430:33: error: section attribute is specified on redeclared variable [-Werror,-Wsection]
chromeos-kernel-4_4-4.4.92-r1177: extern const_debug unsigned int sysctl_sched_time_avg;
chromeos-kernel-4_4-4.4.92-r1177:                                 ^
chromeos-kernel-4_4-4.4.92-r1177: ../../../../../tmp/portage/sys-kernel/chromeos-kernel-4_4-4.4.92-r1177/work/chromeos-kernel-4_4-4.4.92/include/linux/sched/sysctl.h:69:21: note: previous declaration is here
chromeos-kernel-4_4-4.4.92-r1177: extern unsigned int sysctl_sched_time_avg;
chromeos-kernel-4_4-4.4.92-r1177:                     ^
chromeos-kernel-4_4-4.4.92-r1177: In file included from ../../../../../tmp/portage/sys-kernel/chromeos-kernel-4_4-4.4.92-r1177/work/chromeos-kernel-4_4-4.4.92/kernel/sched/debug.c:20:
chromeos-kernel-4_4-4.4.92-r1177: ../../../../../tmp/portage/sys-kernel/chromeos-kernel-4_4-4.4.92-r1177/work/chromeos-kernel-4_4-4.4.92/kernel/sched/sched.h:1431:33: error: section attribute is specified on redeclared variable [-Werror,-Wsection]
chromeos-kernel-4_4-4.4.92-r1177: extern const_debug unsigned int sysctl_sched_nr_migrate;
chromeos-kernel-4_4-4.4.92-r1177:                                 ^
chromeos-kernel-4_4-4.4.92-r1177: ../../../../../tmp/portage/sys-kernel/chromeos-kernel-4_4-4.4.92-r1177/work/chromeos-kernel-4_4-4.4.92/include/linux/sched/sysctl.h:68:21: note: previous declaration is here
chromeos-kernel-4_4-4.4.92-r1177: extern unsigned int sysctl_sched_nr_migrate;
chromeos-kernel-4_4-4.4.92-r1177:                     ^
chromeos-kernel-4_4-4.4.92-r1177: In file included from ../../../../../tmp/portage/sys-kernel/chromeos-kernel-4_4-4.4.92-r1177/work/chromeos-kernel-4_4-4.4.92/kernel/sched/debug.c:20:
chromeos-kernel-4_4-4.4.92-r1177: ../../../../../tmp/portage/sys-kernel/chromeos-kernel-4_4-4.4.92-r1177/work/chromeos-kernel-4_4-4.4.92/kernel/sched/sched.h:1432:33: error: section attribute is specified on redeclared variable [-Werror,-Wsection]
chromeos-kernel-4_4-4.4.92-r1177: extern const_debug unsigned int sysctl_sched_migration_cost;

Blockedon: 778867

Comment 8 Deleted

UnitTest fail starts with  CL r313618 - 

commit 081fd494d08e073a9c6bd912554e1e662909f02b
Author:     Roger Ferrer Ibanez <roger.ferreribanez@arm.com>
[ARM] Use ADDCARRY / SUBCARRY

This is a preparatory step for D34515.

This change:

makes nodes ISD::ADDCARRY and ISD::SUBCARRY legal for i32
Opened upstream bug https://bugs.llvm.org/show_bug.cgi?id=35103
Disabling the optimizations in ecp_256.c indeed fix the problem.
Luis, do you want to add this to CL as well? I hope with this patch in place, we can actually start testing llvm-next.

diff -Nuar old/nss-3.30.2/nss-.arm/lib/freebl/ecl/ecp_256.c new/nss-3.30.2/nss-.arm/lib/freebl/ecl/ecp_256.c
--- old/nss-3.30.2/nss-.arm/lib/freebl/ecl/ecp_256.c
+++ new/nss-3.30.2/nss-.arm/lib/freebl/ecl/ecp_256.c
@@ -11,6 +11,9 @@
  * Uses algorithm 2.29 from Hankerson, Menezes, Vanstone. Guide to
  * Elliptic Curve Cryptography. */
 static mp_err
+#ifdef __clang__
+__attribute__((optnone))
+#endif
 ec_GFp_nistp256_mod(const mp_int *a, mp_int *r, const GFMethod *meth)
 {
     mp_err res = MP_OKAY;
latest results after working around problem with Unittest.

nyan_big is fine: https://uberchromegw.corp.google.com/i/chromiumos.tryserver/builders/llvm_next_toolchain/builds/823

swanky with llvm kernel is fine:

https://uberchromegw.corp.google.com/i/chromiumos.tryserver/builders/llvm_next_toolchain/builds/824

elm failed but it looks there are no good machines in the pool.

https://uberchromegw.corp.google.com/i/chromiumos.tryserver/builders/llvm_next_toolchain/builds/825

so, I think this is stable enough to roll a new llvm-next for more testing with the rotating builders.
just for documentation purposes, this is how the unittest failure in imageloader looked like. This was triaged in #9 and #11 by Manoj.

imageloader-0.0.1-r956: /build/nyan_big/tmp/portage/chromeos-base/imageloader-0.0.1-r956/work/imageloader-0.0.1/platform2/common-mk/platform2_test.py --action=pre_test --sysroot=/build/nyan_big -- 
imageloader-0.0.1-r956: ERROR: ld.so: object 'libsandbox.so' from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored.
imageloader-0.0.1-r956: /build/nyan_big/tmp/portage/chromeos-base/imageloader-0.0.1-r956/work/imageloader-0.0.1/platform2/common-mk/platform2_test.py --action=run --sysroot=/build/nyan_big -- /build/nyan_big/tmp/portage/chromeos-base/imageloader-0.0.1-r956/work/build/out/Default/run_tests
imageloader-0.0.1-r956: ERROR: ld.so: object 'libsandbox.so' from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored.
imageloader-0.0.1-r956: chroot: /build/nyan_big
imageloader-0.0.1-r956: cwd: /tmp/portage/chromeos-base/imageloader-0.0.1-r956/work/imageloader-0.0.1/platform/imageloader
imageloader-0.0.1-r956: cmd: {/tmp/portage/chromeos-base/imageloader-0.0.1-r956/work/build/out/Default/run_tests} '/tmp/portage/chromeos-base/imageloader-0.0.1-r956/work/build/out/Default/run_tests'
imageloader-0.0.1-r956: [==========] Running 20 tests from 3 test cases.
imageloader-0.0.1-r956: [----------] Global test environment set-up.
imageloader-0.0.1-r956: [----------] 8 tests from ComponentTest
imageloader-0.0.1-r956: [ RUN      ] ComponentTest.InitComponentAndCheckManifest
imageloader-0.0.1-r956: [1027/020808:ERROR:component.cc(324)] Manifest failed signature verification.
imageloader-0.0.1-r956: ../../../imageloader-0.0.1/platform/imageloader/component_unittest.cc:124: Failure
imageloader-0.0.1-r956: Expected: (nullptr) != (component), actual: 4-byte object <00-00 00-00> vs 4-byte object <00-00 00-00>
imageloader-0.0.1-r956: [  FAILED  ] ComponentTest.InitComponentAndCheckManifest (66 ms)
imageloader-0.0.1-r956: [ RUN      ] ComponentTest.TestCopyAndMountComponentExt4
imageloader-0.0.1-r956: [1027/020808:ERROR:component.cc(324)] Manifest failed signature verification.
imageloader-0.0.1-r956: ../../../imageloader-0.0.1/platform/imageloader/component_unittest.cc:138: Failure
imageloader-0.0.1-r956: Expected: (nullptr) != (component), actual: 4-byte object <00-00 00-00> vs 4-byte object <00-00 00-00>
imageloader-0.0.1-r956: [  FAILED  ] ComponentTest.TestCopyAndMountComponentExt4 (5 ms)
imageloader-0.0.1-r956: [ RUN      ] ComponentTest.TestCopyAndMountComponentSquashfs
imageloader-0.0.1-r956: [1027/020808:ERROR:component.cc(324)] Manifest failed signature verification.
imageloader-0.0.1-r956: ../../../imageloader-0.0.1/platform/imageloader/component_unittest.cc:168: Failure
imageloader-0.0.1-r956: Expected: (nullptr) != (component), actual: 4-byte object <00-00 00-00> vs 4-byte object <00-00 00-00>
imageloader-0.0.1-r956: [  FAILED  ] ComponentTest.TestCopyAndMountComponentSquashfs (4 ms)
imageloader-0.0.1-r956: [ RUN      ] ComponentTest.CheckFilesAfterCopy
imageloader-0.0.1-r956: [1027/020808:ERROR:component.cc(324)] Manifest failed signature verification.
imageloader-0.0.1-r956: ../../../imageloader-0.0.1/platform/imageloader/component_unittest.cc:198: Failure
imageloader-0.0.1-r956: Expected: (nullptr) != (component), actual: 4-byte object <00-00 00-00> vs 4-byte object <00-00 00-00>
imageloader-0.0.1-r956: [  FAILED  ] ComponentTest.CheckFilesAfterCopy (4 ms)
imageloader-0.0.1-r956: [ RUN      ] ComponentTest.IsValidFingerprintFile
imageloader-0.0.1-r956: [       OK ] ComponentTest.IsValidFingerprintFile (1 ms)
imageloader-0.0.1-r956: [ RUN      ] ComponentTest.InitComponentWithBadFiles
imageloader-0.0.1-r956: [1027/020808:ERROR:component.cc(324)] Manifest failed signature verification.
imageloader-0.0.1-r956: ../../../imageloader-0.0.1/platform/imageloader/component_unittest.cc:242: Failure
imageloader-0.0.1-r956: Value of: TestInitComponentWithCorruptFile("bad-component1", "imageloader.json")
imageloader-0.0.1-r956:   Actual: false
imageloader-0.0.1-r956: Expected: true

Project Member

Comment 14 by bugdroid1@chromium.org, Oct 27 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/ca001b0aeca23d3e51e18cd6e88a8a0fa8f6f9c7

commit ca001b0aeca23d3e51e18cd6e88a8a0fa8f6f9c7
Author: Luis A. Lozano <llozano@google.com>
Date: Fri Oct 27 23:14:15 2017

Roll llvm-next to r316199.

minor_version: "gcc:131461602 llvm:r316199"
https://critique.corp.google.com/#review/173104684

BUG= chromium:778316 
TEST=trybots for falco, daisy, elm, nyan_big, swanky

Change-Id: Ic743b56e4202cff845337a94c8d99a1850716849
Reviewed-on: https://chromium-review.googlesource.com/724372
Commit-Ready: Luis Lozano <llozano@chromium.org>
Tested-by: Luis Lozano <llozano@chromium.org>
Reviewed-by: Manoj Gupta <manojgupta@chromium.org>

[rename] https://crrev.com/ca001b0aeca23d3e51e18cd6e88a8a0fa8f6f9c7/sys-devel/llvm/llvm-5.0_pre305632_p20170806-r11.ebuild
[rename] https://crrev.com/ca001b0aeca23d3e51e18cd6e88a8a0fa8f6f9c7/sys-devel/gcc/gcc-4.9.2-r170.ebuild
[delete] https://crrev.com/b485fed094e11f7267d0e76007fa086e96983433/sys-devel/llvm/files/cherry/f405097e96e57344db1430039df71d7c60f43746.patch
[add] https://crrev.com/ca001b0aeca23d3e51e18cd6e88a8a0fa8f6f9c7/sys-devel/llvm/files/cherry/a312801e78a7627965158838eae1fb9a10487af7.patch
[add] https://crrev.com/ca001b0aeca23d3e51e18cd6e88a8a0fa8f6f9c7/sys-devel/llvm/files/cherry/b1bfcf247fd22246ea224ad2df241f25c63ea22e.patch
[rename] https://crrev.com/ca001b0aeca23d3e51e18cd6e88a8a0fa8f6f9c7/sys-libs/compiler-rt/compiler-rt-5.0_pre305632-r8.ebuild
[modify] https://crrev.com/ca001b0aeca23d3e51e18cd6e88a8a0fa8f6f9c7/sys-devel/gcc/files/sysroot_wrapper.hardened.body
[add] https://crrev.com/ca001b0aeca23d3e51e18cd6e88a8a0fa8f6f9c7/sys-devel/llvm/files/llvm-6.0-gnueabihf.patch
[rename] https://crrev.com/ca001b0aeca23d3e51e18cd6e88a8a0fa8f6f9c7/sys-devel/clang/clang-5.0_pre305632_p20170806-r1.ebuild

Project Member

Comment 15 by bugdroid1@chromium.org, Oct 28 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/dd967f55837808a8f54c174950bca8f4389a842d

commit dd967f55837808a8f54c174950bca8f4389a842d
Author: Luis A. Lozano <llozano@google.com>
Date: Sat Oct 28 04:54:34 2017

nss: Workaround for an LLVM optimization problem.

Disable optimizations for ec_GFp_nistp256_mod as a workaround
for a bug in latest LLVM.
This was exposed by unittest in imageloader.
See:  https://bugs.llvm.org/show_bug.cgi?id=35103

BUG= chromium:778316 
TEST=Unit test failure in imageloader is gone.
CQ-DEPEND=CL:724372

Change-Id: I80ce8c0ed76ef7f331a7ae1043ee7c64ced8724d
Reviewed-on: https://chromium-review.googlesource.com/741093
Commit-Ready: Manoj Gupta <manojgupta@chromium.org>
Tested-by: Luis Lozano <llozano@chromium.org>
Reviewed-by: Manoj Gupta <manojgupta@chromium.org>
Reviewed-by: Mike Frysinger <vapier@chromium.org>

[add] https://crrev.com/dd967f55837808a8f54c174950bca8f4389a842d/dev-libs/nss/files/nss-3.30.2-noopt-ecp_256.patch
[modify] https://crrev.com/dd967f55837808a8f54c174950bca8f4389a842d/dev-libs/nss/nss-3.30.2.ebuild
[rename] https://crrev.com/dd967f55837808a8f54c174950bca8f4389a842d/dev-libs/nss/nss-3.30.2-r2.ebuild

Blockedon: 780327
Project Member

Comment 17 by bugdroid1@chromium.org, Nov 1 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/47085abf711c67a13c4b166d780e7c60d4e98dcb

commit 47085abf711c67a13c4b166d780e7c60d4e98dcb
Author: Luis A. Lozano <llozano@google.com>
Date: Wed Nov 01 21:06:29 2017

llvm-next: Workaround some warnings in host compiles.

Need to disable tautological-*-compare warnings until fix
for libchrome is merged.

BUG= chromium:778316 
TEST=none

Change-Id: Ib87a407b3ad17be1fc2cce357521ac798177d5e9
Reviewed-on: https://chromium-review.googlesource.com/747981
Commit-Ready: Luis Lozano <llozano@chromium.org>
Tested-by: Luis Lozano <llozano@chromium.org>
Reviewed-by: Manoj Gupta <manojgupta@chromium.org>
Reviewed-by: Yunlian Jiang <yunlian@chromium.org>

[rename] https://crrev.com/47085abf711c67a13c4b166d780e7c60d4e98dcb/sys-devel/llvm/llvm-5.0_pre305632_p20170806-r13.ebuild
[modify] https://crrev.com/47085abf711c67a13c4b166d780e7c60d4e98dcb/sys-devel/llvm/files/clang_host_wrapper.body

Project Member

Comment 18 by bugdroid1@chromium.org, Nov 1 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/6ca9918161c8920e36207321f53fd6112b6f231c

commit 6ca9918161c8920e36207321f53fd6112b6f231c
Author: Luis A. Lozano <llozano@google.com>
Date: Wed Nov 01 21:06:32 2017

grpc: fix for new unused variable warning.

Fixed an unused variable warning found while testing
latest llvm.
But also found that this package needs updating.
See crbug/780327.

BUG= chromium:778316 
TEST=chromiumos-sdk

Change-Id: I0191bb84be7623ee6020d6dd68c76d1785674c0c
Reviewed-on: https://chromium-review.googlesource.com/748261
Commit-Ready: Luis Lozano <llozano@chromium.org>
Tested-by: Luis Lozano <llozano@chromium.org>
Reviewed-by: Manoj Gupta <manojgupta@chromium.org>

[rename] https://crrev.com/6ca9918161c8920e36207321f53fd6112b6f231c/dev-libs/grpc/grpc-1.3.0-r1.ebuild
[add] https://crrev.com/6ca9918161c8920e36207321f53fd6112b6f231c/dev-libs/grpc/files/0006-grpc-1.3.0-unused-variable.patch

Project Member

Comment 19 by bugdroid1@chromium.org, Nov 1 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/4e4e6027d9b74bf940b19a4451dbe29fa976181f

commit 4e4e6027d9b74bf940b19a4451dbe29fa976181f
Author: Luis Lozano <llozano@chromium.org>
Date: Wed Nov 01 23:47:19 2017

Revert "nss: Workaround for an LLVM optimization problem."

This reverts commit dd967f55837808a8f54c174950bca8f4389a842d.

Reason for revert: Offending change in LLVM has been reverted.

Original change's description:
> nss: Workaround for an LLVM optimization problem.
>
> Disable optimizations for ec_GFp_nistp256_mod as a workaround
> for a bug in latest LLVM.
> This was exposed by unittest in imageloader.
> See:  https://bugs.llvm.org/show_bug.cgi?id=35103
>
> BUG= chromium:778316 
> TEST=Unit test failure in imageloader is gone.
> CQ-DEPEND=CL:724372
>
> Change-Id: I80ce8c0ed76ef7f331a7ae1043ee7c64ced8724d
> Reviewed-on: https://chromium-review.googlesource.com/741093
> Commit-Ready: Manoj Gupta <manojgupta@chromium.org>
> Tested-by: Luis Lozano <llozano@chromium.org>
> Reviewed-by: Manoj Gupta <manojgupta@chromium.org>
> Reviewed-by: Mike Frysinger <vapier@chromium.org>

BUG= chromium:778316 
TEST=None, this is a revert.

Change-Id: I441957210493d139f8f6a3ec9247768735f30997
Reviewed-on: https://chromium-review.googlesource.com/749343
Commit-Ready: Luis Lozano <llozano@chromium.org>
Tested-by: Luis Lozano <llozano@chromium.org>
Reviewed-by: Manoj Gupta <manojgupta@chromium.org>
Reviewed-by: Mike Frysinger <vapier@chromium.org>

[rename] https://crrev.com/4e4e6027d9b74bf940b19a4451dbe29fa976181f/dev-libs/nss/nss-3.30.2-r3.ebuild
[delete] https://crrev.com/91773c6fad5b7473f3444661cac7459b9b426bc4/dev-libs/nss/files/nss-3.30.2-noopt-ecp_256.patch
[modify] https://crrev.com/4e4e6027d9b74bf940b19a4451dbe29fa976181f/dev-libs/nss/nss-3.30.2.ebuild

Project Member

Comment 20 by bugdroid1@chromium.org, Nov 2 2017

Project Member

Comment 21 by bugdroid1@chromium.org, Nov 6 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/e4a76c143a8ed8ecd5f2258199a98e5bb8034559

commit e4a76c143a8ed8ecd5f2258199a98e5bb8034559
Author: Manoj Gupta <manojgupta@google.com>
Date: Mon Nov 06 00:36:00 2017

llvm: Mask llvm-6.0_pre*.

New llvm ebuild is named as llvm-6.0-pre*. Mask it to be
installed in target boards since it is a host package.

BUG= chromium:778316 
TEST=llvm-6.0_pre not installed in amd64-generic.

Change-Id: Id07786c2f025defffae93a7e9e0b3a8fc124f0d2
Reviewed-on: https://chromium-review.googlesource.com/754625
Reviewed-by: Manoj Gupta <manojgupta@chromium.org>
Commit-Queue: Manoj Gupta <manojgupta@chromium.org>
Tested-by: Manoj Gupta <manojgupta@chromium.org>
Trybot-Ready: Manoj Gupta <manojgupta@chromium.org>

[modify] https://crrev.com/e4a76c143a8ed8ecd5f2258199a98e5bb8034559/profiles/targets/chromeos/package.mask

Project Member

Comment 22 by bugdroid1@chromium.org, Nov 6 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/3a55b33fdfee5c30e5d6ff43d8f8134ddd1b99db

commit 3a55b33fdfee5c30e5d6ff43d8f8134ddd1b99db
Author: Luis A. Lozano <llozano@google.com>
Date: Mon Nov 06 02:55:47 2017

LLVM: roll to next version r316199

Roll to tested llvm-next version r316199.

Test matrix: https://docs.google.com/a/google.com/spreadsheets/d/1jeptIvYAzTio0VhFrBreYu9VUO6BoazuvuggYDp_T-Y/edit?usp=sharing

BUG= chromium:778316 
TEST=See test matrix.

Change-Id: I30396af618116440d3bcb26069bc32dfe9120704
Reviewed-on: https://chromium-review.googlesource.com/754131
Reviewed-by: Manoj Gupta <manojgupta@chromium.org>
Trybot-Ready: Manoj Gupta <manojgupta@chromium.org>
Commit-Queue: Manoj Gupta <manojgupta@chromium.org>
Tested-by: Manoj Gupta <manojgupta@chromium.org>

[delete] https://crrev.com/ca41e435cb14f819de09d68d1028c436337a4495/sys-devel/llvm/files/cherry/5773fa6550fa9b33017d8d1e4ebdb96cf5eaf626.patch
[delete] https://crrev.com/ca41e435cb14f819de09d68d1028c436337a4495/sys-devel/llvm/files/cherry/b8c6e47bedeba554a913c71653d6ce778f398155.patch
[delete] https://crrev.com/ca41e435cb14f819de09d68d1028c436337a4495/sys-devel/llvm/files/clang-4.0-gnueabihf.patch
[delete] https://crrev.com/ca41e435cb14f819de09d68d1028c436337a4495/sys-devel/llvm/files/cherry/73c1500cc3b3a4cd39a7c59753a7d0e63887a839.patch
[delete] https://crrev.com/ca41e435cb14f819de09d68d1028c436337a4495/sys-libs/compiler-rt/files/cherry/4854a215fc3c0b10ab57b4b9b5e4cbeb5bf0624a.patch
[rename] https://crrev.com/3a55b33fdfee5c30e5d6ff43d8f8134ddd1b99db/sys-libs/compiler-rt/compiler-rt-6.0_pre316199.ebuild
[rename] https://crrev.com/3a55b33fdfee5c30e5d6ff43d8f8134ddd1b99db/sys-devel/clang/clang-6.0_pre316199_p20171105.ebuild
[delete] https://crrev.com/ca41e435cb14f819de09d68d1028c436337a4495/sys-libs/compiler-rt/files/cherry/1a32c939c5eece22f3ca6cf70bd05a1527bc0970.patch
[delete] https://crrev.com/ca41e435cb14f819de09d68d1028c436337a4495/sys-devel/llvm/files/cherry/f6fecfacea8ecde288b680a68823aaf1d08b5beb.patch
[delete] https://crrev.com/ca41e435cb14f819de09d68d1028c436337a4495/sys-devel/llvm/files/cherry/7313cf88d8717af101e89811a410faf4591f2864.patch
[rename] https://crrev.com/3a55b33fdfee5c30e5d6ff43d8f8134ddd1b99db/sys-devel/llvm/llvm-6.0_pre316199_p20171105.ebuild
[delete] https://crrev.com/ca41e435cb14f819de09d68d1028c436337a4495/sys-devel/llvm/files/cherry/9330fda9a0ef108d03334f20319508e409bb356d.patch
[delete] https://crrev.com/ca41e435cb14f819de09d68d1028c436337a4495/sys-devel/llvm/files/cherry/74dbb6c51a6706c959ed323673a7d1a9269720e0.patch
[delete] https://crrev.com/ca41e435cb14f819de09d68d1028c436337a4495/sys-devel/llvm/files/cherry/37cdc82da7d49a9fe3991eca89f44cd05d86fc55.patch
[rename] https://crrev.com/3a55b33fdfee5c30e5d6ff43d8f8134ddd1b99db/sys-devel/lld/lld-6.0_pre316199.ebuild
[delete] https://crrev.com/ca41e435cb14f819de09d68d1028c436337a4495/sys-devel/llvm/files/cherry/c9c456edbdc7004d08581528219ee59362e59e8e.patch
[delete] https://crrev.com/ca41e435cb14f819de09d68d1028c436337a4495/sys-libs/compiler-rt/files/compiler-rt-disable-abort-cacheflush.patch
[delete] https://crrev.com/ca41e435cb14f819de09d68d1028c436337a4495/sys-devel/llvm/files/cherry/bc62a9f5d4a276a5f023e3ebd957b6915f101a3e.patch

Project Member

Comment 23 by bugdroid1@chromium.org, Nov 9 2017

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

commit bc2056c30e9d7245c3ef90664201eccca41418b7
Author: Will Harris <wfh@chromium.org>
Date: Thu Nov 09 20:06:49 2017

Change size in memory mapped region to size_t

Subsequently, remove some static_casts that are no longer needed.

On Windows, while it is possible to create a file mapping of a file >
32-bits long it is not possible to create the view to the file
mapping, so changing this to size_t should have no loss of functionality.

BUG= 778316 

Change-Id: I81cd2e0808794fdb83fc21c796367369ea2da220
Reviewed-on: https://chromium-review.googlesource.com/755114
Reviewed-by: Mark Mentovai <mark@chromium.org>
Commit-Queue: Will Harris <wfh@chromium.org>
Cr-Commit-Position: refs/heads/master@{#515257}
[modify] https://crrev.com/bc2056c30e9d7245c3ef90664201eccca41418b7/base/debug/activity_tracker.cc
[modify] https://crrev.com/bc2056c30e9d7245c3ef90664201eccca41418b7/base/files/memory_mapped_file.cc
[modify] https://crrev.com/bc2056c30e9d7245c3ef90664201eccca41418b7/base/files/memory_mapped_file.h
[modify] https://crrev.com/bc2056c30e9d7245c3ef90664201eccca41418b7/base/files/memory_mapped_file_posix.cc
[modify] https://crrev.com/bc2056c30e9d7245c3ef90664201eccca41418b7/base/files/memory_mapped_file_win.cc
[modify] https://crrev.com/bc2056c30e9d7245c3ef90664201eccca41418b7/base/metrics/persistent_histogram_allocator.cc
[modify] https://crrev.com/bc2056c30e9d7245c3ef90664201eccca41418b7/chrome/installer/zucchini/mapped_file.cc

Project Member

Comment 24 by bugdroid1@chromium.org, Nov 9 2017

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

commit f399f1d6f065a2ee970e6c95e777beb963f2ae2f
Author: Yuzhu Shen <yzshen@chromium.org>
Date: Thu Nov 09 20:36:05 2017

Revert "Change size in memory mapped region to size_t"

This reverts commit bc2056c30e9d7245c3ef90664201eccca41418b7.

Reason for revert: Causing compilation failure:
https://uberchromegw.corp.google.com/i/chromium.mac/builders/ios-device-xcode-clang/builds/43902

Original change's description:
> Change size in memory mapped region to size_t
> 
> Subsequently, remove some static_casts that are no longer needed.
> 
> On Windows, while it is possible to create a file mapping of a file >
> 32-bits long it is not possible to create the view to the file
> mapping, so changing this to size_t should have no loss of functionality.
> 
> BUG= 778316 
> 
> Change-Id: I81cd2e0808794fdb83fc21c796367369ea2da220
> Reviewed-on: https://chromium-review.googlesource.com/755114
> Reviewed-by: Mark Mentovai <mark@chromium.org>
> Commit-Queue: Will Harris <wfh@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#515257}

TBR=wfh@chromium.org,mark@chromium.org

Change-Id: I9a41a960cb7b3e457af41e330806285f5ab7879f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug:  778316 
Reviewed-on: https://chromium-review.googlesource.com/761597
Reviewed-by: Yuzhu Shen <yzshen@chromium.org>
Commit-Queue: Yuzhu Shen <yzshen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#515273}
[modify] https://crrev.com/f399f1d6f065a2ee970e6c95e777beb963f2ae2f/base/debug/activity_tracker.cc
[modify] https://crrev.com/f399f1d6f065a2ee970e6c95e777beb963f2ae2f/base/files/memory_mapped_file.cc
[modify] https://crrev.com/f399f1d6f065a2ee970e6c95e777beb963f2ae2f/base/files/memory_mapped_file.h
[modify] https://crrev.com/f399f1d6f065a2ee970e6c95e777beb963f2ae2f/base/files/memory_mapped_file_posix.cc
[modify] https://crrev.com/f399f1d6f065a2ee970e6c95e777beb963f2ae2f/base/files/memory_mapped_file_win.cc
[modify] https://crrev.com/f399f1d6f065a2ee970e6c95e777beb963f2ae2f/base/metrics/persistent_histogram_allocator.cc
[modify] https://crrev.com/f399f1d6f065a2ee970e6c95e777beb963f2ae2f/chrome/installer/zucchini/mapped_file.cc

Project Member

Comment 25 by bugdroid1@chromium.org, Nov 10 2017

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

commit d562e819d1a27d947b5f673961e7e6e7897cdaa3
Author: Will Harris <wfh@chromium.org>
Date: Fri Nov 10 06:19:10 2017

Reland "Change size in memory mapped region to size_t"

This is a reland of bc2056c30e9d7245c3ef90664201eccca41418b7
Original change's description:
> Change size in memory mapped region to size_t
> 
> Subsequently, remove some static_casts that are no longer needed.
> 
> On Windows, while it is possible to create a file mapping of a file >
> 32-bits long it is not possible to create the view to the file
> mapping, so changing this to size_t should have no loss of functionality.
> 
> BUG= 778316 
> 
> Change-Id: I81cd2e0808794fdb83fc21c796367369ea2da220
> Reviewed-on: https://chromium-review.googlesource.com/755114
> Reviewed-by: Mark Mentovai <mark@chromium.org>
> Commit-Queue: Will Harris <wfh@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#515257}

Bug:  778316 
Change-Id: I7456feb2e84fc8bf78514d570f868212093500dd
Reviewed-on: https://chromium-review.googlesource.com/761408
Reviewed-by: Mark Mentovai <mark@chromium.org>
Commit-Queue: Will Harris <wfh@chromium.org>
Cr-Commit-Position: refs/heads/master@{#515469}
[modify] https://crrev.com/d562e819d1a27d947b5f673961e7e6e7897cdaa3/base/debug/activity_tracker.cc
[modify] https://crrev.com/d562e819d1a27d947b5f673961e7e6e7897cdaa3/base/files/memory_mapped_file.cc
[modify] https://crrev.com/d562e819d1a27d947b5f673961e7e6e7897cdaa3/base/files/memory_mapped_file.h
[modify] https://crrev.com/d562e819d1a27d947b5f673961e7e6e7897cdaa3/base/files/memory_mapped_file_posix.cc
[modify] https://crrev.com/d562e819d1a27d947b5f673961e7e6e7897cdaa3/base/files/memory_mapped_file_win.cc
[modify] https://crrev.com/d562e819d1a27d947b5f673961e7e6e7897cdaa3/base/metrics/persistent_histogram_allocator.cc
[modify] https://crrev.com/d562e819d1a27d947b5f673961e7e6e7897cdaa3/chrome/installer/zucchini/mapped_file.cc

Project Member

Comment 26 by bugdroid1@chromium.org, Nov 12 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/chromite/+/5fe2694b280fc16981efb2a8b31a75646b7fb699

commit 5fe2694b280fc16981efb2a8b31a75646b7fb699
Author: Manoj Gupta <manojgupta@google.com>
Date: Sun Nov 12 14:40:13 2017

generic_stages: temporarily ignore all target prebuilts.

Clear all binaries to build from scratch after llvm roll.

Revert this CL once it has participated in a green CQ run.
This process is documented at
- https://sites.google.com/a/google.com/chromeos/for-team-members/infrastructure/chromeos-admin/clear_binaries

BUG= chromium:778316 
TEST=UnitTests passed.

Change-Id: I3c569fec7ba455c4d2a285a2a1426de9ba2c9589
Reviewed-on: https://chromium-review.googlesource.com/757475
Commit-Ready: Manoj Gupta <manojgupta@chromium.org>
Tested-by: Manoj Gupta <manojgupta@chromium.org>
Reviewed-by: Manoj Gupta <manojgupta@chromium.org>

[modify] https://crrev.com/5fe2694b280fc16981efb2a8b31a75646b7fb699/cbuildbot/config_dump.json
[modify] https://crrev.com/5fe2694b280fc16981efb2a8b31a75646b7fb699/cbuildbot/stages/build_stages_unittest.py
[modify] https://crrev.com/5fe2694b280fc16981efb2a8b31a75646b7fb699/cbuildbot/stages/generic_stages.py
[modify] https://crrev.com/5fe2694b280fc16981efb2a8b31a75646b7fb699/lib/config_lib.py

Project Member

Comment 27 by bugdroid1@chromium.org, Nov 13 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/chromite/+/1167c59c4f139a2c0b5d6c8a808a933440c5f247

commit 1167c59c4f139a2c0b5d6c8a808a933440c5f247
Author: Manoj Gupta <manojgupta@google.com>
Date: Mon Nov 13 08:27:20 2017

Revert "generic_stages: temporarily ignore all target prebuilts."

This reverts CL:757475 since it has participated in a green CQ run.

     > Clear all binaries to build from scratch after llvm roll.

This process is documented at
- https://sites.google.com/a/google.com/chromeos/for-team-members/infrastructure/chromeos-admin/clear_binaries

BUG= chromium:778316 
TEST=UnitTests passed.

Change-Id: I8c22b890513606a58e9aacd242cb064e219ebe96
Reviewed-on: https://chromium-review.googlesource.com/757536
Commit-Ready: Manoj Gupta <manojgupta@chromium.org>
Tested-by: Manoj Gupta <manojgupta@chromium.org>
Reviewed-by: Manoj Gupta <manojgupta@chromium.org>

[modify] https://crrev.com/1167c59c4f139a2c0b5d6c8a808a933440c5f247/cbuildbot/config_dump.json
[modify] https://crrev.com/1167c59c4f139a2c0b5d6c8a808a933440c5f247/cbuildbot/stages/build_stages_unittest.py
[modify] https://crrev.com/1167c59c4f139a2c0b5d6c8a808a933440c5f247/cbuildbot/stages/generic_stages.py
[modify] https://crrev.com/1167c59c4f139a2c0b5d6c8a808a933440c5f247/lib/config_lib.py

Project Member

Comment 28 by bugdroid1@chromium.org, Nov 13 2017

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

commit 6a4bf41e0952e2b7793ab06940b10ec0e601c28b
Author: Samuel Huang <huangs@chromium.org>
Date: Mon Nov 13 17:01:07 2017

[Zucchini] Add kExeTypeElfX64 to enum ExecutableType.

Zucchini Trunk didn't support kExeTypeElfX64, and we'd like to add
support. To keep enums ExecutableType consecutive, we need to shift
other enums, but this affects patch format. So we isolate the
renumbering to a small CL. Also fix test.

Bug:  778316 
Change-Id: I31d693f325240164e0d66227fbb1254f09aa1548
Reviewed-on: https://chromium-review.googlesource.com/765258
Reviewed-by: agrieve <agrieve@chromium.org>
Commit-Queue: Samuel Huang <huangs@chromium.org>
Cr-Commit-Position: refs/heads/master@{#515968}
[modify] https://crrev.com/6a4bf41e0952e2b7793ab06940b10ec0e601c28b/chrome/installer/zucchini/image_utils.h
[modify] https://crrev.com/6a4bf41e0952e2b7793ab06940b10ec0e601c28b/chrome/installer/zucchini/patch_read_write_unittest.cc

Project Member

Comment 29 by bugdroid1@chromium.org, Nov 15 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/chromite/+/7887ddbd646ff94356130da1d48a882df359263d

commit 7887ddbd646ff94356130da1d48a882df359263d
Author: Caroline Tice <cmtice@google.com>
Date: Wed Nov 15 05:52:40 2017

generic_stages: temporarily ignore all target prebuilts.

The previous attempt to clear all binaries and bulid from scratch,
after the llvm roll, did not work, due to previous code changes in
cbuildbot.  With the additional change in here, this works (tested
with tryjob on bob-paladin).

This is a temporary CL.  Revert this CL once in has participated in
a green CQ run.  This process is documented at:

https://sites.google.com/a/google.com/chromeos/for-team-members/infrastructure/chromeos-admin/clear_binaries

BUG= chromium:778316 
TEST=Tested with bob-paladin (rebuilt packages). Unittests pass.

Change-Id: I1bf76517c889eda9bcc3d89a408f78adc7a4caf5
Reviewed-on: https://chromium-review.googlesource.com/769153
Commit-Ready: Caroline Tice <cmtice@chromium.org>
Tested-by: Caroline Tice <cmtice@chromium.org>
Reviewed-by: Aviv Keshet <akeshet@chromium.org>
Reviewed-by: Don Garrett <dgarrett@chromium.org>

[modify] https://crrev.com/7887ddbd646ff94356130da1d48a882df359263d/cbuildbot/config_dump.json
[modify] https://crrev.com/7887ddbd646ff94356130da1d48a882df359263d/lib/sysroot_lib.py
[modify] https://crrev.com/7887ddbd646ff94356130da1d48a882df359263d/cbuildbot/stages/build_stages_unittest.py
[modify] https://crrev.com/7887ddbd646ff94356130da1d48a882df359263d/cbuildbot/stages/generic_stages.py
[modify] https://crrev.com/7887ddbd646ff94356130da1d48a882df359263d/lib/config_lib.py

Project Member

Comment 30 by bugdroid1@chromium.org, Nov 15 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/chromite/+/e9befdba1ce026cf488d9063ef13d4ded851197b

commit e9befdba1ce026cf488d9063ef13d4ded851197b
Author: Caroline Tice <cmtice@chromium.org>
Date: Wed Nov 15 16:53:04 2017

Revert "generic_stages: temporarily ignore all target prebuilts."

This reverts commit 7887ddbd646ff94356130da1d48a882df359263d.

Reason for revert: There has been a successful CQ run; we can revert the temporary change now.

Original change's description:
> generic_stages: temporarily ignore all target prebuilts.
> 
> The previous attempt to clear all binaries and bulid from scratch,
> after the llvm roll, did not work, due to previous code changes in
> cbuildbot.  With the additional change in here, this works (tested
> with tryjob on bob-paladin).
> 
> This is a temporary CL.  Revert this CL once in has participated in
> a green CQ run.  This process is documented at:
> 
> https://sites.google.com/a/google.com/chromeos/for-team-members/infrastructure/chromeos-admin/clear_binaries
> 
> BUG= chromium:778316 
> TEST=Tested with bob-paladin (rebuilt packages). Unittests pass.
> 
> Change-Id: I1bf76517c889eda9bcc3d89a408f78adc7a4caf5
> Reviewed-on: https://chromium-review.googlesource.com/769153
> Commit-Ready: Caroline Tice <cmtice@chromium.org>
> Tested-by: Caroline Tice <cmtice@chromium.org>
> Reviewed-by: Aviv Keshet <akeshet@chromium.org>
> Reviewed-by: Don Garrett <dgarrett@chromium.org>

Bug:  chromium:778316 
Change-Id: I4005abf0577711a1e9e0564a072d725c89ea540a
Reviewed-on: https://chromium-review.googlesource.com/772038
Reviewed-by: Yunlian Jiang <yunlian@chromium.org>
Commit-Queue: Caroline Tice <cmtice@chromium.org>
Tested-by: Caroline Tice <cmtice@chromium.org>
Trybot-Ready: Caroline Tice <cmtice@chromium.org>

[modify] https://crrev.com/e9befdba1ce026cf488d9063ef13d4ded851197b/cbuildbot/config_dump.json
[modify] https://crrev.com/e9befdba1ce026cf488d9063ef13d4ded851197b/lib/sysroot_lib.py
[modify] https://crrev.com/e9befdba1ce026cf488d9063ef13d4ded851197b/cbuildbot/stages/build_stages_unittest.py
[modify] https://crrev.com/e9befdba1ce026cf488d9063ef13d4ded851197b/cbuildbot/stages/generic_stages.py
[modify] https://crrev.com/e9befdba1ce026cf488d9063ef13d4ded851197b/lib/config_lib.py

Project Member

Comment 31 by bugdroid1@chromium.org, Nov 21 2017

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

commit e9853246a1530c3a60b46430ecd2a0585e42c742
Author: Samuel Huang <huangs@chromium.org>
Date: Tue Nov 21 16:52:12 2017

[Zucchini] Refactor: Dedup Disassembler Make(); simplify BufferRegion.

This CL performs two sets of cleanups, to prepare for Zucchini-match.

(1) Replace duplicate Make() functions in architecture-specific
Disassembler classes with a single template static function:
Disassembler::Make().

(2) Make Element inherit from BufferRegion (and merely add |exe_type|)
so code can be better shared. Details:
- |length| is replaced with |size|.
- Constructor cleanup and order change (impacts man callers).
- Move Element::FitsIn() to BufferRegion; have it used by
  BufferViewBase::covers().

Bug:  778316 
Change-Id: I4dd805f43ca45d6d5e9becda466f89c3d3ccbb3a
Reviewed-on: https://chromium-review.googlesource.com/781180
Commit-Queue: Samuel Huang <huangs@chromium.org>
Reviewed-by: Greg Thompson <grt@chromium.org>
Cr-Commit-Position: refs/heads/master@{#518279}
[modify] https://crrev.com/e9853246a1530c3a60b46430ecd2a0585e42c742/chrome/installer/zucchini/buffer_view.h
[modify] https://crrev.com/e9853246a1530c3a60b46430ecd2a0585e42c742/chrome/installer/zucchini/disassembler.h
[modify] https://crrev.com/e9853246a1530c3a60b46430ecd2a0585e42c742/chrome/installer/zucchini/disassembler_no_op.cc
[modify] https://crrev.com/e9853246a1530c3a60b46430ecd2a0585e42c742/chrome/installer/zucchini/disassembler_no_op.h
[modify] https://crrev.com/e9853246a1530c3a60b46430ecd2a0585e42c742/chrome/installer/zucchini/disassembler_win32.cc
[modify] https://crrev.com/e9853246a1530c3a60b46430ecd2a0585e42c742/chrome/installer/zucchini/disassembler_win32.h
[modify] https://crrev.com/e9853246a1530c3a60b46430ecd2a0585e42c742/chrome/installer/zucchini/element_detection.cc
[modify] https://crrev.com/e9853246a1530c3a60b46430ecd2a0585e42c742/chrome/installer/zucchini/element_detection.h
[modify] https://crrev.com/e9853246a1530c3a60b46430ecd2a0585e42c742/chrome/installer/zucchini/element_detection_unittest.cc
[modify] https://crrev.com/e9853246a1530c3a60b46430ecd2a0585e42c742/chrome/installer/zucchini/image_utils.h
[modify] https://crrev.com/e9853246a1530c3a60b46430ecd2a0585e42c742/chrome/installer/zucchini/patch_read_write_unittest.cc
[modify] https://crrev.com/e9853246a1530c3a60b46430ecd2a0585e42c742/chrome/installer/zucchini/patch_reader.cc
[modify] https://crrev.com/e9853246a1530c3a60b46430ecd2a0585e42c742/chrome/installer/zucchini/patch_utils.h
[modify] https://crrev.com/e9853246a1530c3a60b46430ecd2a0585e42c742/chrome/installer/zucchini/patch_writer.cc

Project Member

Comment 32 by bugdroid1@chromium.org, Dec 4 2017

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

commit 7f1542b75645fb2e269d4aee46b5a41d49442ac8
Author: Samuel Huang <huangs@chromium.org>
Date: Mon Dec 04 15:22:15 2017

[Zucchini] Introduce OutlierDetector.

OutlierDetector is a component of (upcoming) ensemble patching. Its goal
is to reduce the likelyhood of false-positive matches by applying simple
statistical tests on BinaryDataHistogram scores.

Bug:  778316 
Change-Id: I57e9859b73b9fc62ffffe973ca47ac723e64f6fd
Reviewed-on: https://chromium-review.googlesource.com/798899
Reviewed-by: Greg Thompson <grt@chromium.org>
Commit-Queue: Samuel Huang <huangs@chromium.org>
Cr-Commit-Position: refs/heads/master@{#521342}
[modify] https://crrev.com/7f1542b75645fb2e269d4aee46b5a41d49442ac8/chrome/installer/zucchini/binary_data_histogram.cc
[modify] https://crrev.com/7f1542b75645fb2e269d4aee46b5a41d49442ac8/chrome/installer/zucchini/binary_data_histogram.h
[modify] https://crrev.com/7f1542b75645fb2e269d4aee46b5a41d49442ac8/chrome/installer/zucchini/binary_data_histogram_unittest.cc

Status: Verified (was: Assigned)
Closing this as llvm is already rolled to r316199 for a while now.

Sign in to add a comment