Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Don't upload unstable builds. #301

Closed
oliverchang opened this issue Jan 20, 2017 · 10 comments
Closed

Don't upload unstable builds. #301

oliverchang opened this issue Jan 20, 2017 · 10 comments
Assignees
Labels

Comments

@oliverchang
Copy link
Collaborator

oliverchang commented Jan 20, 2017

We shouldn't upload builds if it's detected to be unstable.

@inferno-chromium
Copy link
Collaborator

inferno-chromium commented Jan 20, 2017

If we do this, we will avoid fires like https://bugs.chromium.org/p/oss-fuzz/issues/list?can=1&q=%22Attempting+free%22&colspec=ID+Type+Component+Status+Proj+Reported+Owner+Summary&cells=ids. On internal clusterfuzz, we had this notion of bad build. But for libfuzzer it didn't work, so either we rely on jenkins to not upload such build (and they are bad anyway) or need to add some bad build detection clusterfuzz side.

@inferno-chromium
Copy link
Collaborator

If we enable this now, we will stop uploading builds for libreoffice, gnutls. Or basically any project which has a ton of fuzzers and atleast one fuzzer is crashing (commonly with like leaks, etc).

Maybe we should mark unstable if all of the fuzzers are broken and only then don't upload. Thoughts. @kcc ?

@kcc
Copy link
Contributor

kcc commented Jan 20, 2017

Can we do this per-target, not per project?

@inferno-chromium
Copy link
Collaborator

@kcc - we create one build archive for the whole project, so either we build all targets or none.

@mikea
Copy link
Contributor

mikea commented Jan 20, 2017

Couple thoughts:

  • in the lld case builds were stable (i.e. fuzzers didn't crash on jenkins). It wouldn't have helped.

  • we specifically upload unstable fuzzers so that CF files and verifies bugs.

@inferno-chromium
Copy link
Collaborator

This is heavily needed see also #232 (comment).

@inferno-chromium inferno-chromium assigned oliverchang and unassigned mikea Apr 4, 2017
@inferno-chromium
Copy link
Collaborator

We need to think more on this. Some day we can break all project with a bad llvm change.

@oliverchang
Copy link
Collaborator Author

oliverchang commented Apr 4, 2017

This (using fuzzer crashes to determine llvm breakage) might be hard. The last time this broke (lld change), I think we only saw this for certain fuzzers that hit the required code paths.

The right place to find out bad llvm changes might be when we build base-images. Maybe we should run libFuzzer tests there (assuming they're comprehensive enough to catch issues in llvm).

@inferno-chromium
Copy link
Collaborator

Right, if we can run basic llvm tests on base-images builder, that should be good enough.

@oliverchang
Copy link
Collaborator Author

Closing in favour of #526

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants