Skip to content

x/build: linux/mipsle (soft-float) builder blocked by CIPD hard-float binary #79198

Description

@AaronGrand

This is a follow-up to #77417

The linux/mipsle builder (linux-mipsle-hooc-ag) is currently blocked due to an incompatibility between the Swarming-provided CIPD client and the target hardware.

Current status

  • Builder hardware: MediaTek MT7621 (MIPS32, soft-float, OpenWrt)
  • Swarming bot:
    • Connects successfully
    • Receives tasks
  • Failure occurs when executing CIPD:
    [Errno 8] Exec format error: '.../cipd_cache/bin/cipd'

Root cause

  • Swarming downloads a hard-float MIPS CIPD binary
  • The target system is soft-float (no FPU)
  • Hard-float binaries cannot execute → immediate failure

Verified on device:

  • Downloaded CIPD binary:
    ELF 32-bit LSB executable, MIPS32 rel2, hard-float
  • System requires:
    GOMIPS=softfloat

Workaround tested

  • Built a local CIPD client:
    `GOOS=linux GOARCH=mipsle GOMIPS=softfloat``

  • This binary works correctly

  • However:

  • Swarming still replaces it with the incompatible CIPD client

Blocking issue

There currently appears to be no supported way to:

  1. Provide a soft-float CIPD client for linux/mipsle, or
  2. Override the CIPD binary used by Swarming tasks

Request

What would be the preferred path forward?

  • Add soft-float CIPD support for linux/mipsle?
  • Allow overriding the CIPD client on builders?
  • Alternative approach?

Notes

The builder itself is otherwise stable and ready:

  • Swarming bot runs reliably
  • Tasks execute correctly up to the CIPD step

However, it is currently kept offline until the CIPD incompatibility is resolved.

Thanks!

CC @dmitshur @prattmic

Metadata

Metadata

Assignees

No one assigned

    Labels

    Buildersx/build issues (builders, bots, dashboards)NeedsInvestigationSomeone must examine and confirm this is a valid issue and not a duplicate of an existing one.

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions