Date: Wed, 18 Sep 2019 08:04:07 -0700 From: Enji Cooper <yaneurabeya@gmail.com> To: Kyle Evans <kevans@freebsd.org> Cc: src-committers <src-committers@freebsd.org>, svn-src-all <svn-src-all@freebsd.org>, svn-src-head <svn-src-head@freebsd.org> Subject: Re: svn commit: r352465 - head/share/mk Message-ID: <E262FF1E-5F82-44B5-9534-0DEA8F29B563@gmail.com> In-Reply-To: <CACNAnaHCO5mTpPFpODTAYwAR1cPo0F29%2BDWxiF0vLTEZDz3yDA@mail.gmail.com> References: <201909180158.x8I1wuZu011258@repo.freebsd.org> <0FBC9A62-AE3B-4F27-AABC-06FF45F415F1@gmail.com> <CACNAnaG23b92BjmAMD_Pn1PW4gcYEne6vdaJ9SuOxHU1hbmyvg@mail.gmail.com> <CDB9D8B3-4100-4C52-B414-D6C60FE49846@gmail.com> <81382CF5-A928-48EF-93A9-BBBBA174F4BD@gmail.com> <CACNAnaHCO5mTpPFpODTAYwAR1cPo0F29%2BDWxiF0vLTEZDz3yDA@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
> On Sep 18, 2019, at 07:58, Kyle Evans <kevans@freebsd.org> wrote: >=20 >> On Wed, Sep 18, 2019 at 9:46 AM Enji Cooper <yaneurabeya@gmail.com> wrote= : >>=20 >>=20 >>> On Sep 18, 2019, at 07:33, Enji Cooper <yaneurabeya@gmail.com> wrote: >>>=20 >>>=20 >>>>> On Sep 18, 2019, at 05:40, Kyle Evans <kevans@freebsd.org> wrote: >>>>>=20 >>>>> On Wed, Sep 18, 2019 at 7:34 AM Enji Cooper <yaneurabeya@gmail.com> wr= ote: >>>>>=20 >>>>>=20 >>>>>> On Sep 17, 2019, at 18:58, Kyle Evans <kevans@freebsd.org> wrote: >>>>>>=20 >>>>>> Author: kevans >>>>>> Date: Wed Sep 18 01:58:56 2019 >>>>>> New Revision: 352465 >>>>>> URL: https://svnweb.freebsd.org/changeset/base/352465 >>>>>>=20 >>>>>> Log: >>>>>> googletest: default-disable on all of MIPS for now >>>>>>=20 >>>>>> Parts of the fusefs tests trigger a bug in current versions of llvm: I= R >>>>>> representation of some routine for the MIPS targets is a function wit= h a >>>>>> large number of arguments. This then leads the compiler on an hour+ l= ong >>>>>> goose chase, which is OK if you build the current tree but less-so if= you're >>>>>> trying external toolchain or doing a universe build involving mips wh= en it >>>>>> eventually gets switched over to LLVM. >>>>>>=20 >>>>>> Better, accurate details can be found in LLVM PR43263. >>>>>=20 >>>>> Uhhhhh... why not do this in tests/sys/... instead? >>>>=20 >>>> Because there's still value in being able to easily enable these for >>>> building/running the complete set of tests through standard build >>>> infrastructure, but it's not worth adding a knob specifically for the >>>> fusefs tests. I also prefer the communication of it being an >>>> off-by-default option and easily deduced from src.conf(5) that this >>>> part of the build is default-disabled on mips/mips. >>>=20 >>> Let me rephrase things a bit: is googlemock broken for all of mips, or i= s it just the tests? If the latter, the tests should be blacklisted for mips= with a justification. If the former, I agree your method of dealing with th= e situation is ok, but more investigation needs to be done to see whether or= not the port (in general) is broken and mark it broken if need be. >>=20 >> It looks like the latter case, based on the PR, and it=E2=80=99s a build p= erformance issue... Is this impacting CI pipelines? >>=20 >=20 > It is the latter, and I do not want to *blacklist* them because as far > as I can tell, the tests aren't necessarily broken. I want to > workaround them for default by now. >=20 >>> The problem with src.opts.mk=E2=80=99s per-architecture options, is that= it can be very heavy handed enabling/disabling features. I=E2=80=99m not su= re that everything in there warrants disabling at that level. >>=20 >> My investigation suggests that the course of action was overly heavy hand= ed. While I=E2=80=99m not asking for a revert, it would be really nice if wh= ole features weren=E2=80=99t disabled, unless there=E2=80=99s an issue with t= he feature. >>=20 >=20 > We do not have a lighter method for dealing with this that I can tell, > because as I said above: I do not want to blacklist them or completely > kill them off. I still want the option to build and test them, but as > I aim to switch mips over to llvm I do not want to subject CI and the > rest of the world to an extra 1.5+ hour build time for this during > tinderbox runs. >=20 > Given that it's mips, so already tier-high, and I'm one of few people > that care about it (and I only care about it for the time being), I > intend to leave it as-is since it's still a default in the rest of the > world. Ok, valid straw man argument: in this particular case, should llvm / c++ sup= port be disabled instead, since it=E2=80=99s the real underlying issue? I=E2= =80=99m guessing (non-ancient) g++ doesn=E2=80=99t have this issue. Again, disabling a framework because of a single issue in the tests doesn=E2= =80=99t make sense. Unless you have proof that the build times for all of go= ogletest/googlemock with llvm is an issue, this seems like the wrong remedia= tion to perform. -Enji PS A heads up to asomers and myself would have been nice. I don=E2=80=99t li= ke post-commit nitpicking, since the issue could have been discussed/reviewe= d before commit.=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E262FF1E-5F82-44B5-9534-0DEA8F29B563>