public inbox for gdb@sourceware.org
 help / color / mirror / Atom feed
From: Luis Machado <luis.machado@linaro.org>
To: Simon Marchi <simark@simark.ca>,
	"gdb@sourceware.org" <gdb@sourceware.org>
Subject: Re: Regressions getting more common
Date: Thu, 15 Oct 2020 09:55:21 -0300	[thread overview]
Message-ID: <5218c203-aa6d-6d00-f8e7-18420fa3d55b@linaro.org> (raw)
In-Reply-To: <d3e5bce3-42a0-71b3-b22a-c0f698dfd0e4@simark.ca>

Hi,

On 10/14/20 11:41 AM, Simon Marchi wrote:
> On 2020-10-13 1:05 p.m., Luis Machado via Gdb wrote:
>> Hi,
>>
>> I don't know about other non-x86 architectures, but over the past year I've been noticing more and more regressions being introduced, unnoticed, for ARM/AArch64. This is not good and causes a lot of pain if you have to keep tracking things manually, like we do now.
>>
>> The buildbots worked great for this very purpose, but Sergio has moved on to other duties (thanks for all the work!) and can't maintain it anymore. The builders are still there though, sitting mostly idle.
>> We have a beefy ARM/AArch64 builder, which I can maintain for others to use.
>>
>> We can do better than to declare things OK after a single round of tests under x86, which has been the trend unfortunately.
>>
>> The subject of better CI has come up multiple times on IRC, with sad memories of the gerrit experiment's demise. Now we're left with review by e-mail and no broad testing.
>>
>> I think we need to discuss better validation pre-commit and possible CI solutions for GDB. It is pretty easy to exercise x86, but it doesn't sound fair to other architectures to have to keep cleaning up after things that have only been validated on that architecture.
>>
>> It would be great to establish a roadmap so we can get GDB's testing to today's standards, and maybe revisit the use of more modern patch review tools while at it.
>>
>> What do you think?
> 
> I agree with all of this.
> 
> It all comes down to:
> 
> - human resources: a system like that is not fire and forget, there's
>    always something to look into to make sure it runs smoothly
> - hardware resources: it takes a lot of CPU time, that takes some
>    dedicated machines

Indeed. There will most definitely be some maintenance burden. At least 
from ARM/AArch64's side, I can offer to keep the builders in working 
condition and reasonably updated.

I have the say I'm not terribly skilled with the buildbot 
infrastructure, so I may not be able to help much there. I can learn 
though. So far I've only dealt with Jenkins/Gerrit.

> 
> I think it would be good to reboot the buildbot, but start by focusing
> on what delivers the best "bang for the buck".  I remember workers
> lagging a lot behind, meaning we would get notifications of breakage
> quite a lot after a commit was pushed.  I think it would be good to not
> make the workers build all commits on master.  Either do one build a
> day, or have them constantly build the current master (as a background /
> low priority task).  If there's a regression, then there's a window of
> commits that might be responsible for it.  But in any case, I would see
> having a stable post-commit CI as the first step.

That sounds reasonable to me. That is already a good improvement.

> 
> Then, we can look at having try jobs work again.  I never really liked
> submitting try jobs through the buildbot command line tool, I always
> found there was to little feedback (did my upload work? what jobs did I
> initiate?).  I would receive test results by email and would have a ahrd
> time figuring out which result was for which patch.

I think it lacked more verbosity, or better ways to follow the status of 
that particular build. Like, "here, take this key and use it to monitor 
this particular build request".

> 
> One idea would be to re-use the now abandonned Gerrit instance for this.
> Those who have use Gerrit will probably agree that it integrates quite
> well with CI.  After pushing your patch for review, you can ask the CI
> to test a given patch (often by setting a label on it).  The CI posts a
> comment on the patch with a link to the build, so you can follow it if
> you want.  Once it has ran, the CI posts comments on the patch to say
> that version N of the patch has this result, again with a link to the
> build.

That resembles the workflow I experimented with Jenkins/Gerrit. I quite 
like it and it kept things pretty organized.

But, like I said, I wouldn't know how to configure this properly. But 
I'll ask around at Linaro to see if we can spare someone that can help.

> 
> I would be happy to help take over maintenance of the buildbot master
> from Sergio, but I wouldn't want to be alone in this.

I'm willing to help here. I just need to get more familiar with some 
admin steps so I can get things unstuck when needed.

  parent reply	other threads:[~2020-10-15 12:55 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-13 17:05 Luis Machado
2020-10-14  1:13 ` Matt Rice
2020-10-14 14:46   ` Simon Marchi
2020-10-14 15:49     ` Matt Rice
2020-10-14 14:41 ` Simon Marchi
2020-10-14 15:50   ` Rainer Orth
2020-10-14 19:03   ` Sergio Durigan Junior
2020-10-15 12:55   ` Luis Machado [this message]
2020-10-16  0:29     ` Simon Marchi
2020-10-14 15:14 ` Kamil Rytarowski

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5218c203-aa6d-6d00-f8e7-18420fa3d55b@linaro.org \
    --to=luis.machado@linaro.org \
    --cc=gdb@sourceware.org \
    --cc=simark@simark.ca \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).