Fix/stale embedded artifacts - #96
Merged
Merged
Conversation
Three rules along the chain that ends up inside dmboot.elf declared their
inputs as targets or as a directory rather than as the files they
actually consume, so none of them re-ran when dmf-get fetched a different
set of modules:
- config_fs.dmffs depended on the DMBOOT_CONFIG_DIR directory. dmf-get
drops each module's service=/rules= files into subdirectories that
already exist, which leaves that directory's own mtime untouched.
- modules.dmp and __modules_dmp.o depended on the download_modules and
prepare_modules_dmp targets. A target dependency orders the work but
never marks the output stale.
Each one fails silently: the build succeeds and the firmware is flashed
with whatever was embedded last time. Adding dhcpc to a board's flash.dmd
produced, in turn, a config filesystem with no dhcp@.ini unit, then a ROM
package with no dhcpc module ("module not found: dhcpc"), then an ELF
still linking a modules.dmp object from two builds earlier.
Key them off the files instead - the download marker dmf-get touches, and
modules.dmp itself.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
dhcpc brings dmdhcp with it as a module dependency, and dhcp.rules starts one dhcp@<iface> instance per interface dmnetif registers, alongside the networkd@<iface> RX pump it needs to receive the replies. Note that nothing brings the interface up: eth0 is DOWN after boot, so the lease only starts progressing after an explicit "ifconfig eth0 up". Whose job that is has not been settled yet. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
44a0664 raises configTIMER_TASK_STACK_DEPTH above configMINIMAL_STACK_SIZE, which is what dmdhcp's retransmission and renewal timers need: they transmit from a dmosi_timer_t callback, and 128 words was not enough to reach the driver without overflowing the shared timer daemon task. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.