public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Laszlo Ersek" <lersek@redhat.com>
To: Joey Vagedes <joeyvagedes@microsoft.com>,
	"devel@edk2.groups.io" <devel@edk2.groups.io>,
	"kraxel@redhat.com" <kraxel@redhat.com>
Cc: "Ni, Ray" <ray.ni@intel.com>,
	Rahul Kumar <rahul1.kumar@intel.com>,
	Oliver Steffen <osteffen@redhat.com>,
	"Kinney, Michael D" <michael.d.kinney@intel.com>,
	Sean Brogan <sean.brogan@microsoft.com>
Subject: Re: [edk2-devel] [PATCH v3 0/6] UefiCpuPkg/MpInitLib: Add support for multiple MP_HAND_OFF HOBs
Date: Mon, 26 Feb 2024 17:01:11 +0100	[thread overview]
Message-ID: <f56ee3a5-ecca-22f3-044e-7e9df84a6256@redhat.com> (raw)
In-Reply-To: <BY1PR21MB3943F6FB53343590E2A29004BF5A2@BY1PR21MB3943.namprd21.prod.outlook.com>

Hi Joey,
On 2/26/24 16:41, Joey Vagedes wrote:
> Hi Lazlo,
> 
> I just looked at the pipelines - Looks like everything is fine, there is just currently a backup of runners of jobs in the runners. It is common for jobs that end in CODE_COVERAGE to appear frozen in queued status, but this is expected as this job not queued until all others have finished, which means it gets put at the end of the list of pipelines to execute.
> 
> Taking a look at all the runners (https://dev.azure.com/tianocore/edk2-ci/_settings/buildqueue?_a=concurrentJobs [Click "Microsoft Hosted", "View in-progress jobs"]), I don't see any runners that are frozen, which is why it appears it's just a backup.
> 
> I'll continue to monitor.

thanks -- meanwhile I've also found the blockage, just from a different
perspective.

I've known for a while that it is not ideal to have multiple PRs open at
the same time with the "push" label set. They will either compete for
resources (slow), or one will block the other ("queued" state); however,
the main annoyance is that once the first PR gets merged, the HEAD of
the master branch will move for all the other PRs, and then those PRs
will fail to merge even if their CIs run to completion. So in such
cases, the maintainer needs to notice the problem in the first place
(possibly after having waited for 30+ minutes), then perform a manual
rebase (using the github web UI or a local rebase + force push), and
then pray that their next attempt will get to the front of the queue.

It would be much better if:

- *either* the "preempted" PRs rebased themselves automatically to the
new master HEAD, and restarted the CI + merge train,

- *or*, if at least one PR with "push" were in progress at the time of
the maintainer creating a new PR with "push", the CI run wouldn't even
*start* -- instead, the maintainer would *immediately* get information
about being blocked (and about the inevitable need to rebase later, once
that "other" -- earlier-filed -- PR completes).

Now, I've been trying to implement strategy#2 myself, by checking the
"open PRs" view (with an eye towards the "push" label among those PRs)
just before submitting a PR myself. I did that this time as well, but
didn't see any concurrent push-PR. That's why I was confused -- first I
didn't understand what blocked my CI tasks, and then I didn't understand
what had preempted (= de-synced) my PR. When I fetched locally afresh, I
found two new commits, but didn't understand where those had come from,
given that I couldn't see any push-PR concurrently to mine.

*However*, searching my edk2-devel folder for the subjects of those
suddenly appearing new commits, I figured out the problem: PR
<https://github.com/tianocore/edk2/pull/5187> was created in *December*
last year, but Liming set the "push" label on it only ~2 hours ago. In
other words, PR#5187 was the one to hold up and preempt mine. So, why
did I not see it in the "open PRs" view? (Because, as I wrote above, if
I had seen it, I wouldn't have submitted mine in the first place -- I'd
have known it would be useless, due to the master branch moving forward
anyway!)

Well the reason I didn't see PR#5187 (donning the "push" label at that)
was that PR#5187 had been *old as heck*, and so it simply didn't make
the first page of the "open PRs" listing! I didn't expect two months old
PRs to be merged.

So, my lesson from this is: it's not the plain "open PRs" view that I
need to check, when implementing approach #2 myself. Instead, I have to
explicitly search for open PRs with the "push" label:

https://github.com/tianocore/edk2/labels/push

Thanks!
Laszlo



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#115973): https://edk2.groups.io/g/devel/message/115973
Mute This Topic: https://groups.io/mt/104510905/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



  reply	other threads:[~2024-02-26 16:01 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-02-22 16:01 [edk2-devel] [PATCH v3 0/6] UefiCpuPkg/MpInitLib: Add support for multiple MP_HAND_OFF HOBs Gerd Hoffmann
2024-02-22 16:01 ` [edk2-devel] [PATCH v3 1/6] UefiCpuPkg/MpInitLib: Add support for multiple HOBs to GetMpHandOffHob Gerd Hoffmann
2024-02-23  2:35   ` Ni, Ray
2024-02-26 13:42     ` Laszlo Ersek
2024-02-22 16:01 ` [edk2-devel] [PATCH v3 2/6] UefiCpuPkg/MpInitLib: Add support for multiple HOBs to GetBspNumber() Gerd Hoffmann
2024-02-22 16:01 ` [edk2-devel] [PATCH v3 3/6] UefiCpuPkg/MpInitLib: Add support for multiple HOBs to SwitchApContext() Gerd Hoffmann
2024-02-22 16:01 ` [edk2-devel] [PATCH v3 4/6] UefiCpuPkg/MpInitLib: Add support for multiple HOBs to MpInitLibInitialize Gerd Hoffmann
2024-02-26 13:51   ` Laszlo Ersek
2024-02-22 16:01 ` [edk2-devel] [PATCH v3 5/6] UefiCpuPkg/MpInitLib: Add support for multiple HOBs to SaveCpuMpData() Gerd Hoffmann
2024-02-23  2:16   ` Ni, Ray
2024-02-26 13:55     ` Laszlo Ersek
2024-02-26 13:55   ` Laszlo Ersek
2024-02-22 16:01 ` [edk2-devel] [PATCH v3 6/6] UefiCpuPkg/MpInitLib: return early in GetBspNumber() Gerd Hoffmann
2024-02-23  2:33   ` Ni, Ray
2024-02-26 13:59     ` Laszlo Ersek
2024-02-26 14:01   ` Laszlo Ersek
2024-02-26 15:08 ` [edk2-devel] [PATCH v3 0/6] UefiCpuPkg/MpInitLib: Add support for multiple MP_HAND_OFF HOBs Laszlo Ersek
2024-02-26 15:41   ` Joey Vagedes via groups.io
2024-02-26 16:01     ` Laszlo Ersek [this message]
2024-02-26 16:02     ` Laszlo Ersek
2024-02-26 15:19 ` Laszlo Ersek
2024-02-26 22:17   ` Laszlo Ersek
2024-02-27  6:28   ` Ni, Ray
2024-02-27 12:11     ` Laszlo Ersek

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-list 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=f56ee3a5-ecca-22f3-044e-7e9df84a6256@redhat.com \
    --to=devel@edk2.groups.io \
    /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