tftp returns 0 bytes file when dtb request resulting in boot failure

Bug #2067793 reported by Shantur Rathore
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
MAAS
Fix Committed
High
Anton Troyanov
3.5
Fix Committed
High
Anton Troyanov

Bug Description

MAAS TFTP server is returning 0 byte successful response for non-existent files.

I am using MAAS for my RockPro64 cluster and u-boot fails to boot over network as when grubaa64.efi is loaded it requests for /dtb/rockchip/rk3399-rockpro64.dtb and in response a 0 byte successful response is received.
This is breaking working setups and no machines can be deployed anymore.

Maybe the change https://github.com/canonical/maas/commit/915882cfd7786a68d10a5cf461a29d7690912b80 needs to be to return 0 byte success for '*.lst' files requested by grub and rest all should be error as expected if the files aren't present.

Related branches

Revision history for this message
Shantur Rathore (rathore4u) wrote :

Forgot to mention it is in MAAS 3.5

Changed in maas:
milestone: none → 3.6.0
importance: Undecided → High
status: New → Triaged
Revision history for this message
Anton Troyanov (troyanov) wrote (last edit ):

Hi Shantur,

Thanks for the bug report.

May I ask you to try the following patch?
https://code.launchpad.net/~troyanov/maas/+git/maas/+merge/466767

If you are using snap, you can apply it using the following approach:
$ cd /tmp/
$ cp /snap/maas/current/lib/python3.10/site-packages/provisioningserver/rackdservices/tftp.py .
$ # apply patch
$ sudo mount -o bind,ro /tmp/tftp.py /snap/maas/current/lib/python3.10/site-packages/provisioningserver/rackdservices/tftp.py
$ sudo snap restart maas

Revision history for this message
Shantur Rathore (rathore4u) wrote :

Hi Anton,

Thanks for the patch,
I can confirm it works as expected and I am able to deploy machines now.

Changed in maas:
status: Triaged → In Progress
assignee: nobody → Anton Troyanov (troyanov)
Changed in maas:
status: In Progress → Fix Committed
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.