Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

modules: switch to openwrt-23.05 #2920

Merged
merged 14 commits into from
Aug 22, 2023
Merged

Conversation

herbetom
Copy link
Contributor

just a test for now

@github-actions github-actions bot added 3. topic: hardware Topic: Hardware Support 3. topic: package Topic: Gluon Packages labels Jun 19, 2023
@github-actions github-actions bot added 3. topic: docs Topic: Documentation and removed 3. topic: package Topic: Gluon Packages labels Jun 20, 2023
Copy link
Member

@blocktrron blocktrron left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The devices removed also require to be removed from docs.

targets/mediatek-filogic Outdated Show resolved Hide resolved
targets/targets.mk Outdated Show resolved Hide resolved
targets/ath79-generic Outdated Show resolved Hide resolved
@herbetom herbetom force-pushed the next-23.05 branch 5 times, most recently from b43fc5b to cbbee77 Compare June 28, 2023 23:31
@github-actions github-actions bot added the 3. topic: package Topic: Gluon Packages label Jul 3, 2023
@herbetom
Copy link
Contributor Author

herbetom commented Jul 3, 2023

I've gone over the patches which had been dropped until now. I've reapplied those which haven't been upstreamed since.

While doing so i've noticed that within our 0004-ramips-mt7621-make-DSA-images-swconfig-upgradable.patch patch the $(Device/dsa-migration) part in define Device/netgear_sercomm_nand got moved from that definition to the common define Device/nand:
openwrt/openwrt@b09a838#diff-5ac2666a9f7c325aa6d42d94872a91ebe7d8af73e2f708dc0f8564b0f3f88cd8L1688
openwrt/openwrt@b09a838#diff-5ac2666a9f7c325aa6d42d94872a91ebe7d8af73e2f708dc0f8564b0f3f88cd8R151-R152

Not sure how to handle this since this affects now more devices. But maybe this is no problem? idk

Also someone needs to rebase the kernel-bridge-Implement-MLD-Querier-wake-up-calls-Android-bug-workaround patch if we want to keep that. Probably @T-X?

@Djfe
Copy link
Contributor

Djfe commented Jul 3, 2023

if this one
#2916
gets added soon, then we need to disable it in openwrt-23 until this issues get's fixed:
openwrt/openwrt#12882
flash is write protected bug

@blocktrron
Copy link
Member

@herbetom The DSA swconfig compat version patch can be dropped, we intended to carry it only for two releases which will conclude with the upcoming 2023.1.x branch.

@herbetom
Copy link
Contributor Author

herbetom commented Jul 4, 2023

Okay, that's good. This also simplifies bumping later on. I've dropped ramips-mt7621-make-DSA-images-swconfig-upgradable.patch and lantiq-xrx200-make-DSA-images-swconfig-upgradable.patch.

@Djfe
Copy link
Contributor

Djfe commented Jul 4, 2023

but we need an ipq40xx-generic-make-DSA-images-swconfig-upgradable.patch now, right? (maybe also for the mikrotik subtarget)

@herbetom
Copy link
Contributor Author

herbetom commented Jul 5, 2023

@Djfe We would only need to do that if out intent was to allow direct updates from earlier versions then v2022.1 to the 23.05 based gluon (probably v2023.2).
With Gluon v2022.1 we started calling the sysupgrade command with the --ignore-minor-compat-version parameter:

Therefore it's not required to patch the DEVICE_COMPAT_VERSION in target/linux/ipq40xx/image/Makefile because that was only required to enable direct updates from versions without that flag to versions where the minor version would have changed.

Hoewer we probably should look into wheter we have to override some interface assignments.

@Djfe
Copy link
Contributor

Djfe commented Jul 5, 2023

I forgot how recent this switch was, ty

@T-X
Copy link
Contributor

T-X commented Jul 10, 2023

@herbetom

Also someone needs to rebase the kernel-bridge-Implement-MLD-Querier-wake-up-calls-Android-bug-workaround patch if we want to keep that. Probably @T-X?

I don't want to keep it, I'd love to get rid of it :-). But as long as Android is incapable of fixing their sh*t, I feel like I have to... Will look into updating it, thanks for the ping.

@T-X
Copy link
Contributor

T-X commented Jul 11, 2023

Here's a rebase of "kernel-bridge-Implement-MLD-Querier-wake-up-calls-Android-bug-workaround" onto this next-23.05 branch: T-X@03c36d4

Relatively straight-forward, some variable passing changes were needed (esp. "br" => "brmctx->br" and "port" => "pmctx->port" in the Linux bridge code) .

So far only compile-time tested. I (or someone else) still need(s) to runtime test it.

@mweinelt
Copy link
Contributor

2023-07-11T04:01:08.2299995Z 802.1d Ethernet Bridging (BRIDGE) [Y/n/m/?] y
2023-07-11T04:01:08.2300368Z   IGMP/MLD snooping (BRIDGE_IGMP_SNOOPING) [Y/n/?] y
2023-07-11T04:01:08.2301096Z     MLD Querier wake-up calls (BRIDGE_IGMP_SNOOPING_WAKEUPCALLS) [N/y/?] (NEW) make[8]: *** [scripts/kconfig/Makefile:77: syncconfig] Error 1
2023-07-11T04:01:08.2301859Z make[7]: *** [Makefile:628: syncconfig] Error 2
2023-07-11T04:01:08.2304150Z make[6]: *** [Makefile:748: include/config/auto.conf.cmd] Error 2
2023-07-11T04:01:08.2304896Z make[6]: Leaving directory '/home/runner/work/gluon/gluon/openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/linux-ipq40xx_mikrotik/linux-5.15.119'
2023-07-11T04:01:08.2306051Z make[5]: *** [Makefile:24: /home/runner/work/gluon/gluon/openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/linux-ipq40xx_mikrotik/linux-5.15.119/.modules] Error 2
2023-07-11T04:01:08.2306728Z make[5]: Leaving directory '/home/runner/work/gluon/gluon/openwrt/target/linux/ipq40xx'
2023-07-11T04:01:08.2307152Z make[4]: *** [Makefile:11: compile] Error 2
2023-07-11T04:01:08.2307644Z make[4]: Leaving directory '/home/runner/work/gluon/gluon/openwrt/target/linux'
2023-07-11T04:01:08.2308241Z time: target/linux/compile#23.86#7.19#27.88
2023-07-11T04:01:08.2310375Z     ERROR: target/linux failed to build.
2023-07-11T04:01:08.2310884Z make[3]: *** [target/Makefile:30: target/linux/compile] Error 1

@T-X
Copy link
Contributor

T-X commented Jul 15, 2023

@herbetom @mweinelt should be fixed in T-X@205d92e now.

Changelog v2: added "CONFIG_BRIDGE_IGMP_SNOOPING_WAKEUPCALLS=y" to target/linux/generic/config-5.15.

Also runtime tested now.

@Djfe
Copy link
Contributor

Djfe commented Aug 19, 2023

I just found out that wifi is can be quite broken in rc2
(for some Mediatek devices atleast, like the Asus tuf AX4200)
atleast wifi 5ghz isn't working (no channel selection in luci and it crashes on starting, also selecting encryption like wpa2 crashed it too)

rc1 worked fine for the random that I recommended the Asus tuf ax4200 to.

i'm fairly certain most bugs were fixed in master by now but might not have been backported. all in all it could make sense to wait for rc3

what I haven't checked: 23-snapshot (which this is based on)
I just wanted to warn that there were a few Regressions lately.

EDIT:
this one in particular was probably related to an update of mt7986-wo-firmware

but there were also regressions related to mt76 and hostapd in master lately, parts of those landed in the release branch but not all of them are important to gluon (like issues with false 160MHz support).

overall I changed my mind: I actually feel fine if you merge this. it allows us to figure out what needs fixing upstream.

@Djfe
Copy link
Contributor

Djfe commented Aug 20, 2023

I edited my last post. I'm fine with this being merged.

I need to confirm this still, but as a heads up:
a test build of this branch failed for two targets:

  • lantiq-xrx200
  • ramips-7620

in both cases target/linux failed to build

blocktrron and others added 6 commits August 21, 2023 23:22
These boards do not support DSA in OpenWrt and thus lack working
ethernet. Disable them for now.

Co-authored-by: Tom Herbers <[email protected]>
OpenWrt dropped the nand string from filenames in the ipq40xx target [1].

Therefore it's no longer neccesary to work arround it in Gluon.

[1] openwrt/openwrt@d9f7c75
Currently the build fails for the D-Link DIR-825 B1. THis is due to the
factory image being size-constrained. The sysupgrade image is not
affected, as OpenWrt now uses a concatenated firmware partition.

To newly install such a device, please use the latest OpenWrt 22.03
factory image and install a Gluon sysupgrade.

Signed-off-by: David Bauer <[email protected]>
@blocktrron blocktrron merged commit 1b6db9b into freifunk-gluon:master Aug 22, 2023
36 checks passed
@herbetom herbetom deleted the next-23.05 branch August 22, 2023 10:41
@rotanid
Copy link
Member

rotanid commented Aug 28, 2023

I've dropped the ramips-add-MT7621-WiFi-devpath-migration patch. It's not planed that, whats probably going to become Gluon v2023.2, can be upgraded from anything earlier then Gluon v2022.1 / openwrt 22.03.

@herbetom when did we decide to break upgrade compatibility more often and earlier than in the past?
it was changed with v2022.1, v2023.1 (already discussed the problem with this on IRC) and now it should be done again?

@herbetom
Copy link
Contributor Author

@rotanid I've currently got no reference for it but we've said, when they were added, that we would keep those DSA / DEVICE_COMPAT_VERSION patches for approximately two major versions (v2022.1.x and v2023.1.x qualifies as that).

Especially the MT7621 patch was always a hassle to rebase. And perfoming a manual sysupgrade on those devices (with a patched firmware) results in a DEVICE_COMPAT_VERSION missmatch. All in all not ideal.

@blocktrron
Copy link
Member

@rotanid As @herbetom outlined, this is due to the ramips-compat hacks which break basically every update. We have to do this a second time for ipq40xx though. Still i don't think the time fixing two of those is worthwhile.

@rotanid
Copy link
Member

rotanid commented Aug 28, 2023

my main concern is not that we want to change upgrade compatibility with v2023.2 , but that we did with v2023.1
this way, 2023.1 is NOT the drop-in replacement for 2022.1 it is sometimes called.
that is no concern for myself or my community, to be clear.

@herbetom
Copy link
Contributor Author

herbetom commented Aug 28, 2023

@rotanid If you think that's an issue i would suggest opening an seperate Issue/PR.

If you feel stronlgy you could try figuring out why v2023.1 can only be upgraded from v2021.1 and not v2020.1. Maybe those barriers can be removed for v2023.1.x retroactively.

Breaking compatibilty with the upcoming v2023.2 for anything earlier then v2022.1 makes sense in my eyes. But maybe it's not so clear with v2023.1.


For the future it could make sense to have an "upgradeable_from" file/value somewhere in the repo which contains the current version from which upgrades are supported. That would allow quite easy tracking via git and it would also improve the workflow arround creating release notes.

@blocktrron
Copy link
Member

blocktrron commented Aug 28, 2023

@rotanid I've had a look into the issue on ipq40xx

While the next release will in fact not be a drop-in replacement (sorry, i misunderstood your point in there), it will be able to be installed starting from Gluon v2022.1.x, as this is the first version to skip the minor compat hack in place.

freifunk-gluon/packages@b804281

My above comment was written hastily. If we are fine with this, we do not need additional work for ipq40xx update case. If we want to target older versions, we need to carry hacks for ramips as well as ipq40xx, which i look at as a burden to big to carry. At least i have no interest in fixing this mess over multiple releases now. So if this path is taken, i expect someone to step up and keep this alive and maintained.

Thoughts?

@herbetom
Copy link
Contributor Author

Earlier on in the state of this PR i rebased the neccesary patches to keep upgradability similar: herbetom@a6c0eb7

Maybe it helps someone. But i don't think those should be upstreamed and stay arround.

That v2023.1.x and v2022.1.x don't share the version from which they can be upgraded is of course not ideal.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
3. topic: docs Topic: Documentation 3. topic: hardware Topic: Hardware Support
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants