Skip to content

[BUG] unknown architecture #28

@t-h2o

Description

@t-h2o

Describe the bug

CoreSMD ignores machine booting with HTTP boot instead of UEFI target.

To Reproduce

Steps to reproduce the behavior:

  1. Set HTTP boot as Current One-Time Boot option
  2. Power on the machine
  3. Read coresmd logs

This error message wills appear:

no iPXE bootloader available for unknown architecture: 16 (EFI x86-64 boot from HTTP)

Expected behavior

The user could use HTTP boot, and coreSMD should know how to handle this.

Additional context

From ipxe.go

The error message comes from here

default:
    l.Errorf("no iPXE bootloader available for unknown architecture: %d (%s)", carch, carch.String())
    return resp, false

From archtype.go

EFI_X86_64_HTTP Arch = 16

If EFI_X86_64 and EFI_X86_64_HTTP aren't different, we can add to case switch in ipxe.go:

case iana.EFI_X86_64, iana.EFI_X86_64_HTTP:
    // iPXE 64-bit x86 bootloader
    resp.Options.Update(dhcpv4.OptBootFileName("ipxe-x86_64.efi"))
    return resp, true

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions