Skip to content

Conversation

@bhcopeland
Copy link
Member

Add 4-level priority system for LAVA job queue ordering:

  • highest (90): manual submissions for bisection/debugging
  • high (75): critical trees (mainline, stable, stable-rc)
  • medium (50): important trees (next, stable-rt, kselftest)
  • low (25): other trees (default)

Human submissions (submitter != SERVICE_PIPELINE) get highest priority by default, but can optionally specify priority via node['data']['priority'] using string ('high'/'medium'/'low') or numeric values.

Pipeline submissions use tree_priority from build configs.

Add SERVICE_PIPELINE class constant to replace hardcoded string.

Priorities are scaled to each lab's configured range before submission to accommodate different LAVA lab configurations.

Copy link
Member

@broonie broonie left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The commit log mentions the allocation of priorities to the trees but the changes don't actually do that, they look up the priorities from the config. That's good and sensible but it'd probably be good to have the actual config update here as an end to end example of things working and to help with testing on staging.

@bhcopeland
Copy link
Member Author

The commit log mentions the allocation of priorities to the trees but the changes don't actually do that, they look up the priorities from the config. That's good and sensible but it'd probably be good to have the actual config update here as an end to end example of things working and to help with testing on staging.

Thanks, Broonie, for the feedback. The patch is also linked to another PR: kernelci/kernelci-pipeline#1407, should have linked it in this PR. This includes the config changes. I just triggered a staging run to see how it behaves. Let me know if I am missing anything or if priorities need adjusting.

@broonie
Copy link
Member

broonie commented Jan 14, 2026

Ah, didn't see that other PR - I checked for already merged stuff but didn't think to check pending PRs.

Add 4-level priority system for LAVA job queue ordering:
- highest (80): manual submissions for bisection/debugging
- high (60): critical trees (mainline, stable, stable-rc)
- medium (40): important trees (next, stable-rt, kselftest)
- low (20): other trees (default)

Human submissions (submitter != SERVICE_PIPELINE) get highest
priority by default, but can optionally specify priority via
node['data']['priority'] using string ('high'/'medium'/'low')
or numeric values (clamped to 0-100).

Pipeline submissions use tree_priority from build configs.

Add SERVICE_PIPELINE class constant to replace hardcoded string.
Add priority field to BuildConfig class for tree priority support.

Priorities are scaled to each lab's configured range before
submission to accommodate different LAVA lab configurations.

Signed-off-by: Ben Copeland <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants