openwrt / openwrt/asu

ath79/nand: profile glinet_gl-ar300m-nand silently overridden to glinet_gl-ar300m-nor during image build

Open
#1,585 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
450
Forks
111
PR merge metrics
No merged PRs in 30d

Description

Description

When requesting a build for target: ath79/nand with profile: glinet_gl-ar300m-nand, the ASU server silently substitutes the profile with glinet_gl-ar300m-nor in the resulting build_cmd, producing a NOR image instead of the requested NAND image. No error or warning is returned to indicate the profile was changed.

Steps to Reproduce
curl -X POST https://sysupgrade.openwrt.org/api/v1/build \
  -H "Content-Type: application/json" \
  -d '{
    "target": "ath79/nand",
    "version": "25.12.0",
    "profile": "glinet_gl-ar300m-nand",
    "packages": ["luci"]
  }'
Expected Behavior

The build should use PROFILE=glinet_gl-ar300m-nand and produce a NAND sysupgrade image.

Actual Behavior

The build_cmd in the response contains:

PROFILE=glinet_gl-ar300m-nor

The resulting image is built for NOR flash, not NAND. Flashing this image on a NAND device would be incorrect and potentially dangerous.

Environment
  • ASU server: sysupgrade.openwrt.org
  • Target: ath79/nand
  • Version: 25.12.0
  • Profile requested: glinet_gl-ar300m-nand
  • Profile used by server: glinet_gl-ar300m-nor
  • Device: GL.iNet GL-AR300M (NAND variant)
Additional Context

The GL-AR300M is a dual-flash device with both a NOR (16MB) and NAND (128MB) variant. The two profiles are distinct and not interchangeable. The NAND profile should be available under the ath79/nand target.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the request against the /api/v1/build endpoint and inspect how the ath79/nand target resolves the requested profile before assembling build_cmd. Trace the profile selection for glinet_gl-ar300m-nand; done means the response uses that NAND profile and produces a NAND image, or clearly reports an invalid substitution.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
api, backend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
65/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.