Wireless Battle of the Mesh with OpenWrt talks this weekend

2020-11-10 Thread Hauke Mehrtens
OpenWrt supports this year's "Wireless Battle of the Mesh - Virtual 
Global Edition".


The event aims to virtually bring together people from across the globe 
who are interested in community networks, including wireless mesh 
network technologies, fiber infrastructure, Do-It-Yourself Internet 
Access Providers, and more generally how to create and maintain a 
thriving community of people involved in building their own networks.


We envision 2 days full of expert presentations, workshops, land 
fruitful discussions: whether you are a mesh networking enthusiast, 
community networking activist, protocol developer, or have an interest 
in networking in general, come and join the event!


Battlemesh is free of charge and open for presentations.

This year, the event will take place from Saturday 14th to Sunday 15th 
of November, 2020, in a virtual room. Check out continuously updated 
information about the event at https://www.battlemesh.org/BattleMeshV13


I would like to specifically highly these talks:
 * Enhancing OpenWrt Security by Dominick Grift AKA “grift”
 * news from the hostapd land by Daniel Golle
 * Securing and Optimising Enterprise Networks with OpenWrt and Free 
Software by Nishant Sharma (@codemarauder)


OpenPGP_0x93DD20630910B515.asc
Description: application/pgp-keys


OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: Upcoming 19.07.4 and 18.07.9 stable releases

2020-11-10 Thread Hauke Mehrtens

On 7/30/20 8:57 PM, Baptiste Jonglez wrote:

Hi,

New point releases for 19.07 and 18.06 are starting to be overdue, and I
would like to help 19.07.4 and 18.06.9 get released somewhere around
mid-August.

The main motivation are fixes for a libubox regression and for the musl
synchronisation bug, as well as a LuCI regression (see "release goals"
below).  But there are many other fixes, mostly device-related, that also
motivate these new point releases.  If you have more fixes to backport,
please consider doing so soon, especially for 18.06.9 which will likely be
the last release for 18.06.


The following links can be useful to track changes for 19.07:

- release goals for 19.07.4 (mostly high-level): 
https://openwrt.org/docs/guide-developer/releases/goals/19.07.4

- current release notes for 19.07.4: 
https://openwrt.org/releases/19.07/notes-19.07.4

- pending patches on patchwork for 19.07: 
https://patchwork.ozlabs.org/project/openwrt/list/?q=19.07

- pending patches on github for 19.07: 
https://github.com/openwrt/openwrt/pulls?q=is%3Apr+is%3Aopen+label%3Arelease%2F19.07

- open bug reports for 19.07: 
https://bugs.openwrt.org/index.php?do=tasklist&project=2&status%5B0%5D=open&reported%5B%5D=10&order=severity&sort=desc


And for 18.06 (overall, things are obviously more quiet):

- current release notes for 18.06.9: 
https://openwrt.org/releases/18.06/notes-18.06.9

- pending patches on patchwork for 18.06: 
https://patchwork.ozlabs.org/project/openwrt/list/?q=18.06

- pending patches on github for 18.06: 
https://github.com/openwrt/openwrt/pulls?q=is%3Apr+is%3Aopen+label%3Arelease%2F18.06

- open bug reports for 18.06: 
https://bugs.openwrt.org/index.php?do=tasklist&project=2&status%5B0%5D=open&reported%5B%5D=8&order=severity&sort=desc


While everything is mostly ready, the actual release will need somebody
with the rights to "push the button": 
https://openwrt.org/docs/guide-developer/releases/making-service-release

Regards,
Baptiste


Hi,

Currently 18.06 looks good for me and I would really like to do the 
final release and call it then officially end of life.


I would wait for the build bot results and then do it at the weekend.

Should we also do an other 19.07 release now?

Hauke


OpenPGP_0x93DD20630910B515.asc
Description: application/pgp-keys


OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: Upcoming 19.07.4 and 18.07.9 stable releases

2020-11-11 Thread Hauke Mehrtens

On 11/11/20 1:17 AM, Adrian Schmutzler wrote:

I would wait for the build bot results and then do it at the weekend.

Should we also do an other 19.07 release now?


"ath79: ar8216: make switch register access atomic" could be a big deal for ath79 users, and 
several ramips users might be happy about "Revert "ramips: ethernet: fix to interrupt 
handling". We should at least consider it. (But we probably should bump the kernel again if we do.)


Yes, these were also the problems we should fix and it is already about 
2 months ago we did the last release.


Koen already has a update of the kernel minor version:
https://git.openwrt.org/?p=openwrt/staging/xback.git;a=commitdiff;h=355640a5b58d4199e80b9fd61226f8f3dbdc298f

Hauke


OpenPGP_0x93DD20630910B515.asc
Description: application/pgp-keys


OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH] iproute2: update to 5.9

2020-11-13 Thread Hauke Mehrtens

On 11/12/20 6:18 PM, Hans Dedecker wrote:

Update iproute2 to latest stable 5.9; for the changes see 
https://lwn.net/Articles/834755/

Refresh patches

Signed-off-by: Hans Dedecker 


Acked-by: Hauke Mehrtens 


---
  package/network/utils/iproute2/Makefile | 4 ++--
  .../utils/iproute2/patches/115-add-config-xtlibdir.patch| 2 +-
  .../utils/iproute2/patches/175-reduce-dynamic-syms.patch| 6 +++---
  3 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/package/network/utils/iproute2/Makefile 
b/package/network/utils/iproute2/Makefile
index 90f8b59a02..237f84736b 100644
--- a/package/network/utils/iproute2/Makefile
+++ b/package/network/utils/iproute2/Makefile
@@ -8,12 +8,12 @@
  include $(TOPDIR)/rules.mk
  
  PKG_NAME:=iproute2

-PKG_VERSION:=5.8.0
+PKG_VERSION:=5.9.0
  PKG_RELEASE:=1
  
  PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz

  PKG_SOURCE_URL:=@KERNEL/linux/utils/net/iproute2
-PKG_HASH:=cfcd1f890290f8c8afcc91d9444ad929b9252c16f9ab3f286c50dd3c59dc646e
+PKG_HASH:=a25dac94bcdcf2f73316c7f812115ea7a5710580bad892b08a83d00c6b33dacf
  PKG_BUILD_PARALLEL:=1
  PKG_BUILD_DEPENDS:=iptables
  PKG_LICENSE:=GPL-2.0
diff --git 
a/package/network/utils/iproute2/patches/115-add-config-xtlibdir.patch 
b/package/network/utils/iproute2/patches/115-add-config-xtlibdir.patch
index 03df7809f7..8702d5fd2d 100644
--- a/package/network/utils/iproute2/patches/115-add-config-xtlibdir.patch
+++ b/package/network/utils/iproute2/patches/115-add-config-xtlibdir.patch
@@ -1,6 +1,6 @@
  --- a/tc/Makefile
  +++ b/tc/Makefile
-@@ -127,6 +127,9 @@ CFLAGS += -DCONFIG_GACT -DCONFIG_GACT_PR
+@@ -128,6 +128,9 @@ CFLAGS += -DCONFIG_GACT -DCONFIG_GACT_PR
   ifneq ($(IPT_LIB_DIR),)
CFLAGS += -DIPT_LIB_DIR=\"$(IPT_LIB_DIR)\"
   endif
diff --git 
a/package/network/utils/iproute2/patches/175-reduce-dynamic-syms.patch 
b/package/network/utils/iproute2/patches/175-reduce-dynamic-syms.patch
index e5d5492a35..da961a183b 100644
--- a/package/network/utils/iproute2/patches/175-reduce-dynamic-syms.patch
+++ b/package/network/utils/iproute2/patches/175-reduce-dynamic-syms.patch
@@ -9,7 +9,7 @@
   endif
   
   TCLIB := tc_core.o

-@@ -143,7 +143,7 @@ MODDESTDIR := $(DESTDIR)$(LIBDIR)/tc
+@@ -144,7 +144,7 @@ MODDESTDIR := $(DESTDIR)$(LIBDIR)/tc
   all: tc $(TCSO)
   
   tc: $(TCOBJ) $(LIBNETLINK) libtc.a

@@ -18,7 +18,7 @@
   
   libtc.a: $(TCLIB)

$(QUIET_AR)$(AR) rcs $@ $^
-@@ -165,6 +165,7 @@ install: all
+@@ -166,6 +166,7 @@ install: all
   clean:
rm -f $(TCOBJ) $(TCLIB) libtc.a tc *.so emp_ematch.tab.h; \
rm -f emp_ematch.tab.*
@@ -26,7 +26,7 @@
   
   q_atm.so: q_atm.c

$(QUIET_CC)$(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -shared -fpic -o 
q_atm.so q_atm.c -latm
-@@ -204,4 +205,15 @@ static-syms.h: $(wildcard *.c)
+@@ -205,4 +206,15 @@ static-syms.h: $(wildcard *.c)
sed -n '/'$$s'[^ ]* =/{s:.* \([^ ]*'$$s'[^ ]*\) .*:extern char \1[] 
__attribute__((weak)); if (!strcmp(sym, "\1")) return \1;:;p}' $$files ; \
done > $@
   




___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: Wireless Battle of the Mesh with OpenWrt talks this weekend

2020-11-14 Thread Hauke Mehrtens

On 11/11/20 12:38 AM, Hauke Mehrtens wrote:
OpenWrt supports this year's "Wireless Battle of the Mesh - Virtual 
Global Edition".


The event aims to virtually bring together people from across the globe 
who are interested in community networks, including wireless mesh 
network technologies, fiber infrastructure, Do-It-Yourself Internet 
Access Providers, and more generally how to create and maintain a 
thriving community of people involved in building their own networks.


We envision 2 days full of expert presentations, workshops, land 
fruitful discussions: whether you are a mesh networking enthusiast, 
community networking activist, protocol developer, or have an interest 
in networking in general, come and join the event!


Battlemesh is free of charge and open for presentations.

This year, the event will take place from Saturday 14th to Sunday 15th 
of November, 2020, in a virtual room. Check out continuously updated 
information about the event at https://www.battlemesh.org/BattleMeshV13


I would like to specifically highly these talks:
  * Enhancing OpenWrt Security by Dominick Grift AKA “grift”
  * news from the hostapd land by Daniel Golle
  * Securing and Optimising Enterprise Networks with OpenWrt and Free 
Software by Nishant Sharma (@codemarauder)


Hi,

The Battlemesh v13 will start in about 40 minutes.
The links to join the conference are now available on the wiki:
https://battlemesh.org/BattleMeshV13#Where

Agenda for today:
15:00 CET Welcome session
15:20 CET How to not lose all your mesh nodes
16:00 CET RED and https://fsfe.org/activities/radiodirective/
16:30 CET Weather Radar WLAN Channel Map
17:00 CET Benchmark of Mesh Routing Protocols
18:00 CET Enhancing OpenWrt Security
18:45 CET Wrap-up session
https://battlemesh.org/BattleMeshV13#Talk_Schedule_and_Workshops

Hauke

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH] iperf3: Update to version 3.9

2020-11-14 Thread Hauke Mehrtens
No special changes, just get in sync with recent code.
See here for the changelog:
http://software.es.net/iperf/news.html#iperf-3-9-released

Signed-off-by: Hauke Mehrtens 
---
 package/network/utils/iperf3/Makefile | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/network/utils/iperf3/Makefile 
b/package/network/utils/iperf3/Makefile
index ab946c2590cb..6f90bc922158 100644
--- a/package/network/utils/iperf3/Makefile
+++ b/package/network/utils/iperf3/Makefile
@@ -8,12 +8,12 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=iperf
-PKG_VERSION:=3.7
+PKG_VERSION:=3.9
 PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=https://downloads.es.net/pub/iperf
-PKG_HASH:=d846040224317caf2f75c843d309a950a7db23f9b44b94688ccbe557d6d1710c
+PKG_HASH:=24b63a26382325f759f11d421779a937b63ca1bc17c44587d2fcfedab60ac038
 
 PKG_MAINTAINER:=Felix Fietkau 
 PKG_LICENSE:=BSD-3-Clause
-- 
2.20.1


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH] strace: Update to version 5.9

2020-11-14 Thread Hauke Mehrtens
No special changes, just get in sync with recent code.
See here for the changelog:
https://github.com/strace/strace/releases/tag/v5.9

Signed-off-by: Hauke Mehrtens 
---
 package/devel/strace/Makefile | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/devel/strace/Makefile b/package/devel/strace/Makefile
index 1a0c0f442f37..9ea28735a10b 100644
--- a/package/devel/strace/Makefile
+++ b/package/devel/strace/Makefile
@@ -9,12 +9,12 @@ include $(TOPDIR)/rules.mk
 include $(INCLUDE_DIR)/kernel.mk
 
 PKG_NAME:=strace
-PKG_VERSION:=5.8
+PKG_VERSION:=5.9
 PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
 PKG_SOURCE_URL:=https://strace.io/files/$(PKG_VERSION)
-PKG_HASH:=df4a669f7fff9cc302784085bd4b72fab216a426a3f72c892b28a537b71e7aa9
+PKG_HASH:=39473eb8465546c3e940fb663cb381eba5613160c7302794699d194a4d5d66d9
 
 PKG_MAINTAINER:=Felix Fietkau 
 PKG_LICENSE:=LGPL-2.1-or-later
-- 
2.20.1


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH] valgrind: Update to version 3.16.1

2020-11-14 Thread Hauke Mehrtens
No special changes, just get in sync with recent code.
See here for the changelog:
https://valgrind.org/docs/manual/dist.news.html

Signed-off-by: Hauke Mehrtens 
---
 package/devel/valgrind/Makefile | 6 +++---
 .../devel/valgrind/patches/100-fix_configure_check.patch| 2 +-
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/package/devel/valgrind/Makefile b/package/devel/valgrind/Makefile
index ecb4af8b3580..829f37569e9b 100644
--- a/package/devel/valgrind/Makefile
+++ b/package/devel/valgrind/Makefile
@@ -8,12 +8,12 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=valgrind
-PKG_VERSION:=3.15.0
-PKG_RELEASE:=2
+PKG_VERSION:=3.16.1
+PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
 PKG_SOURCE_URL:=http://sourceware.org/pub/valgrind/
-PKG_HASH:=417c7a9da8f60dd05698b3a7bc6002e4ef996f14c13f0ff96679a16873e78ab1
+PKG_HASH:=c91f3a2f7b02db0f3bc99479861656154d241d2fdb265614ba918cc6720a33ca
 
 PKG_MAINTAINER:=Felix Fietkau 
 PKG_LICENSE:=GPL-2.0+
diff --git a/package/devel/valgrind/patches/100-fix_configure_check.patch 
b/package/devel/valgrind/patches/100-fix_configure_check.patch
index 270181ae376a..6e9384ff8873 100644
--- a/package/devel/valgrind/patches/100-fix_configure_check.patch
+++ b/package/devel/valgrind/patches/100-fix_configure_check.patch
@@ -1,6 +1,6 @@
 --- a/configure.ac
 +++ b/configure.ac
-@@ -341,7 +341,7 @@ case "${host_os}" in
+@@ -345,7 +345,7 @@ case "${host_os}" in
  # Ok, this is linux. Check the kernel version
  AC_MSG_CHECKING([for the kernel version])
  
-- 
2.20.1


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH 0/2] Remove pending network patches

2020-11-21 Thread Hauke Mehrtens
These patches are included in OpenWrt since 2014 and never got 
integrated into upstream Linux kernel. To reduce the maintenance 
overhead just remove them.

Hauke Mehrtens (2):
  kernel: Remove support for MAP-E FMRs RFC 7597
  kernel: Remove ipv6: allow rejecting with "source address failed
policy"

 .../generic/hack-5.4/902-debloat_proc.patch   |   4 +-
 ...Add-support-for-MAP-E-FMRs-mesh-mode.patch | 501 --
 ...ng-with-source-address-failed-policy.patch | 263 -
 ...nes-for-_POLICY_FAILED-until-all-cod.patch |  50 --
 4 files changed, 2 insertions(+), 816 deletions(-)
 delete mode 100644 
target/linux/generic/pending-5.4/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch
 delete mode 100644 
target/linux/generic/pending-5.4/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch
 delete mode 100644 
target/linux/generic/pending-5.4/671-net-provide-defines-for-_POLICY_FAILED-until-all-cod.patch

-- 
2.20.1


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH 2/2] kernel: Remove ipv6: allow rejecting with "source address failed policy"

2020-11-21 Thread Hauke Mehrtens
I am not aware that any user space code uses this feature in OpenWrt and
maintaining this patch costs some effort especially when we add a new
kernel major version.

These patches was originally introduced in commit 46d199d1e8e7 ("linux:
add ipv6 failed-policy routing action (by Jonas Gorski)") and commit
6bd1a3700191 ("add initial 3.13 support") in 2013 and 2014.

If you still need this feature also try to get this into mainline Linux.

Cc: Steven Barth 
Signed-off-by: Hauke Mehrtens 
---
 .../generic/hack-5.4/902-debloat_proc.patch   |   4 +-
 ...ng-with-source-address-failed-policy.patch | 263 --
 ...nes-for-_POLICY_FAILED-until-all-cod.patch |  50 
 3 files changed, 2 insertions(+), 315 deletions(-)
 delete mode 100644 
target/linux/generic/pending-5.4/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch
 delete mode 100644 
target/linux/generic/pending-5.4/671-net-provide-defines-for-_POLICY_FAILED-until-all-cod.patch

diff --git a/target/linux/generic/hack-5.4/902-debloat_proc.patch 
b/target/linux/generic/hack-5.4/902-debloat_proc.patch
index d9febbada858..c3e95241fc3e 100644
--- a/target/linux/generic/hack-5.4/902-debloat_proc.patch
+++ b/target/linux/generic/hack-5.4/902-debloat_proc.patch
@@ -341,7 +341,7 @@ Signed-off-by: Felix Fietkau 
  
 --- a/net/ipv4/fib_trie.c
 +++ b/net/ipv4/fib_trie.c
-@@ -2848,11 +2848,13 @@ static const struct seq_operations fib_r
+@@ -2847,11 +2847,13 @@ static const struct seq_operations fib_r
  
  int __net_init fib_proc_init(struct net *net)
  {
@@ -357,7 +357,7 @@ Signed-off-by: Felix Fietkau 
fib_triestat_seq_show, NULL))
goto out2;
  
-@@ -2863,17 +2865,21 @@ int __net_init fib_proc_init(struct net
+@@ -2862,17 +2864,21 @@ int __net_init fib_proc_init(struct net
return 0;
  
  out3:
diff --git 
a/target/linux/generic/pending-5.4/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch
 
b/target/linux/generic/pending-5.4/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch
deleted file mode 100644
index 3590557a30ff..
--- 
a/target/linux/generic/pending-5.4/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch
+++ /dev/null
@@ -1,263 +0,0 @@
-From: Jonas Gorski 
-Subject: ipv6: allow rejecting with "source address failed policy"
-
-RFC6204 L-14 requires rejecting traffic from invalid addresses with
-ICMPv6 Destination Unreachable, Code 5 (Source address failed ingress/
-egress policy) on the LAN side, so add an appropriate rule for that.
-
-Signed-off-by: Jonas Gorski 

- include/net/netns/ipv6.h   |  1 +
- include/uapi/linux/fib_rules.h |  4 +++
- include/uapi/linux/rtnetlink.h |  1 +
- net/ipv4/fib_semantics.c   |  4 +++
- net/ipv4/fib_trie.c|  1 +
- net/ipv4/ipmr.c|  1 +
- net/ipv6/fib6_rules.c  |  4 +++
- net/ipv6/ip6mr.c   |  2 ++
- net/ipv6/route.c   | 58 +-
- 9 files changed, 75 insertions(+), 1 deletion(-)
-
 a/include/net/netns/ipv6.h
-+++ b/include/net/netns/ipv6.h
-@@ -84,6 +84,7 @@ struct netns_ipv6 {
-   unsigned intfib6_rules_require_fldissect;
-   boolfib6_has_custom_rules;
-   struct rt6_info *ip6_prohibit_entry;
-+  struct rt6_info *ip6_policy_failed_entry;
-   struct rt6_info *ip6_blk_hole_entry;
-   struct fib6_table   *fib6_local_tbl;
-   struct fib_rules_ops*fib6_rules_ops;
 a/include/uapi/linux/fib_rules.h
-+++ b/include/uapi/linux/fib_rules.h
-@@ -82,6 +82,10 @@ enum {
-   FR_ACT_BLACKHOLE,   /* Drop without notification */
-   FR_ACT_UNREACHABLE, /* Drop with ENETUNREACH */
-   FR_ACT_PROHIBIT,/* Drop with EACCES */
-+  FR_ACT_RES9,
-+  FR_ACT_RES10,
-+  FR_ACT_RES11,
-+  FR_ACT_POLICY_FAILED,   /* Drop with EACCES */
-   __FR_ACT_MAX,
- };
- 
 a/include/uapi/linux/rtnetlink.h
-+++ b/include/uapi/linux/rtnetlink.h
-@@ -235,6 +235,7 @@ enum {
-   RTN_THROW,  /* Not in this table*/
-   RTN_NAT,/* Translate this address   */
-   RTN_XRESOLVE,   /* Use external resolver*/
-+  RTN_POLICY_FAILED,  /* Failed ingress/egress policy */
-   __RTN_MAX
- };
- 
 a/net/ipv4/fib_semantics.c
-+++ b/net/ipv4/fib_semantics.c
-@@ -141,6 +141,10 @@ const struct fib_prop fib_props[RTN_MAX
-   .error  = -EINVAL,
-   .scope  = RT_SCOPE_NOWHERE,
-   },
-+  [RTN_POLICY_FAILED] = {
-+  .error  = -EACCES,
-+  .scope  = RT_SCOPE_UNIVERSE,
-+  },
- };
- 
- static void rt_fibinfo_free(struct rtable __rcu **rtp)
 a/net/ipv4/fib_trie.c
-+++ b/net/ipv4/fib_trie.c
-@@ -2596,6 +2596,7 @@ static const char *const rtn_type_names[
-   [RTN_THROW] = "THROW",
-   [RTN_NAT] = &

[PATCH 1/2] kernel: Remove support for MAP-E FMRs RFC 7597

2020-11-21 Thread Hauke Mehrtens
I am not aware that any user space code uses this feature in OpenWrt and
maintaining this patch costs some effort especially when we add a new
kernel major version.

This patch was originally introduced in commit 32246436147f ("Add kernel
support for MAP-E FMRs") in May 2014 and implements (parts?) or MAP-E
FMRs (draft-ietf-softwire-map-10) which is now RFC 7597

If you still need this feature also try to get this into mainline Linux.

Signed-off-by: Hauke Mehrtens 
---
 ...Add-support-for-MAP-E-FMRs-mesh-mode.patch | 501 --
 1 file changed, 501 deletions(-)
 delete mode 100644 
target/linux/generic/pending-5.4/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch

diff --git 
a/target/linux/generic/pending-5.4/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch
 
b/target/linux/generic/pending-5.4/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch
deleted file mode 100644
index 8bcca1c4d159..
--- 
a/target/linux/generic/pending-5.4/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch
+++ /dev/null
@@ -1,501 +0,0 @@
-From: Steven Barth 
-Subject: Add support for MAP-E FMRs (mesh mode)
-
-MAP-E FMRs (draft-ietf-softwire-map-10) are rules for IPv4-communication
-between MAP CEs (mesh mode) without the need to forward such data to a
-border relay. This is similar to how 6rd works but for IPv4 over IPv6.
-
-Signed-off-by: Steven Barth 

- include/net/ip6_tunnel.h   |  13 ++
- include/uapi/linux/if_tunnel.h |  13 ++
- net/ipv6/ip6_tunnel.c  | 276 +++--
- 3 files changed, 291 insertions(+), 11 deletions(-)
-
 a/include/net/ip6_tunnel.h
-+++ b/include/net/ip6_tunnel.h
-@@ -18,6 +18,18 @@
- /* determine capability on a per-packet basis */
- #define IP6_TNL_F_CAP_PER_PACKET 0x4
- 
-+/* IPv6 tunnel FMR */
-+struct __ip6_tnl_fmr {
-+  struct __ip6_tnl_fmr *next; /* next fmr in list */
-+  struct in6_addr ip6_prefix;
-+  struct in_addr ip4_prefix;
-+
-+  __u8 ip6_prefix_len;
-+  __u8 ip4_prefix_len;
-+  __u8 ea_len;
-+  __u8 offset;
-+};
-+
- struct __ip6_tnl_parm {
-   char name[IFNAMSIZ];/* name of tunnel device */
-   int link;   /* ifindex of underlying L2 interface */
-@@ -29,6 +41,7 @@ struct __ip6_tnl_parm {
-   __u32 flags;/* tunnel flags */
-   struct in6_addr laddr;  /* local tunnel end-point address */
-   struct in6_addr raddr;  /* remote tunnel end-point address */
-+  struct __ip6_tnl_fmr *fmrs; /* FMRs */
- 
-   __be16  i_flags;
-   __be16  o_flags;
 a/include/uapi/linux/if_tunnel.h
-+++ b/include/uapi/linux/if_tunnel.h
-@@ -77,10 +77,23 @@ enum {
-   IFLA_IPTUN_ENCAP_DPORT,
-   IFLA_IPTUN_COLLECT_METADATA,
-   IFLA_IPTUN_FWMARK,
-+  IFLA_IPTUN_FMRS,
-   __IFLA_IPTUN_MAX,
- };
- #define IFLA_IPTUN_MAX(__IFLA_IPTUN_MAX - 1)
- 
-+enum {
-+  IFLA_IPTUN_FMR_UNSPEC,
-+  IFLA_IPTUN_FMR_IP6_PREFIX,
-+  IFLA_IPTUN_FMR_IP4_PREFIX,
-+  IFLA_IPTUN_FMR_IP6_PREFIX_LEN,
-+  IFLA_IPTUN_FMR_IP4_PREFIX_LEN,
-+  IFLA_IPTUN_FMR_EA_LEN,
-+  IFLA_IPTUN_FMR_OFFSET,
-+  __IFLA_IPTUN_FMR_MAX,
-+};
-+#define IFLA_IPTUN_FMR_MAX (__IFLA_IPTUN_FMR_MAX - 1)
-+
- enum tunnel_encap_types {
-   TUNNEL_ENCAP_NONE,
-   TUNNEL_ENCAP_FOU,
 a/net/ipv6/ip6_tunnel.c
-+++ b/net/ipv6/ip6_tunnel.c
-@@ -11,6 +11,9 @@
-  *  linux/net/ipv6/sit.c and linux/net/ipv4/ipip.c
-  *
-  *  RFC 2473
-+ *
-+ *  Changes:
-+ *  Steven Barth :   MAP-E FMR support
-  */
- 
- #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
-@@ -67,9 +70,9 @@ static bool log_ecn_error = true;
- module_param(log_ecn_error, bool, 0644);
- MODULE_PARM_DESC(log_ecn_error, "Log packets received with corrupted ECN");
- 
--static u32 HASH(const struct in6_addr *addr1, const struct in6_addr *addr2)
-+static u32 HASH(const struct in6_addr *addr)
- {
--  u32 hash = ipv6_addr_hash(addr1) ^ ipv6_addr_hash(addr2);
-+  u32 hash = ipv6_addr_hash(addr);
- 
-   return hash_32(hash, IP6_TUNNEL_HASH_SIZE_SHIFT);
- }
-@@ -136,20 +139,29 @@ static struct net_device_stats *ip6_get_
- static struct ip6_tnl *
- ip6_tnl_lookup(struct net *net, const struct in6_addr *remote, const struct 
in6_addr *local)
- {
--  unsigned int hash = HASH(remote, local);
-+  unsigned int hash = HASH(local);
-   struct ip6_tnl *t;
-   struct ip6_tnl_net *ip6n = net_generic(net, ip6_tnl_net_id);
-   struct in6_addr any;
-+  struct __ip6_tnl_fmr *fmr;
- 
-   for_each_ip6_tunnel_rcu(ip6n->tnls_r_l[hash]) {
--  if (ipv6_addr_equal(local, &t->parms.laddr) &&
--  ipv6_addr_equal(remote, &t->parms.raddr) &&
--  (t->dev->flags & IFF_UP))
-+  if (!ipv6_addr_equal(local, &t->parms.laddr) ||
-+  !(t->dev->flags & IFF_UP))
-+

[RFC PATCH 0/4] mac80211: Update to version 5.10-rc6

2020-12-01 Thread Hauke Mehrtens
This updates mac80211 to backports version 5.10-rc6.
This is currently only the test version, I will release official 
versions of backports in the next days and then update these patches.

Kernel 5.10 should be an LTS kernel so we will get updates for it the 
next 5 years, I would prefer to use backports based on this version in 
our next release.

Please test this and report error to me.

The changes are also in my stating tree:
https://git.openwrt.org/?p=openwrt/staging/hauke.git;a=shortlog;h=refs/heads/mac80211-5.10

Hauke Mehrtens (4):
  mac80211: Update to version 5.8.18-test2
  mac80211: Update to version 5.9.11-test3
  mac80211: Update to version 5.10-rc6-test5
  iw: Update to version 5.9

 .../ath10k-ct/patches/300-mac80211-5.10.patch |   24 +
 package/kernel/mac80211/Makefile  |8 +-
 .../patches/ath/404-regd_no_assoc_hints.patch |4 +-
 .../ath/410-ath9k_allow_adhoc_and_ap.patch|2 +-
 .../ath/440-ath5k_channel_bw_debugfs.patch|4 +-
 ...abled-MFP-capability-unconditionally.patch |4 +-
 .../patches/ath/542-ath9k_debugfs_diag.patch  |2 +-
 .../ath/543-ath9k_entropy_from_adc.patch  |8 +-
 .../patches/ath/545-ath9k_ani_ws_detect.patch |2 +-
 .../ath/551-ath9k_ubnt_uap_plus_hsr.patch |8 +-
 .../patches/ath/553-ath9k_of_gpio_mask.patch  |2 +-
 ...21-ath10k_init_devices_synchronously.patch |2 +-
 .../ath/930-ath10k_add_tpt_led_trigger.patch  |4 +-
 ...rolling-support-for-various-chipsets.patch |   38 +-
 ...75-ath10k-use-tpt-trigger-by-default.patch |4 +-
 ...980-ath10k-fix-max-antenna-gain-unit.patch |6 +-
 ...-power-reduction-for-US-regulatory-d.patch |8 +-
 .../810-b43-gpio-mask-module-option.patch |2 +-
 .../patches/brcm/811-b43_no_pio.patch |2 +-
 .../brcm/812-b43-add-antenna-control.patch|   16 +-
 .../814-b43-only-use-gpio-0-1-for-led.patch   |2 +-
 ...-register-wiphy-s-during-module_init.patch |2 +-
 ...und-bug-with-some-inconsistent-BSSes.patch |2 +-
 ...62-brcmfmac-Disable-power-management.patch |2 +-
 ...-in-driver-tables-with-country-codes.patch |2 +-
 .../mac80211/patches/brcm/998-survey.patch|   12 +-
 .../patches/build/050-lib80211_option.patch   |3 +-
 .../patches/build/060-no_local_ssb_bcma.patch |   16 +-
 .../602-rt2x00-introduce-rt2x00eeprom.patch   |6 +-
 .../611-rt2x00-add-AP+STA-support.patch   |2 +-
 .../612-rt2x00-led-tpt-trigger-support.patch  |2 +-
 ...backports-add-netif_receive_skb_list.patch |   30 -
 .../071-backports-add-skb_list_del_init.patch |   24 -
 ...072-backports-add-sched_set_fifo_low.patch |   32 -
 ...-backport-tasklet_setup-from_tasklet.patch |   35 -
 .../100-remove-cryptoapi-dependencies.patch   |6 +-
 .../110-mac80211_keep_keys_on_stop_ap.patch   |2 +-
 .../mac80211/patches/subsys/210-ap_scan.patch |2 +-
 .../300-mac80211-optimize-skb-resizing.patch  |   65 +-
 ...domize-BA-session-dialog-token-alloc.patch |2 +-
 ...11-improve-AQL-tx-airtime-estimation.patch |   81 --
 ...unction-for-running-rx-without-passi.patch |  186 ---
 ...skb_get_hash-instead-of-skb_get_hash.patch |   55 -
 ...lcate-skb-hash-early-when-using-itxq.patch |   19 -
 ...ce-packet-loss-event-false-positives.patch |  116 --
 ...e-provided-via-status-rate-on-ieee80.patch |  151 ---
 ...out-code-to-look-up-the-average-pack.patch |  187 ---
 ...-AQL-aggregation-estimation-for-low-.patch |   67 -
 ...sing-queue-hash-initialization-to-80.patch |   25 -
 ...nd-refresh-aggregation-session-in-en.patch |   45 -
 ...cap-offload-for-tx-multicast-control.patch |  136 --
 ...o-control.hw_key-for-encap-offload-p.patch |   31 -
 ...-rework-tx-encapsulation-offload-API.patch |  613 -
 ...e-duplication-in-tx-status-functions.patch |  197 ---
 ...tx-status-call-to-ieee80211_sta_regi.patch |   26 -
 ...-optimize-station-connection-monitor.patch |  174 ---
 ...ED_TXPROCESSING-and-HW_80211_ENCAP-t.patch |  227 
 ...02.3-offload-and-802.11-tx-status-co.patch |  159 ---
 ...-using-ieee80211_tx_status_ext-to-fr.patch |   63 -
 ...ieee80211_tx_status_ext-to-support-b.patch |   53 -
 ...the-driver-when-a-sta-uses-4-address.patch |  109 --
 ...ize-code-to-remove-a-forward-declara.patch | 1110 -
 ...AQL-aggregation-estimation-to-HE-and.patch |   49 -
 ...-add-AQL-support-for-VHT160-tx-rates.patch |   23 -
 ...igger-A-MSDU-sizes-in-VHT-even-if-HT.patch |   26 -
 ...allow-bigger-VHT-MPDUs-than-the-hard.patch |   34 -
 ...regression-in-sta-connection-monitor.patch |   70 --
 ...ory-leak-on-filtered-powersave-frame.patch |   55 -
 ...nstrel-remove-deferred-sampling-code.patch |   96 --
 ...l-fix-tx-status-processing-corner-ca.patch |   26 -
 ...11-fix-misplaced-while-instead-of-if.patch |   31 -
 .../patches/subsys/400-allow-ibss-mixed.patch |2 +-
 .../500-mac80211_configure_antenna_gain.patch |   36 +-
 .../mt76/patches/100-mac80211-5.10.patch  |   82 ++
 package/network/utils/iw/Makefile |4

[RFC PATCH 4/4] iw: Update to version 5.9

2020-12-01 Thread Hauke Mehrtens
---
 package/network/utils/iw/Makefile |   4 +-
 .../utils/iw/patches/001-nl80211_h_sync.patch | 354 +-
 .../utils/iw/patches/200-reduce_size.patch|   6 +-
 3 files changed, 11 insertions(+), 353 deletions(-)

diff --git a/package/network/utils/iw/Makefile 
b/package/network/utils/iw/Makefile
index 90e678291170..6db9aaf105ae 100644
--- a/package/network/utils/iw/Makefile
+++ b/package/network/utils/iw/Makefile
@@ -8,12 +8,12 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=iw
-PKG_VERSION:=5.8
+PKG_VERSION:=5.9
 PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
 PKG_SOURCE_URL:=@KERNEL/software/network/iw
-PKG_HASH:=b59c4bacb0b6675cc09f2f30ebdceb91174cb65443d0a062fba2c09fad772db4
+PKG_HASH:=293a07109aeb7e36267cf59e3ce52857e9ffae3aeb8ac77894b1839fe1f2
 
 PKG_MAINTAINER:=Felix Fietkau 
 PKG_LICENSE:=GPL-2.0
diff --git a/package/network/utils/iw/patches/001-nl80211_h_sync.patch 
b/package/network/utils/iw/patches/001-nl80211_h_sync.patch
index 394acbd0e7d6..c944e02ba65b 100644
--- a/package/network/utils/iw/patches/001-nl80211_h_sync.patch
+++ b/package/network/utils/iw/patches/001-nl80211_h_sync.patch
@@ -1,363 +1,21 @@
 --- a/nl80211.h
 +++ b/nl80211.h
-@@ -252,9 +252,13 @@
-  * DOC: SAE authentication offload
+@@ -2527,6 +2527,9 @@ enum nl80211_commands {
+  *override mask. Used with NL80211_ATTR_S1G_CAPABILITY in
+  *NL80211_CMD_ASSOCIATE or NL80211_CMD_CONNECT.
   *
-  * By setting @NL80211_EXT_FEATURE_SAE_OFFLOAD flag drivers can indicate they
-- * support offloading SAE authentication for WPA3-Personal networks. In
-- * %NL80211_CMD_CONNECT the password for SAE should be specified using
-- * %NL80211_ATTR_SAE_PASSWORD.
-+ * support offloading SAE authentication for WPA3-Personal networks in station
-+ * mode. Similarly @NL80211_EXT_FEATURE_SAE_OFFLOAD_AP flag can be set by
-+ * drivers indicating the offload support in AP mode.
-+ *
-+ * The password for SAE should be specified using %NL80211_ATTR_SAE_PASSWORD 
in
-+ * %NL80211_CMD_CONNECT and %NL80211_CMD_START_AP for station and AP mode
-+ * respectively.
-  */
- 
- /**
-@@ -647,13 +651,9 @@
-  *authentication/association or not receiving a response from the AP.
-  *Non-zero %NL80211_ATTR_STATUS_CODE value is indicated in that case as
-  *well to remain backwards compatible.
-- *When establishing a security association, drivers that support 4 way
-- *handshake offload should send %NL80211_CMD_PORT_AUTHORIZED event when
-- *the 4 way handshake is completed successfully.
-  * @NL80211_CMD_ROAM: Notification indicating the card/driver roamed by 
itself.
-- *When a security association was established with the new AP (e.g. if
-- *the FT protocol was used for roaming or the driver completed the 4 way
-- *handshake), this event should be followed by an
-+ *When a security association was established on an 802.1X network using
-+ *fast transition, this event should be followed by an
-  *%NL80211_CMD_PORT_AUTHORIZED event.
-  * @NL80211_CMD_DISCONNECT: drop a given connection; also used to notify
-  *userspace that a connection was dropped by the AP or due to other
-@@ -1067,13 +1067,11 @@
-  * @NL80211_CMD_DEL_PMK: For offloaded 4-Way handshake, delete the previously
-  *configured PMK for the authenticator address identified by
-  *%NL80211_ATTR_MAC.
-- * @NL80211_CMD_PORT_AUTHORIZED: An event that indicates that the 4 way
-- *handshake was completed successfully by the driver. The BSSID is
-- *specified with %NL80211_ATTR_MAC. Drivers that support 4 way handshake
-- *offload should send this event after indicating 802.11 association with
-- *%NL80211_CMD_CONNECT or %NL80211_CMD_ROAM. If the 4 way handshake failed
-- *%NL80211_CMD_DISCONNECT should be indicated instead.
-- *
-+ * @NL80211_CMD_PORT_AUTHORIZED: An event that indicates an 802.1X FT roam was
-+ *completed successfully. Drivers that support 4 way handshake offload
-+ *should send this event after indicating 802.1X FT assocation with
-+ *%NL80211_CMD_ROAM. If the 4 way handshake failed %NL80211_CMD_DISCONNECT
-+ *should be indicated instead.
-  * @NL80211_CMD_CONTROL_PORT_FRAME: Control Port (e.g. PAE) frame TX request
-  *and RX notification.  This command is used both as a request to transmit
-  *a control port frame and as a notification that a control port frame
-@@ -2082,10 +2080,10 @@ enum nl80211_commands {
-  *operation).
-  * @NL80211_ATTR_CSA_IES: Nested set of attributes containing the IE 
information
-  *for the time while performing a channel switch.
-- * @NL80211_ATTR_CSA_C_OFF_BEACON: An array of offsets (u16) to the channel
-- *switch counters in the beacons tail (%NL80211_ATTR_BEACON_TAIL).
-- * @NL80211_ATTR_CSA_C_OFF_PRESP: An array of offsets (u16) to the channel
-- *switch counters in the probe response (%NL80211_ATTR_PROBE_RESP).
-+ * @NL80211_ATTR_CNTDWN_OFFS_BEACON: An array of offsets (u16) to the cha

[RFC PATCH 1/4] mac80211: Update to version 5.8.18-test2

2020-12-01 Thread Hauke Mehrtens
The removed patches were applied upstream.

Signed-off-by: Hauke Mehrtens 
---
 package/kernel/mac80211/Makefile  |   8 +-
 .../patches/ath/404-regd_no_assoc_hints.patch |   4 +-
 ...und-bug-with-some-inconsistent-BSSes.patch |   2 +-
 ...62-brcmfmac-Disable-power-management.patch |   2 +-
 .../mac80211/patches/brcm/998-survey.patch|   8 +-
 .../patches/build/050-lib80211_option.patch   |   3 +-
 .../110-mac80211_keep_keys_on_stop_ap.patch   |   2 +-
 .../mac80211/patches/subsys/210-ap_scan.patch |   2 +-
 .../300-mac80211-optimize-skb-resizing.patch  |   2 +-
 ...unction-for-running-rx-without-passi.patch |  14 +--
 ...ce-packet-loss-event-false-positives.patch | 116 --
 ...-AQL-aggregation-estimation-for-low-.patch |   6 +-
 ...e-duplication-in-tx-status-functions.patch |   6 +-
 ...-optimize-station-connection-monitor.patch |   6 +-
 ...ED_TXPROCESSING-and-HW_80211_ENCAP-t.patch |   2 +-
 ...the-driver-when-a-sta-uses-4-address.patch |   2 +-
 ...allow-bigger-VHT-MPDUs-than-the-hard.patch |  34 -
 ...11-fix-misplaced-while-instead-of-if.patch |  31 -
 .../500-mac80211_configure_antenna_gain.patch |   6 +-
 19 files changed, 38 insertions(+), 218 deletions(-)
 delete mode 100644 
package/kernel/mac80211/patches/subsys/310-mac80211-reduce-packet-loss-event-false-positives.patch
 delete mode 100644 
package/kernel/mac80211/patches/subsys/331-mac80211-do-not-allow-bigger-VHT-MPDUs-than-the-hard.patch
 delete mode 100644 
package/kernel/mac80211/patches/subsys/370-mac80211-fix-misplaced-while-instead-of-if.patch

diff --git a/package/kernel/mac80211/Makefile b/package/kernel/mac80211/Makefile
index 8448350acf5e..e0d2e4087883 100644
--- a/package/kernel/mac80211/Makefile
+++ b/package/kernel/mac80211/Makefile
@@ -10,10 +10,10 @@ include $(INCLUDE_DIR)/kernel.mk
 
 PKG_NAME:=mac80211
 
-PKG_VERSION:=5.8-1
-PKG_RELEASE:=2
-PKG_SOURCE_URL:=@KERNEL/linux/kernel/projects/backports/stable/v5.8/
-PKG_HASH:=19b4174d89bf11ee221458e11f1e8dace26558498774b823051156f522d2036b
+PKG_VERSION:=5.8.18-test2
+PKG_RELEASE:=1
+PKG_SOURCE_URL:=https://hauke-m.de/files/backports-test/
+PKG_HASH:=8bbb49a25b7138eae3a3557915264b0cb6ccc81bdfbc663f707f242e03fdf5a7
 
 PKG_SOURCE:=backports-$(PKG_VERSION).tar.xz
 PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/backports-$(PKG_VERSION)
diff --git a/package/kernel/mac80211/patches/ath/404-regd_no_assoc_hints.patch 
b/package/kernel/mac80211/patches/ath/404-regd_no_assoc_hints.patch
index 89e26af763f3..020e2bbab51b 100644
--- a/package/kernel/mac80211/patches/ath/404-regd_no_assoc_hints.patch
+++ b/package/kernel/mac80211/patches/ath/404-regd_no_assoc_hints.patch
@@ -1,6 +1,6 @@
 --- a/net/wireless/reg.c
 +++ b/net/wireless/reg.c
-@@ -3042,6 +3042,8 @@ void regulatory_hint_country_ie(struct w
+@@ -3045,6 +3045,8 @@ void regulatory_hint_country_ie(struct w
enum environment_cap env = ENVIRON_ANY;
struct regulatory_request *request = NULL, *lr;
  
@@ -9,7 +9,7 @@
/* IE len must be evenly divisible by 2 */
if (country_ie_len & 0x01)
return;
-@@ -3293,6 +3295,7 @@ static bool is_wiphy_all_set_reg_flag(en
+@@ -3296,6 +3298,7 @@ static bool is_wiphy_all_set_reg_flag(en
  
  void regulatory_hint_disconnect(void)
  {
diff --git 
a/package/kernel/mac80211/patches/brcm/861-brcmfmac-workaround-bug-with-some-inconsistent-BSSes.patch
 
b/package/kernel/mac80211/patches/brcm/861-brcmfmac-workaround-bug-with-some-inconsistent-BSSes.patch
index 069aab82497c..4e79111377fc 100644
--- 
a/package/kernel/mac80211/patches/brcm/861-brcmfmac-workaround-bug-with-some-inconsistent-BSSes.patch
+++ 
b/package/kernel/mac80211/patches/brcm/861-brcmfmac-workaround-bug-with-some-inconsistent-BSSes.patch
@@ -10,7 +10,7 @@ Signed-off-by: Rafał Miłecki 
 
 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
 +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
-@@ -712,8 +712,36 @@ static struct wireless_dev *brcmf_cfg802
+@@ -714,8 +714,36 @@ static struct wireless_dev *brcmf_cfg802
struct brcmf_cfg80211_info *cfg = wiphy_to_cfg(wiphy);
struct brcmf_pub *drvr = cfg->pub;
struct wireless_dev *wdev;
diff --git 
a/package/kernel/mac80211/patches/brcm/862-brcmfmac-Disable-power-management.patch
 
b/package/kernel/mac80211/patches/brcm/862-brcmfmac-Disable-power-management.patch
index 8a20ae133a96..91bf464ede55 100644
--- 
a/package/kernel/mac80211/patches/brcm/862-brcmfmac-Disable-power-management.patch
+++ 
b/package/kernel/mac80211/patches/brcm/862-brcmfmac-Disable-power-management.patch
@@ -14,7 +14,7 @@ Signed-off-by: Phil Elwell 
 
 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
 +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
-@@ -2953,6 +2953,10 @@ brcmf_cfg80211_set_power_mgmt(struct wip
+@@ -2955,6 +2955,10 @@ brcmf_cfg80211_set_power_mgmt(struct wip
 * preference in cfg struct to apply this to
 * FW later while initializing the

Re: [RFC PATCH 0/4] mac80211: Update to version 5.10-rc6

2020-12-02 Thread Hauke Mehrtens

On 12/2/20 7:15 PM, Daniel Golle wrote:

On Wed, Dec 02, 2020 at 08:56:50PM +0300, Andrey Jr. Melnikov wrote:

Adrian Schmutzler  wrote:

[-- multipart/signed, encoding 7bit, 56 lines --]



Hauke Mehrtens (4):
   mac80211: Update to version 5.8.18-test2
   mac80211: Update to version 5.9.11-test3
   mac80211: Update to version 5.10-rc6-test5

Can you squash these three commints into one?



Having each major version separate might be helpful to track changes more 
easily ...


What is the intermediate commits for in this case? Can't see any reason to
enalgre git history.


Having them can be nice for bisecting in case of trouble.


It would be even easier for me if I squash them together, but I already 
had the case that someone found a bug and it helped to know where it broke.


Hauke



OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH 19.07] mac80211: Update to version 4.19.161-1

2020-12-06 Thread Hauke Mehrtens
The removed patches were applied upstream.

The changes to 357-mac80211-optimize-skb-resizing.patch are more
complex. I think the patch already took care of the new changes done
upstream.

Signed-off-by: Hauke Mehrtens 
---
 package/kernel/mac80211/Makefile  |  8 +--
 .../patches/ath/404-regd_no_assoc_hints.patch |  4 +-
 ...-of-peer_bw_rxnss_override-parameter.patch |  2 +-
 ...rolling-support-for-various-chipsets.patch | 12 ++--
 ...rd_type-used-for-nvram-file-selectio.patch |  2 +-
 ...-add-credit-numbers-updating-support.patch | 10 ++--
 ...c-handle-compressed-tx-status-signal.patch | 16 +++---
 ...dd-support-for-CYW43012-SDIO-chipset.patch |  4 +-
 ...43012-F2-watermark-setting-to-fix-DM.patch |  2 +-
 ...and-dump-trap-info-during-sdio-probe.patch |  6 +-
 ...e-bphy_err-in-all-wiphy-related-code.patch | 30 +-
 ...fix-NULL-pointer-derefence-during-US.patch |  2 +-
 ...rcmf_attach-and-brcmf_detach-functio.patch |  2 +-
 ...-F2-blocksize-and-watermark-for-4359.patch |  2 +-
 ...mac-use-true-false-for-bool-variable.patch |  2 +-
 ...x-OOB-interrupt-initialization-on-br.patch |  4 +-
 ...e-linux-stddef.h-instead-of-stddef.h.patch | 33 ---
 .../110-mac80211_keep_keys_on_stop_ap.patch   |  2 +-
 .../subsys/140-tweak-TSQ-setting.patch|  2 +-
 .../mac80211/patches/subsys/210-ap_scan.patch |  2 +-
 ...d-stop-start-logic-for-software-TXQs.patch |  4 +-
 ...l-remove-unnecessary-debugfs-cleanup.patch | 12 ++--
 ...l-merge-with-minstrel_ht-always-enab.patch |  6 +-
 ...l_ht-improve-rate-probing-for-device.patch |  2 +-
 .../320-mac80211-Add-TXQ-scheduling-API.patch |  4 +-
 ...-Add-airtime-statistics-and-settings.patch |  6 +-
 ...time-accounting-and-scheduling-to-TX.patch | 12 ++--
 ...pose-ieee80211_schedule_txq-function.patch |  2 +-
 ...allow-bigger-VHT-MPDUs-than-the-hard.patch | 34 
 ...0211-add-hdrlen-to-ieee80211_tx_data.patch |  6 +-
 ...1-add-TX_NEEDS_ALIGNED4_SKBS-hw-flag.patch | 14 ++---
 ...locking-for-txq-scheduling-airtime-f.patch | 10 ++--
 ...te-hash-for-fq-without-holding-fq-lo.patch |  6 +-
 ...e-dequeue-late-tx-handlers-without-h.patch |  8 +--
 .../357-mac80211-optimize-skb-resizing.patch  | 55 ---
 ...ee80211_schedule_txq-schedule-empty-.patch |  6 +-
 ...ing-iTXQ-select-the-queue-in-ieee802.patch |  4 +-
 ...l-remove-divisions-in-tx-status-path.patch |  6 +-
 ...l_ht-replace-rate-stats-ewma-with-a-.patch | 10 ++--
 ...l_ht-rename-prob_ewma-to-prob_avg-us.patch |  6 +-
 ...domize-BA-session-dialog-token-alloc.patch |  2 +-
 ...al-BSS-receive-time-to-survey-inform.patch |  2 +-
 ...11-fix-misplaced-while-instead-of-if.patch | 31 ---
 .../522-mac80211_configure_antenna_gain.patch |  6 +-
 44 files changed, 158 insertions(+), 243 deletions(-)
 delete mode 100644 
package/kernel/mac80211/patches/subsys/090-wireless-Use-linux-stddef.h-instead-of-stddef.h.patch
 delete mode 100644 
package/kernel/mac80211/patches/subsys/331-mac80211-do-not-allow-bigger-VHT-MPDUs-than-the-hard.patch
 delete mode 100644 
package/kernel/mac80211/patches/subsys/370-mac80211-fix-misplaced-while-instead-of-if.patch

diff --git a/package/kernel/mac80211/Makefile b/package/kernel/mac80211/Makefile
index 8faf5b65b5..02d717127b 100644
--- a/package/kernel/mac80211/Makefile
+++ b/package/kernel/mac80211/Makefile
@@ -10,10 +10,10 @@ include $(INCLUDE_DIR)/kernel.mk
 
 PKG_NAME:=mac80211
 
-PKG_VERSION:=4.19.137-1
-PKG_RELEASE:=2
-PKG_SOURCE_URL:=@KERNEL/linux/kernel/projects/backports/stable/v4.19.137/
-PKG_HASH:=dc5eea4f77fc5c43b69e38f46fbf766880fa4bdeef83dcc8dcc85aa6b645bb7c
+PKG_VERSION:=4.19.161-1
+PKG_RELEASE:=1
+PKG_SOURCE_URL:=@KERNEL/linux/kernel/projects/backports/stable/v4.19.161/
+PKG_HASH:=01a4173ba180eb8ca67c898239d5accb49a3ea9aea51510e17d5c937d6e93f9a
 
 PKG_SOURCE:=backports-$(PKG_VERSION).tar.xz
 PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/backports-$(PKG_VERSION)
diff --git a/package/kernel/mac80211/patches/ath/404-regd_no_assoc_hints.patch 
b/package/kernel/mac80211/patches/ath/404-regd_no_assoc_hints.patch
index dc4068e542..16e40380e7 100644
--- a/package/kernel/mac80211/patches/ath/404-regd_no_assoc_hints.patch
+++ b/package/kernel/mac80211/patches/ath/404-regd_no_assoc_hints.patch
@@ -1,6 +1,6 @@
 --- a/net/wireless/reg.c
 +++ b/net/wireless/reg.c
-@@ -3034,6 +3034,8 @@ void regulatory_hint_country_ie(struct w
+@@ -3037,6 +3037,8 @@ void regulatory_hint_country_ie(struct w
enum environment_cap env = ENVIRON_ANY;
struct regulatory_request *request = NULL, *lr;
  
@@ -9,7 +9,7 @@
/* IE len must be evenly divisible by 2 */
if (country_ie_len & 0x01)
return;
-@@ -3259,6 +3261,7 @@ static bool is_wiphy_all_set_reg_flag(en
+@@ -3262,6 +3264,7 @@ static bool is_wiphy_all_set_reg_flag(en
  
  void regulatory_hint_disconnect(void)
  {
diff --git 
a/package/kernel/mac80211/patches/ath/972-ath10k_fix-crash-due-to-wrong-handling-of-peer_bw_rxnss_override-parameter.patch
 
b/package/kernel/mac80211/patches

Re: [PATCH 1/2] hostapd: run as user 'network'

2020-12-07 Thread Hauke Mehrtens

On 12/7/20 7:14 PM, Daniel Golle wrote:

Granting capabilities CAP_NET_ADMIN and CAP_NET_RAW allows running
hostapd and wpa_supplicant without root priviledges.
Add ubus acl allowing the necessary ubus interactions for the 'network'
user running hostapd/wpa_supplicant.
To still allow netifd to acquire the PID of wpa_supplicant and hostapd
introduce a new ubus method 'getpid' for both of them and make use of
that instead of querying procd (which will not work, as procd will
return the PID of ujail)

Signed-off-by: Daniel Golle 
---
  package/network/services/hostapd/Makefile |  9 ++--
  .../network/services/hostapd/files/hostapd.sh |  2 +-
  .../network/services/hostapd/files/wpad.init  | 16 ++
  .../network/services/hostapd/files/wpad.json  | 22 +++
  .../services/hostapd/files/wpad_acl.json  | 10 +
  .../services/hostapd/src/src/ap/ubus.c| 16 ++
  .../hostapd/src/wpa_supplicant/ubus.c | 16 ++
  7 files changed, 88 insertions(+), 3 deletions(-)
  create mode 100644 package/network/services/hostapd/files/wpad.json
  create mode 100644 package/network/services/hostapd/files/wpad_acl.json

diff --git a/package/network/services/hostapd/Makefile 
b/package/network/services/hostapd/Makefile
index 61b2a548ef..386c17f99d 100644
--- a/package/network/services/hostapd/Makefile
+++ b/package/network/services/hostapd/Makefile
@@ -7,7 +7,7 @@
  include $(TOPDIR)/rules.mk
  
  PKG_NAME:=hostapd

-PKG_RELEASE:=18
+PKG_RELEASE:=19
  
  PKG_SOURCE_URL:=http://w1.fi/hostap.git

  PKG_SOURCE_PROTO:=git
@@ -149,6 +149,7 @@ define Package/hostapd/Default
TITLE:=IEEE 802.1x Authenticator
URL:=http://hostap.epitest.fi/
DEPENDS:=$(DRV_DEPENDS) +hostapd-common +libubus
+  USERID:=network=101:network=101


Do we have some central uid assignment or at least a list of all used 
uids? We should prevent that someone uses 101 on some other package.

Do you plan to add more services under the network user?


PROVIDES:=hostapd
CONFLICTS:=$(HOSTAPD_PROVIDERS)
HOSTAPD_PROVIDERS+=$(1)
@@ -232,6 +233,7 @@ define Package/wpad/Default
SUBMENU:=WirelessAPD
TITLE:=IEEE 802.1x Auth/Supplicant
DEPENDS:=$(DRV_DEPENDS) +hostapd-common +libubus
+  USERID:=network=101:network=101
URL:=http://hostap.epitest.fi/
PROVIDES:=hostapd wpa-supplicant
CONFLICTS:=$(HOSTAPD_PROVIDERS) $(SUPPLICANT_PROVIDERS)
@@ -346,6 +348,7 @@ define Package/wpa-supplicant/Default
TITLE:=WPA Supplicant
URL:=http://hostap.epitest.fi/wpa_supplicant/
DEPENDS:=$(DRV_DEPENDS) +hostapd-common +libubus
+  USERID:=network=101:network=101
PROVIDES:=wpa-supplicant
CONFLICTS:=$(SUPPLICANT_PROVIDERS)
SUPPLICANT_PROVIDERS+=$(1)
@@ -597,10 +600,12 @@ define Install/supplicant
  endef
  
  define Package/hostapd-common/install

-   $(INSTALL_DIR) $(1)/lib/netifd $(1)/etc/rc.button 
$(1)/etc/hotplug.d/ieee80211 $(1)/etc/init.d
+   $(INSTALL_DIR) $(1)/etc/capabilities $(1)/etc/rc.button 
$(1)/etc/hotplug.d/ieee80211 $(1)/etc/init.d $(1)/lib/netifd  
$(1)/usr/share/acl.d
$(INSTALL_DATA) ./files/hostapd.sh $(1)/lib/netifd/hostapd.sh
$(INSTALL_BIN) ./files/wpad.init $(1)/etc/init.d/wpad
$(INSTALL_BIN) ./files/wps-hotplug.sh $(1)/etc/rc.button/wps
+   $(INSTALL_DATA) ./files/wpad_acl.json $(1)/usr/share/acl.d
+   $(INSTALL_DATA) ./files/wpad.json $(1)/etc/capabilities
  endef
  
  define Package/hostapd/install

diff --git a/package/network/services/hostapd/files/hostapd.sh 
b/package/network/services/hostapd/files/hostapd.sh
index 41b04e6029..781a34028a 100644
--- a/package/network/services/hostapd/files/hostapd.sh
+++ b/package/network/services/hostapd/files/hostapd.sh
@@ -1365,6 +1365,7 @@ wpa_supplicant_run() {
_wpa_supplicant_common "$ifname"
  
  	ubus wait_for wpa_supplicant

+   local supplicant_pid=$(ubus call wpa_supplicant getpid | jsonfilter -l 
1 -e @.pid)
ubus call wpa_supplicant config_add "{ \
\"driver\": \"${_w_driver:-wext}\", \"ctrl\": \"$_rpath\", \
\"iface\": \"$ifname\", \"config\": \"$_config\" \
@@ -1376,7 +1377,6 @@ wpa_supplicant_run() {
  
  	[ "$ret" != 0 ] && wireless_setup_vif_failed WPA_SUPPLICANT_FAILED
  
-	local supplicant_pid=$(ubus call service list '{"name": "wpad"}' | jsonfilter -l 1 -e "@['wpad'].instances['supplicant'].pid")

wireless_add_process "$supplicant_pid" "/usr/sbin/wpa_supplicant" 1
  
  	return $ret

diff --git a/package/network/services/hostapd/files/wpad.init 
b/package/network/services/hostapd/files/wpad.init
index 3198e9801f..6c60d539a2 100644
--- a/package/network/services/hostapd/files/wpad.init
+++ b/package/network/services/hostapd/files/wpad.init
@@ -9,17 +9,33 @@ NAME=wpad
  start_service() {
if [ -x "/usr/sbin/hostapd" ]; then
mkdir -p /var/run/hostapd
+   chown network:network /var/run/hostapd
procd_open_instance hostapd
 

OpenWrt 18.06.9 final service release

2020-12-09 Thread Hauke Mehrtens

Hi,

The OpenWrt Community is proud to announce the ninth service release of 
the stable OpenWrt 18.06 series. OpenWrt 18.06.9 brings security fixes, 
as well as the usual device support fixes and core components update.


End of support for OpenWrt 18.06
This release is the final one for OpenWrt 18.06. You should consider 
upgrading to a newer version (OpenWrt 19.07 or later)


-
The main highlights of this service release are:

Security fixes
* Security Advisory 2020-12-09-2 - libuci import heap use after free
  (CVE-2020-28951)
* Security Advisory 2020-12-09-1 - Linux kernel - ICMP rate limiting can
  be used to facilitate DNS poisoning attack (CVE-2020-25705)
* Security Advisory 2020-05-06-2 - relayd out-of-bounds reads of heap
  data and possible buffer overflow (CVE-2020-11752)
* Security Advisory 2020-05-06-1 - umdns out-of-bounds reads of heap
  data and possible buffer overflow (CVE-2020-11750)
* libjson-c: fix out of bounds write vulnerability (CVE-2020-12762)
* mac80211: backport some fixes for the Kr00k vulnerability in WPA. It
  is not clear which wireless driver/firmware combinations could be
  vulnerable in OpenWrt. These backported patches harden mac80211 just
  in case.

Note: security fixes for most packages can also be applied by upgrading 
only the affected packages on running devices, without the need for a 
full firmware upgrade. This can be done with opkg update; opkg upgrade 
the_package_name or through the LuCI web interface.


Nevertheless, we encourage all users to upgrade their devices to OpenWrt 
18.06.9 or a newer major release whenever possible.


Bug fixes
* libubox: Fix regression that could cause procd to fail to start or
  restart some services. This is especially visible as it broke LuCI
  when upgrading from older 18.06.X releases (FS#3177)
* musl: fix locking synchronization bug
* kernel: backport out-of-memory fix for non-Ethernet devices
* firewall: fix TCP MSS clamping that was only applied on one direction
  (FS#3231)

Device support
* brcm63xx: fix BCM6348/BCM6358 hangs while booting (FS#2202)
* ipq40xx: fix essedma MAC hang by disabling TCP segmentation offload
  for IPv6
* ramips: fix USB detection on all rt305x devices
* mikrotik: add support for the new ath9k caldata encoding (LZO) found
  in newer hardware revisions
* Various fixes for ZyXEL Keenetic, ZyXEL NBG6616, TP-Link Archer C60
  v1/v2, GL.iNet GL-AR750S, Embedded Wireless Dorin, Pirelli A226M-FWB,
  Arduino Yun

Core components update
* Linux kernel updated from 4.9.214 to 4.9.243 and from 4.14.171 to
  4.14.206
* mbedtls updated from 2.16.4 to 2.16.8
* wireguard updated from 0.0.20190601 to 1.0.20200611
-

For latest information about the 18.06 series, refer to the wiki at:
https://openwrt.org/releases/18.06/

To download the v18.06.9 images, navigate to:
https://downloads.openwrt.org/releases/18.06.9/targets/

As always, a big thank you goes to all our active package maintainers,
testers, documenters, and supporters.

Have fun!

The OpenWrt Community



OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


OpenWrt 19.07.5 service release

2020-12-09 Thread Hauke Mehrtens

Hi,

The OpenWrt community is proud to announce the fifth service release of 
OpenWrt 19.07. It focuses on fixing several regression as well as 
security issues.


Main changes from OpenWrt 19.07.4

Security fixes
* Security Advisory 2020-12-09-2 - libuci import heap use after free
  (CVE-2020-28951)
* Security Advisory 2020-12-09-1 - Linux kernel - ICMP rate limiting can
  be used to facilitate DNS poisoning attack (CVE-2020-25705)
* musl: fix possible destination buffer overflow in some applications
  (CVE-2020-28928)

Note: security fixes for most packages can also be applied by upgrading 
only the affected packages on running devices, without the need for a 
full firmware upgrade. This can be done with opkg update; opkg upgrade 
the_package_name or through the LuCI web interface.


Nevertheless, we encourage all users to upgrade their devices to OpenWrt 
19.07.5 or later versions whenever possible.


Major bug fixes
* Fix regression in 19.07.4 causing transmit timeout and packet loss on
  mt7620 devices: FS#3332
* Fix regression in 19.07.4 where VLAN tagging no longer works on
  ipq40xx devices: FS#3239
* Fix long-standing instability issue on Ethernet link on several ath79
  devices: FS#2216, FS#2730, FS#3225

Device support
* Various fixes for My Net Range Extender, PowerCloud Systems CAP324,
  D-Link DIR-645, Quad-E4G
* Support newer version of Turris Omnia
* Fix ath9k firmware extraction for UniFi AP
* Fix MAC address assignment on UniFi AC family (UniFi AC Mesh,
  UniFi AC LR, UniFi Lite)
* Allow booting espressobin with a mainline firmware

Various fixes and improvements
* Fix support for 3G USB modems
* uhttpd: fix spurious keepalive connection timeouts
* firewall: fix parsing of boolean attributes
* mac80211: do not allow bigger VHT MPDUs than the hardware supports

LuCI web interface
* Set the fallback default of rollback timeout to 90s
* luci-app-firewall: fix removing networks from zone (GH#4523, GH#4573)
* rpcd-mod-luci: handle lease files from all dnsmasq/odhcpd sections
  (GH#911, GH#4303, GH#4308)
* luci-app-firewall: rules: add ICMPv6 Packet Too Big (Type 2)
* Update translations from weblate

Core components
* Update Linux kernel from 4.14.195 to 4.14.209
* Update intel-microcode from 20190918 to 20200616
* Update amd-microcode from 20180524 to 20191218


Full release notes and upgrade instructions are available at
https://openwrt.org/releases/19.07/notes-19.07.5

In particular, make sure to read the regressions and known issues before 
upgrading:

https://openwrt.org/releases/19.07/notes-19.07.5#regressions

For a very detailed list of all changes since 19.07.4, refer to
https://openwrt.org/releases/19.07/changelog-19.07.5

- ---

To stay informed of new OpenWrt releases and security advisories, there
are new channels available:

 * a low-volume mailing list for important announcements: 
https://lists.openwrt.org/mailman/listinfo/openwrt-announce


 * a dedicated "announcements" section in the forum: 
https://forum.openwrt.org/c/announcements/14


 * other announcement channels (such as RSS feeds) might be added in the
   future, they will be listed at https://openwrt.org/contact

- ---

For latest information about the 19.07 series, refer to the wiki at:
https://openwrt.org/releases/19.07/

To download a OpenWrt 19.07.5 firmware image for your device, head to 
the Table of Hardware:

https://openwrt.org/toh/start

Or navigate directly in the list of firmware images:
https://downloads.openwrt.org/releases/19.07.5/targets/

As always, a big thank you goes to all our active package maintainers,
testers, documenters, and supporters.

Have fun!

The OpenWrt Community



OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH] build/prereq: requie make 4.1 or later

2020-12-13 Thread Hauke Mehrtens

On 12/13/20 8:17 AM, Paul Spooren wrote:

FS#2086 "IS_TTY in the makefile is broken" reports flawed detection of
stdout piping to a file. The issue describes how e.g. terminal color
codes and up in log files if running make like `make > log.txt`.

The proposed solution uses the make variable "MAKE_TERMOUT", which was
introduced in make 4.1. All major distributions seem to updated to 4.1
or later, so this ideally dosn't break anything.


Ubuntu uses make >= 4.1 since 16.04 LTS. (all supported versions)
https://distrowatch.com/table.php?distribution=ubuntu

RedHat 8 uses make 4.2.1, RedHat 7 uses 3.82 which would be too old.
https://distrowatch.com/table.php?distribution=redhat

Debian uses make >= 4.1 since 9 stretch (oldstable)
https://distrowatch.com/table.php?distribution=debian

Please check what is used on MacOS with Felix or Kevin.


Signed-off-by: Paul Spooren 
---
  include/prereq-build.mk | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/include/prereq-build.mk b/include/prereq-build.mk
index 5045fabdfb..ad204e95e8 100644
--- a/include/prereq-build.mk
+++ b/include/prereq-build.mk
@@ -14,8 +14,8 @@ PKG_NAME:=Build dependency
  
  # Required for the toolchain

  $(eval $(call TestHostCommand,working-make, \
-   Please install GNU make v3.82 or later. (This version has bugs), \
-   $(MAKE) -v | grep -E 'Make (3\.8[2-9]|3\.9[0-9]|[4-9]\.)'))
+   Please install GNU make v4.1 or later., \
+   $(MAKE) -v | grep -E 'Make (4\.[1-9]|[5-9]\.)'))
  
  $(eval $(call TestHostCommand,case-sensitive-fs, \

OpenWrt can only be built on a case-sensitive filesystem, \






OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [RFC PATCH 0/4] mac80211: Update to version 5.10-rc6

2020-12-14 Thread Hauke Mehrtens

On 12/1/20 11:19 PM, Hauke Mehrtens wrote:

This updates mac80211 to backports version 5.10-rc6.
This is currently only the test version, I will release official
versions of backports in the next days and then update these patches.

Kernel 5.10 should be an LTS kernel so we will get updates for it the
next 5 years, I would prefer to use backports based on this version in
our next release.

Please test this and report error to me.

The changes are also in my stating tree:
https://git.openwrt.org/?p=openwrt/staging/hauke.git;a=shortlog;h=refs/heads/mac80211-5.10

Hauke Mehrtens (4):
   mac80211: Update to version 5.8.18-test2
   mac80211: Update to version 5.9.11-test3
   mac80211: Update to version 5.10-rc6-test5
   iw: Update to version 5.9


Hi,

I haven't received a bug report so far, so this looks good or nobody 
tried this. ;-)


We deiced to not merge this into master before branching as the current 
version based on Linux 5.8 is pretty stable and got a lot of testing.
We plan to merge this into master after branching, then it gets testing 
in master and we will backport this into a minor stable release later to 
be able to provide security updates for the wireless drivers.


The kernel 5.8 does not get any security updates any more and we do not 
have the manpower to maintain this on our own.


A more recent version of these patches is available here:
https://git.openwrt.org/?p=openwrt/staging/hauke.git;a=shortlog;h=refs/heads/mac80211-5.10
This uses the official backports binaries, I will rebase and update this 
form time to time.


Hauke



OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH] e2fsprogs: Add TARGET_LDFLAGS to e4crypt

2020-12-15 Thread Hauke Mehrtens
The TARGET_LDFLAGS were dropped in the linking of e4crypt.

Signed-off-by: Hauke Mehrtens 
---
 ...build-Add-SYSLIBS-to-e4crypt-linking.patch | 28 +++
 1 file changed, 28 insertions(+)
 create mode 100644 
package/utils/e2fsprogs/patches/003-build-Add-SYSLIBS-to-e4crypt-linking.patch

diff --git 
a/package/utils/e2fsprogs/patches/003-build-Add-SYSLIBS-to-e4crypt-linking.patch
 
b/package/utils/e2fsprogs/patches/003-build-Add-SYSLIBS-to-e4crypt-linking.patch
new file mode 100644
index ..dad71cf0b33a
--- /dev/null
+++ 
b/package/utils/e2fsprogs/patches/003-build-Add-SYSLIBS-to-e4crypt-linking.patch
@@ -0,0 +1,28 @@
+From e33ecf1595e390b2657018442c68ae824b3e13b4 Mon Sep 17 00:00:00 2001
+From: Hauke Mehrtens 
+Date: Tue, 15 Dec 2020 23:58:53 +0100
+Subject: [PATCH e2fsprogs] build: Add SYSLIBS to e4crypt linking
+
+The $(SYSLIBS) was missing when linking the e4crypt application. This is
+available in the e4crypt.profiled variant, so I assume this was just
+missing in the normal variant and is not left out intentionally.
+
+This fixes building e2fsprogrs with -fsanitize=undefined in the global
+CFLAGS nad LDFLAGS.
+
+Signed-off-by: Hauke Mehrtens 
+---
+ misc/Makefile.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/misc/Makefile.in
 b/misc/Makefile.in
+@@ -242,7 +242,7 @@ e4defrag: $(E4DEFRAG_OBJS) $(DEPLIBS)
+ e4crypt: $(E4CRYPT_OBJS) $(DEPLIBS) $(DEPSTATIC_LIBUUID)
+   $(E) "  LD $@"
+   $(Q) $(CC) $(ALL_LDFLAGS) -o e4crypt $(E4CRYPT_OBJS) \
+-  $(LIBUUID) $(LIBS)
++  $(LIBUUID) $(LIBS) $(SYSLIBS)
+ 
+ e4defrag.profiled: $(E4DEFRAG_OBJS) $(PROFILED_DEPLIBS)
+   $(E) "  LD $@"
-- 
2.20.1


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH] toolchain: gcc: Remove support for GCC 5

2020-12-15 Thread Hauke Mehrtens
GCC was used in 17.01 as the default compiler the last time. We do not
test this old GCC version any more and there are some known problems it
fails to compile the U-Boot for the Allwinner A64 SoC.

Just remove it to make it clear that we will not support this old GCC
version any more.

Signed-off-by: Hauke Mehrtens 
---
 toolchain/gcc/Config.in   |4 -
 toolchain/gcc/Config.version  |5 -
 toolchain/gcc/common.mk   |4 -
 .../001-revert_register_mode_search.patch |   65 -
 .../patches/5.5.0/002-case_insensitive.patch  |   14 -
 .../gcc/patches/5.5.0/010-documentation.patch |   23 -
 .../patches/5.5.0/020-no-plt-backport.patch   |   28 -
 .../5.5.0/040-fix-mips-ICE-PR-68400.patch |   23 -
 ...efine-__always_inline-in-local_atomi.patch | 1092 -
 .../gcc/patches/5.5.0/200-musl_config.patch   |  309 -
 .../gcc/patches/5.5.0/201-musl_arm.patch  |   43 -
 .../gcc/patches/5.5.0/202-musl_mips.patch |   35 -
 .../gcc/patches/5.5.0/203-musl_powerpc.patch  |  209 
 toolchain/gcc/patches/5.5.0/204-musl_sh.patch |   39 -
 .../gcc/patches/5.5.0/205-musl_x86.patch  |   41 -
 .../gcc/patches/5.5.0/206-musl_aarch64.patch  |   31 -
 .../patches/5.5.0/207-musl_fixincludes.patch  |   30 -
 .../patches/5.5.0/209-musl_libstdc++.patch|   72 --
 .../gcc/patches/5.5.0/230-musl_libssp.patch   |   13 -
 .../patches/5.5.0/240-musl-libitm-fixes.patch |   61 -
 .../gcc/patches/5.5.0/250-add-musl.patch  |  120 --
 .../5.5.0/260-musl-add-unwind-fix.patch   |   34 -
 .../270-musl-add-powerpc-softfloat-fix.patch  |   24 -
 .../280-musl-disable-ifunc-by-default.patch   |   36 -
 .../300-mips_Os_cpu_rtx_cost_model.patch  |   14 -
 .../5.5.0/800-arm_v5te_no_ldrd_strd.patch |   11 -
 .../5.5.0/810-arm-softfloat-libgcc.patch  |   25 -
 .../gcc/patches/5.5.0/820-libgcc_pic.patch|   36 -
 .../5.5.0/830-arm_unbreak_armv4t.patch|   13 -
 .../5.5.0/840-armv4_pass_fix-v4bx_to_ld.patch |   19 -
 .../patches/5.5.0/850-use_shared_libgcc.patch |   47 -
 .../patches/5.5.0/851-libgcc_no_compat.patch  |   12 -
 .../patches/5.5.0/870-ppc_no_crtsavres.patch  |   11 -
 .../patches/5.5.0/880-no_java_section.patch   |   11 -
 .../gcc/patches/5.5.0/881-no_tm_section.patch |   11 -
 .../patches/5.5.0/900-bad-mips16-crt.patch|9 -
 .../gcc/patches/5.5.0/910-mbsd_multi.patch|  222 
 .../5.5.0/920-specs_nonfatal_getenv.patch |   15 -
 .../5.5.0/930-fix-mips-noexecstack.patch  |  111 --
 .../931-fix-MIPS-softfloat-build-issue.patch  |  167 ---
 .../5.5.0/940-no-clobber-stamp-bits.patch |   11 -
 .../5.5.0/950-cpp_file_path_translation.patch |  182 ---
 toolchain/gcc/patches/5.5.0/960-go_libm.patch |   11 -
 .../gcc/patches/5.5.0/970-warn_bug.patch  |   11 -
 44 files changed, 3304 deletions(-)
 delete mode 100644 
toolchain/gcc/patches/5.5.0/001-revert_register_mode_search.patch
 delete mode 100644 toolchain/gcc/patches/5.5.0/002-case_insensitive.patch
 delete mode 100644 toolchain/gcc/patches/5.5.0/010-documentation.patch
 delete mode 100644 toolchain/gcc/patches/5.5.0/020-no-plt-backport.patch
 delete mode 100644 toolchain/gcc/patches/5.5.0/040-fix-mips-ICE-PR-68400.patch
 delete mode 100644 
toolchain/gcc/patches/5.5.0/050-libitm-Don-t-redefine-__always_inline-in-local_atomi.patch
 delete mode 100644 toolchain/gcc/patches/5.5.0/200-musl_config.patch
 delete mode 100644 toolchain/gcc/patches/5.5.0/201-musl_arm.patch
 delete mode 100644 toolchain/gcc/patches/5.5.0/202-musl_mips.patch
 delete mode 100644 toolchain/gcc/patches/5.5.0/203-musl_powerpc.patch
 delete mode 100644 toolchain/gcc/patches/5.5.0/204-musl_sh.patch
 delete mode 100644 toolchain/gcc/patches/5.5.0/205-musl_x86.patch
 delete mode 100644 toolchain/gcc/patches/5.5.0/206-musl_aarch64.patch
 delete mode 100644 toolchain/gcc/patches/5.5.0/207-musl_fixincludes.patch
 delete mode 100644 toolchain/gcc/patches/5.5.0/209-musl_libstdc++.patch
 delete mode 100644 toolchain/gcc/patches/5.5.0/230-musl_libssp.patch
 delete mode 100644 toolchain/gcc/patches/5.5.0/240-musl-libitm-fixes.patch
 delete mode 100644 toolchain/gcc/patches/5.5.0/250-add-musl.patch
 delete mode 100644 toolchain/gcc/patches/5.5.0/260-musl-add-unwind-fix.patch
 delete mode 100644 
toolchain/gcc/patches/5.5.0/270-musl-add-powerpc-softfloat-fix.patch
 delete mode 100644 
toolchain/gcc/patches/5.5.0/280-musl-disable-ifunc-by-default.patch
 delete mode 100644 
toolchain/gcc/patches/5.5.0/300-mips_Os_cpu_rtx_cost_model.patch
 delete mode 100644 toolchain/gcc/patches/5.5.0/800-arm_v5te_no_ldrd_strd.patch
 delete mode 100644 toolchain/gcc/patches/5.5.0/810-arm-softfloat-libgcc.patch
 delete mode 100644 toolchain/gcc/patches/5.5.0/820-libgcc_pic.patch
 delete mode 100644 toolchain/gcc/patches/5.5.0/830-arm_unbreak_armv4t.patch
 delete mode 100644 
toolchain/gcc/patches/5.5.0/840-armv4_pass_fix-v4bx_to_ld.patch
 delete mode 100644 toolchain/gcc/patches/5.5.0/850

Re: [PATCH] toolchain: gcc: Remove support for GCC 5

2020-12-15 Thread Hauke Mehrtens

On 12/16/20 1:21 AM, Paul Spooren wrote:



On Mi, Dez 16, 2020 at 00:24, Hauke Mehrtens  wrote:

GCC was used in 17.01 as the default compiler the last time. We do not
test this old GCC version any more and there are some known problems it
fails to compile the U-Boot for the Allwinner A64 SoC.

Just remove it to make it clear that we will not support this old GCC
version any more.

Signed-off-by: Hauke Mehrtens 
---


Acked-by: Paul Spooren 

This goes hand in hand with Petrs gcc6+ patches.

I'm wondering if these major version requirement changes should happen 
before or after the 20.x change, I'd like the former.


In do not want to support gcc 5 in the next major release and think we 
should remove this before branching. I am still unsure about gcc 7.


Hauke



OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH] build: Add IRQSOFF and PREEMPT TRACER kernel config option

2020-12-15 Thread Hauke Mehrtens
From: Hauke Mehrtens 

This adds the CONFIG_IRQSOFF_TRACER and the CONFIG_PREEMPT_TRACER kernel
configuration option to the OpenWrt menu. This can be used to debug
latencies in the system.
The CONFIG_PREEMPT_TRACER option needs the CONFIG_PREEMPT option which is
supposed to be used for Low-Latency Desktop and not used by many targets
in OpenWrt.

The help text is copied from the Linux kernel Kconfig.

Signed-off-by: Hauke Mehrtens 
---
 config/Config-kernel.in | 34 ++
 1 file changed, 34 insertions(+)

diff --git a/config/Config-kernel.in b/config/Config-kernel.in
index 3f013aa2b21f..22e2286b8ded 100644
--- a/config/Config-kernel.in
+++ b/config/Config-kernel.in
@@ -266,6 +266,40 @@ config KERNEL_FUNCTION_PROFILER
depends on KERNEL_FUNCTION_TRACER
default n
 
+config KERNEL_IRQSOFF_TRACER
+   bool "Interrupts-off Latency Tracer"
+   depends on KERNEL_FTRACE
+   help
+ This option measures the time spent in irqs-off critical
+ sections, with microsecond accuracy.
+
+ The default measurement method is a maximum search, which is
+ disabled by default and can be runtime (re-)started
+ via:
+
+ echo 0 > /sys/kernel/debug/tracing/tracing_max_latency
+
+ (Note that kernel size and overhead increase with this option
+ enabled. This option and the preempt-off timing option can be
+ used together or separately.)
+
+config KERNEL_PREEMPT_TRACER
+   bool "Preemption-off Latency Tracer"
+   depends on KERNEL_FTRACE
+   help
+ This option measures the time spent in preemption-off critical
+ sections, with microsecond accuracy.
+
+ The default measurement method is a maximum search, which is
+ disabled by default and can be runtime (re-)started
+ via:
+
+ echo 0 > /sys/kernel/debug/tracing/tracing_max_latency
+
+ (Note that kernel size and overhead increase with this option
+ enabled. This option and the irqs-off timing option can be
+ used together or separately.)
+
 config KERNEL_DEBUG_KERNEL
bool
default n
-- 
2.20.1


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH] toolchain: gcc: Remove support for GCC 5

2020-12-16 Thread Hauke Mehrtens

On 12/16/20 4:00 AM, Rosen Penev wrote:

On Tue, Dec 15, 2020 at 5:14 PM Hauke Mehrtens  wrote:


On 12/16/20 1:21 AM, Paul Spooren wrote:



On Mi, Dez 16, 2020 at 00:24, Hauke Mehrtens  wrote:

GCC was used in 17.01 as the default compiler the last time. We do not
test this old GCC version any more and there are some known problems it
fails to compile the U-Boot for the Allwinner A64 SoC.

Just remove it to make it clear that we will not support this old GCC
version any more.

Signed-off-by: Hauke Mehrtens 
---


Acked-by: Paul Spooren 

This goes hand in hand with Petrs gcc6+ patches.

I'm wondering if these major version requirement changes should happen
before or after the 20.x change, I'd like the former.


In do not want to support gcc 5 in the next major release and think we
should remove this before branching. I am still unsure about gcc 7.

Some packages in the packages feed do not build with GCC7. gerbera
comes to mind (requires GCC8 because of C++17).


Thanks for the information, I do not see this as a problem.
The older compiler versions could be used to check if a problem also 
existed with the older compiler version, but if not everything compiles 
on the older versions this is fine with me. We switched to GCC 8 in 
October 2019, so more than a year ago, I do not expect there many 
regressions which we haven't found yet.


Hauke



OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [RFC] raise gcc/make versions for 20.x

2020-12-16 Thread Hauke Mehrtens

On 12/16/20 4:03 AM, Rosen Penev wrote:

On Tue, Dec 15, 2020 at 6:31 PM Paul Spooren  wrote:


Hi,

I've seen two patches for version raises of build requirements and
would like to know if we should merge them before or after 20.x.

make: 3.81.x -> 4.1.x
gcc: 4.8 -> 6.x

The issue is with EL7. That would break the ability to compile.

No idea about the former in terms of bugs. In terms of the latter,
there's a clang warning to fix the GCC 4.8 issue:
-Werror=gnu-empty-initializer .


Does OpenWrt master build with GCC 4.8 from RHEL 7 and we just see some 
additional warnings?


If we see an error message could you please post it.

Hauke



OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH] wireless-regdb: Update to version 2020.11.20

2020-12-16 Thread Hauke Mehrtens
9efa1da wireless-regdb: update regulatory rules for Egypt (EG)
ede87f5 wireless-regdb: restore channel 12 & 13 limitation in the US
5bcafa3 wireless-regdb: Update regulatory rules for Croatia (HR)
4e052f1 wireless-regdb: Update regulatory rules for Pakistan (PK) on 5GHz
f9dfc58 wireless-regdb: update 5.8 GHz regulatory rule for GB
c19aad0 wireless-regdb: Update regulatory rules for Kazakhstan (KZ)
07057d3 wireless-regdb: update regulatory database based on preceding changes

Signed-off-by: Hauke Mehrtens 
---
 package/firmware/wireless-regdb/Makefile | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/firmware/wireless-regdb/Makefile 
b/package/firmware/wireless-regdb/Makefile
index fc18d159b166..308ca40e22d6 100644
--- a/package/firmware/wireless-regdb/Makefile
+++ b/package/firmware/wireless-regdb/Makefile
@@ -1,12 +1,12 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=wireless-regdb
-PKG_VERSION:=2020.04.29
+PKG_VERSION:=2020.11.20
 PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
 PKG_SOURCE_URL:=@KERNEL/software/network/wireless-regdb/
-PKG_HASH:=89fd031aed5977c219a71501e144375a10e7c90d1005d5d086ea7972886a2c7a
+PKG_HASH:=b4164490d82ff7b0086e812ac42ab27baf57be24324d4c0ee1c5dd6ba27f2a52
 
 PKG_MAINTAINER:=Felix Fietkau 
 
-- 
2.20.1


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH] lantiq: falcon: mark as source only sub target

2020-12-16 Thread Hauke Mehrtens
The sub target does not support network and there are not so many users
out there, just mark it as source only, so we do jot have to build it.

The quality is not worse than before, it just does not make much sense
to build this automatically.

Signed-off-by: Hauke Mehrtens 
---
 target/linux/lantiq/falcon/target.mk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/target/linux/lantiq/falcon/target.mk 
b/target/linux/lantiq/falcon/target.mk
index 90f81d25ca86..c07c8c2d82bc 100644
--- a/target/linux/lantiq/falcon/target.mk
+++ b/target/linux/lantiq/falcon/target.mk
@@ -1,7 +1,7 @@
 ARCH:=mips
 SUBTARGET:=falcon
 BOARDNAME:=Falcon
-FEATURES+=nand
+FEATURES+=nand source-only
 CPU_TYPE:=24kc
 
 DEFAULT_PACKAGES+= kmod-leds-gpio \
-- 
2.20.1


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH] toolchain: Deactivate sanitizer on MIPS and ARC

2020-12-17 Thread Hauke Mehrtens
MIPS 32 bit support for sanitizer was added with GCC 9, MIPS 64 bit and
ARC is still not supported in GCC 10.

Deactivate them for now and change this when we change the default
compiler to GCC 9 or later.

Signed-off-by: Hauke Mehrtens 
---
 package/libs/toolchain/Makefile | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/package/libs/toolchain/Makefile b/package/libs/toolchain/Makefile
index 2f349d3d08cc..25e20dd6f94d 100644
--- a/package/libs/toolchain/Makefile
+++ b/package/libs/toolchain/Makefile
@@ -117,7 +117,7 @@ define Package/libasan
 $(call Package/gcc/Default)
   NAME:=libasan
   TITLE:=Runtime library for AddressSanitizer in GCC
-  DEPENDS:=@USE_GLIBC +librt +libstdcpp
+  DEPENDS:=@USE_GLIBC +librt +libstdcpp @!mips @!mipsel @!mips64 @!mips64el 
@!arc
   ABI_VERSION:=5
 endef
 
@@ -146,7 +146,7 @@ define Package/libtsan
 $(call Package/gcc/Default)
   NAME:=libtsan
   TITLE:=Runtime library for ThreadSanitizer in GCC
-  DEPENDS:=@USE_GLIBC +librt +libstdcpp
+  DEPENDS:=@USE_GLIBC +librt +libstdcpp @!mips @!mipsel @!mips64 @!mips64el 
@!arc
   ABI_VERSION:=0
 endef
 
@@ -175,7 +175,7 @@ define Package/liblsan
 $(call Package/gcc/Default)
   NAME:=liblsan
   TITLE:=Runtime library for LeakSanitizer in GCC
-  DEPENDS:=@USE_GLIBC +librt +libstdcpp
+  DEPENDS:=@USE_GLIBC +librt +libstdcpp @!mips @!mipsel @!mips64 @!mips64el 
@!arc
   ABI_VERSION:=0
 endef
 
@@ -204,7 +204,7 @@ define Package/libubsan
 $(call Package/gcc/Default)
   NAME:=libubsan
   TITLE:=Runtime library for UndefinedBehaviorSanitizer in GCC
-  DEPENDS:=@USE_GLIBC +librt +libstdcpp
+  DEPENDS:=@USE_GLIBC +librt +libstdcpp @!mips @!mipsel @!mips64 @!mips64el 
@!arc
   ABI_VERSION:=1
 endef
 
-- 
2.20.1


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH] mt76: Fix compile against glibc

2020-12-17 Thread Hauke Mehrtens
The mt76 test tools did not compile against glibc.

Signed-off-by: Hauke Mehrtens 
---
 ...et-mode-for-new-file-tmp-mt76-test-s.patch | 25 +++
 1 file changed, 25 insertions(+)
 create mode 100644 
package/kernel/mt76/patches/100-tools-Set-mode-for-new-file-tmp-mt76-test-s.patch

diff --git 
a/package/kernel/mt76/patches/100-tools-Set-mode-for-new-file-tmp-mt76-test-s.patch
 
b/package/kernel/mt76/patches/100-tools-Set-mode-for-new-file-tmp-mt76-test-s.patch
new file mode 100644
index ..71b43a1cb6d6
--- /dev/null
+++ 
b/package/kernel/mt76/patches/100-tools-Set-mode-for-new-file-tmp-mt76-test-s.patch
@@ -0,0 +1,25 @@
+From fe89f9bc4055fd6055ce8792a715a40a6c75ba44 Mon Sep 17 00:00:00 2001
+From: Hauke Mehrtens 
+Date: Thu, 17 Dec 2020 13:54:04 +0100
+Subject: [PATCH] tools: Set mode for new file /tmp/mt76-test-%s
+
+Set the file system mode for the newly created file /tmp/mt76-test-%s,
+this is mandatory according to the man page and fixes a compile error
+with glibc.
+
+Signed-off-by: Hauke Mehrtens 
+---
+ tools/eeprom.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/tools/eeprom.c
 b/tools/eeprom.c
+@@ -77,7 +77,7 @@ mt76_eeprom_create_file(void)
+   return -1;
+   }
+ 
+-  fd = open(eeprom_file, O_RDWR | O_CREAT | O_EXCL);
++  fd = open(eeprom_file, O_RDWR | O_CREAT | O_EXCL, 00644);
+   if (fd < 0)
+   goto out;
+ 
-- 
2.20.1


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH] kernel: add module for tcp-hybla congestion control algorithm

2020-12-23 Thread Hauke Mehrtens

On 12/23/20 8:36 AM, Yousong Zhou wrote:

Just the module and no default sysctl conf file is provided

Ref: https://forum.openwrt.org/t/20-xx-tcp-hybla/83076
Signed-off-by: Yousong Zhou 
---
  package/kernel/linux/modules/netsupport.mk | 20 
  1 file changed, 20 insertions(+)

diff --git a/package/kernel/linux/modules/netsupport.mk 
b/package/kernel/linux/modules/netsupport.mk
index 0c68b394d1..156892c952 100644
--- a/package/kernel/linux/modules/netsupport.mk
+++ b/package/kernel/linux/modules/netsupport.mk
@@ -949,6 +949,26 @@ endef
  $(eval $(call KernelPackage,tcp-bbr))
  
  
+define KernelPackage/tcp-hybla

+  SUBMENU:=$(NETWORK_SUPPORT_MENU)
+  TITLE:=TCP-Hybla congestion control algorithm
+  KCONFIG:= \
+   CONFIG_TCP_CONG_ADVANCED=y \


This is already set in the generic configuration for most targets:
-
:~/openwrt/openwrt/target/linux$ git grep TCP_CONG_ADVANCED
generic/config-5.4:CONFIG_TCP_CONG_ADVANCED=y
layerscape/armv7/config-5.4:# CONFIG_TCP_CONG_ADVANCED is not set
layerscape/armv8_64b/config-5.4:# CONFIG_TCP_CONG_ADVANCED is not set
zynq/config-5.4:# CONFIG_TCP_CONG_ADVANCED is not set
---

I would prefer if we set if for all targets, then it is not needed here 
any more.




+   CONFIG_TCP_CONG_HYBLA
+  FILES:=$(LINUX_DIR)/net/ipv4/tcp_hybla.ko
+  AUTOLOAD:=$(call AutoLoad,74,tcp_hybla)


Is AutoProbe working here?


+endef
+
+define KernelPackage/tcp-hybla/description
+  TCP-Hybla is a sender-side only change that eliminates penalization of
+  long-RTT, large-bandwidth connections, like when satellite legs are
+  involved, especially when sharing a common bottleneck with normal
+  terrestrial connections.
+endef
+
+$(eval $(call KernelPackage,tcp-hybla))
+
+
  define KernelPackage/ax25
SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=AX25 support




___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


arc700 + glibc fails

2020-12-23 Thread Hauke Mehrtens

Hi,

ARC was switched from uClibc to glibc here:
https://git.openwrt.org/95f1002acab574c24ad78f4453f091bf5a6731c7
uClibc support was removed from OpenWrt in the next commit.

It looks like arc700 is not supported by glibc 2.32, only ARC HS38 is 
supported.


On the arc770 target I am getting this compiler errors in the glibc:
-
msort.c: Assembler messages:
msort.c:201: Error: opcode 'dmb' not supported for target arc700
-
http://buildbot.openwrt.org/master/images/builders/arc770%2Fgeneric/builds/749

After this one is fixed I get this one:
-
../sysdeps/unix/sysv/linux/arc/syscall.S: Assembler messages:
../sysdeps/unix/sysv/linux/arc/syscall.S:27: Error: register must be 
either r0-r3 or r12-r15 for instruction 'mov_s'
../sysdeps/unix/sysv/linux/arc/syscall.S:28: Error: register must be 
either r0-r3 or r12-r15 for instruction 'mov_s'

-

Does anyone plan to fix glibc with arc700 or should we just remove the 
arc770 target, the arhs38 target is compiling?


I think the archs38 target was not runtime tested with glibc, could 
someone with access to the hardware please check if it is still working 
with glibc in master. gdbserver also got ARC support please also check 
if this now works and we can remove the dependency on !arc.


Hauke


This fixes the first build problem:

--- a/sysdeps/arc/atomic-machine.h
+++ b/sysdeps/arc/atomic-machine.h
@@ -64,6 +64,10 @@
   __atomic_val_bysize (__arch_compare_and_exchange_val, int,   \
   mem, new, old, __ATOMIC_ACQUIRE)

+#ifdef __ARCHS__
 #define atomic_full_barrier()  ({ asm volatile ("dmb 3":::"memory"); })
+#else
+#define atomic_full_barrier()  ({ asm volatile ("sync":::"memory"); })
+#endif

 #endif /* _ARC_BITS_ATOMIC_H */


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH] kernel: add module for tcp-hybla congestion control algorithm

2020-12-23 Thread Hauke Mehrtens

On 12/23/20 2:56 PM, Henrique de Moraes Holschuh wrote:

On 23/12/2020 09:08, Hauke Mehrtens wrote:

On 12/23/20 8:36 AM, Yousong Zhou wrote:

Just the module and no default sysctl conf file is provided

Ref: https://forum.openwrt.org/t/20-xx-tcp-hybla/83076
Signed-off-by: Yousong Zhou 
---
  package/kernel/linux/modules/netsupport.mk | 20 
  1 file changed, 20 insertions(+)

diff --git a/package/kernel/linux/modules/netsupport.mk 
b/package/kernel/linux/modules/netsupport.mk

index 0c68b394d1..156892c952 100644
--- a/package/kernel/linux/modules/netsupport.mk
+++ b/package/kernel/linux/modules/netsupport.mk
@@ -949,6 +949,26 @@ endef
  $(eval $(call KernelPackage,tcp-bbr))
+define KernelPackage/tcp-hybla
+  SUBMENU:=$(NETWORK_SUPPORT_MENU)
+  TITLE:=TCP-Hybla congestion control algorithm
+  KCONFIG:= \
+    CONFIG_TCP_CONG_ADVANCED=y \


This is already set in the generic configuration for most targets:
-
:~/openwrt/openwrt/target/linux$ git grep TCP_CONG_ADVANCED
generic/config-5.4:CONFIG_TCP_CONG_ADVANCED=y
layerscape/armv7/config-5.4:# CONFIG_TCP_CONG_ADVANCED is not set
layerscape/armv8_64b/config-5.4:# CONFIG_TCP_CONG_ADVANCED is not set
zynq/config-5.4:# CONFIG_TCP_CONG_ADVANCED is not set
---

I would prefer if we set if for all targets, then it is not needed 
here any more.


Is the size cost worth it?  What would it be?


As far as I understand this only allows to configure the TCP congestion 
control algorithm, but does not add any extra code.


It is not like Hybla in OpenWRT is going to be helpful at all for most 
uses for most users: it can only affect openwrt **when it is the TCP 
endpoint**, on non-tcp-proxied-by-the-CPE high-rtt links, and only when 
openwrt is *serving* the high-volume content.


If it is added as a module, like it is done here it is optional and the 
user has to selected it to integrate it.


I've read the linked page and it doesn't make sense *outside of the 
content servers* of that satellite ISP.  It can only affect anything if 
you are the TCP ENDPOINT serving contents, middle-boxes have no say in 
it unless they're L4/L7 *active* proxies -- i.e., they'd need to become 
the relevant TCP endpoint.


To me, Hybla seems like something you'd want behind a KConfig option 
(default N) for specialized uses, only.  Not something to be enabled by 
default on all targets. >
NOTE: Hybla on *servers* is a different deal, but since you cannot 
select it by TCP negotiation, it is still only ever going to be useful 
on the satellite access provider *content proxies and servers*, since 
nobody is going to enable it on general-purpose servers that cather for 
both high and low RTT clients.


Hauke

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH] pkgconf: disable building shared libraries

2020-12-28 Thread Hauke Mehrtens

On 12/25/20 2:01 AM, Rosen Penev wrote:

pkgconf uses libpkgconf. disabling shared libraries makes it be linked
statically. Helps to avoid issues regarding finding the library with a
wrong rpath. Nothing uses libpkgconf anyway.

Signed-off-by: Rosen Penev 


Should this fix the build problem with the glibc SDK on ARC HS CPUs?
https://downloads.openwrt.org/snapshots/faillogs/arc_archs/base/libubox/host-compile.txt

Your change look more like a workaround to me, I would prefer if we find 
the root cause and fix that. I tried to reproduce this locally, but for 
me it worked, but I do not know exactly how the build bot uses the SDK.


Hauke



OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: New ath10k-ct driver available

2020-12-28 Thread Hauke Mehrtens

On 12/24/20 10:28 PM, Ben Greear wrote:

I just pushed this commit.  I'm interested in feedback if anyone tests
it.  It could fix some of the strange tx issues, and for the 5.10 kernel,
at least, it fixes very obvious tx-path issues.

commit b753e8bf22b94297acbaa370b4cb0be87e3da4b8 (HEAD -> master, 
origin/master)

Author: Ben Greear 
Date:   Thu Dec 24 13:24:42 2020 -0800

     ath10k-ct:  Fix invalid use of ath-cb struct.

     This fixes some cases where -ct firmware would attempt
     to transmit a fixed-rate frame, thinking the packet was
     injected, when in fact it was not.

     Align the ath-cb pointers on 8-byte boundaries, which may
     give a minor performance boost.

     5.4 kernels and higher are modified, I'll check on older
     kernels later.

     Signed-off-by: Ben Greear 



Hi,

This change is integrated in OpenWrt master:
https://git.openwrt.org/da9beb070d112469adeb30dd79dcde3176bfb290

Should we backport this change 
https://github.com/greearb/ath10k-ct/commit/b753e8bf22b94297acbaa370b4cb0be87e3da4b8 
to ath10k-ct 4.19 for the openwrt 19.07 stable branch?


Hauke



OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH] kernel-build: fix STRIP_KERNEL_EXPORTS for 64-bit kernels

2020-12-31 Thread Hauke Mehrtens

On 12/30/20 9:04 PM, Rui Salvaterra wrote:

While parsing the nm output, we need to account for the fact that 64-bit kernels
have 64-bit wide addresses. While at it, replace the grep | sed combo with a
single awk invocation and a stronger regex.

Fixes: 2ef0acc5fcda557fa5aaad35d27cb8cf75be96d2 "kernel-build: fix
STRIP_KERNEL_EXPORTS for recent kernels"

Signed-off-by: Rui Salvaterra 
---
  include/kernel-build.mk | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/kernel-build.mk b/include/kernel-build.mk
index 22f7c4c7c7..6123c9d456 100644
--- a/include/kernel-build.mk
+++ b/include/kernel-build.mk
@@ -105,7 +105,7 @@ define BuildKernel
xargs $(TARGET_CROSS)nm | \
awk '1 == "U" { print 2 } ' | \
sort -u > $(KERNEL_BUILD_DIR)/mod_symtab.txt
-   $(TARGET_CROSS)nm -n $(LINUX_DIR)/vmlinux.o | grep ' [rR] __ksymtab' | sed 
-e 's, [rR] __ksymtab_,,' > $(KERNEL_BUILD_DIR)/kernel_symtab.txt
+   $(TARGET_CROSS)nm -n $(LINUX_DIR)/vmlinux.o | awk '/^[0-9a-f]+ [rR] 
__ksymtab_/ {print substr(3,11)}' > $(KERNEL_BUILD_DIR)/kernel_symtab.txt
grep -Ff $(KERNEL_BUILD_DIR)/mod_symtab.txt 
$(KERNEL_BUILD_DIR)/kernel_symtab.txt > $(KERNEL_BUILD_DIR)/sym_include.txt
grep -Fvf $(KERNEL_BUILD_DIR)/mod_symtab.txt 
$(KERNEL_BUILD_DIR)/kernel_symtab.txt > $(KERNEL_BUILD_DIR)/sym_exclude.txt
( \


Hi,

On the ipq40xx target the results of both commands are different. The 
original command removed the __ksymtab_ prefix, you do not remove it.


Original result:

hauke@hauke-t480:~/openwrt/openwrt$ 
./staging_dir/toolchain-arm_cortex-a7+neon-vfpv4_gcc-8.4.0_musl_eabi/bin/arm-openwrt-linux-nm 
-n 
build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/linux-ipq40xx_generic/linux-5.4.85/vmlinux.o 
| grep ' [rR] __ksymtab' | sed -e 's, [rR] __ksymtab_,,'  |sort 
|head -5

__ablkcipher_walk_complete
ablkcipher_walk_done
ablkcipher_walk_phys
abort
abort_creds


Result with your change:

hauke@hauke-t480:~/openwrt/openwrt$ 
./staging_dir/toolchain-arm_cortex-a7+neon-vfpv4_gcc-8.4.0_musl_eabi/bin/arm-openwrt-linux-nm 
-n 
build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/linux-ipq40xx_generic/linux-5.4.85/vmlinux.o 
| awk '/^[0-9a-f]+ [rR] __ksymtab_/ {print substr(3,11)}' |sort |head -5

 __ksymtab___ablkcipher_walk_complete
 __ksymtab_ablkcipher_walk_done
 __ksymtab_ablkcipher_walk_phys
 __ksymtab_abort
 __ksymtab_abort_creds


I build the kernel with this configuration:

hauke@hauke-t480:~/openwrt/openwrt$ ./scripts/diffconfig.sh
CONFIG_TARGET_ipq40xx=y
CONFIG_TARGET_ipq40xx_generic=y
CONFIG_TARGET_ipq40xx_generic_DEVICE_avm_fritzbox-7530=y
hauke@hauke-t480:~/openwrt/openwrt$

Hauke



OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: Persistent HTTP(S) connections in opkg

2020-12-31 Thread Hauke Mehrtens

On 12/30/20 7:14 PM, Baptiste Jonglez wrote:

Following the discussion in 
http://lists.openwrt.org/pipermail/openwrt-devel/2020-November/032297.html

There are basically two options to implement persistent connections in opkg:

1) keep calling "wget", but pass the list of all packages to download at
once.  On the host, wget already implements persistent connections.
For devices, we would need to implement persistent connections in
uclient-fetch (which is what "wget" actually points to).

2) switch to using a HTTP library (libuclient or libcurl), so that we can
keep some TCP/TLS/HTTP context between downloads.

The first solution has a major drawback on devices: all packages would
need to be downloaded to /tmp, which will consume memory.  Currently, opkg
processes packages individually, so only one package at a time is stored
in /tmp.

The second solution adds a new library dependency, and we need to make
sure that it works both on the host and on targets.  Currently, we don't
make libuclient available to the host build system.  We would need to
build it for the host and link opkg statically against it (like it's done
for libubox).

Overall, I think the second solution makes more sense and is easier to 
integrate.
I would go with libuclient because we already have it available on
devices.

Any thoughts?

Thanks,
Baptiste


Hi,

I looked into performance problems of LuCI when using https some time ago.

The slow part was the handshake, the normal stream cipher is relatively 
fast, even very slow devices should be able to do multiple MB/s.


On the server side the ECC handshake was much faster, I think I measured 
values like 1 second (RSA) vs. 0.3 seconds (ECC) for the handshake on a 
Lantiq MIPS 24Kec CPU with mbedtls, the RSA handshake was much faster 
(0.5 seconds) with openssl.


We should activate support for ECC certificates on 
https://downloads.openwrt.org, I think it is possible to use both RSA 
and ECC on the server and then decide based on what the client supports 
and wants. In OpenWrt we could use then ECC to authenticate the server. 
The crypto parts should already be there as we need ECDH for SAE in hostapd.


We could use TLS Session Resumption, the SSL libraries should support 
it, this way we can easily reuse the same session for the next download. 
Browsers do this to only do one SSL handshake and then have multiple TCP 
connections to the server to download the material in parallel.


Hauke



OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH] kernel-build: fix STRIP_KERNEL_EXPORTS for 64-bit kernels

2020-12-31 Thread Hauke Mehrtens

On 12/31/20 8:38 PM, Rui Salvaterra wrote:

Hi again,

On Thu, 31 Dec 2020 at 19:30, Rui Salvaterra  wrote:


On Thu, 31 Dec 2020 at 19:07, Hauke Mehrtens  wrote:


Result with your change:

hauke@hauke-t480:~/openwrt/openwrt$
./staging_dir/toolchain-arm_cortex-a7+neon-vfpv4_gcc-8.4.0_musl_eabi/bin/arm-openwrt-linux-nm
-n
build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/linux-ipq40xx_generic/linux-5.4.85/vmlinux.o
| awk '/^[0-9a-f]+ [rR] __ksymtab_/ {print substr(3,11)}' |sort |head -5
   __ksymtab___ablkcipher_walk_complete
   __ksymtab_ablkcipher_walk_done
   __ksymtab_ablkcipher_walk_phys
   __ksymtab_abort
   __ksymtab_abort_creds



Hm… strange. The substr should have taken care of it, I wonder what I've missed.
Anyway, thanks for the heads-up, I'm going to fix and respin.


Ok, I see the problem. You're executing it in the terminal and not
removing the makefile escaping from the awk script. Try $3 instead of
3.


Hi Rui,

Yes you are right, when I use this correctly it starts to work. ;-)

Hauke



OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: Persistent HTTP(S) connections in opkg

2020-12-31 Thread Hauke Mehrtens

On 12/31/20 8:40 PM, Hauke Mehrtens wrote:

On 12/30/20 7:14 PM, Baptiste Jonglez wrote:
Following the discussion in 
http://lists.openwrt.org/pipermail/openwrt-devel/2020-November/032297.html 



There are basically two options to implement persistent connections in 
opkg:


1) keep calling "wget", but pass the list of all packages to download at
    once.  On the host, wget already implements persistent connections.
    For devices, we would need to implement persistent connections in
    uclient-fetch (which is what "wget" actually points to).

2) switch to using a HTTP library (libuclient or libcurl), so that we can
    keep some TCP/TLS/HTTP context between downloads.

The first solution has a major drawback on devices: all packages would
need to be downloaded to /tmp, which will consume memory.  Currently, 
opkg

processes packages individually, so only one package at a time is stored
in /tmp.

The second solution adds a new library dependency, and we need to make
sure that it works both on the host and on targets.  Currently, we don't
make libuclient available to the host build system.  We would need to
build it for the host and link opkg statically against it (like it's done
for libubox).

Overall, I think the second solution makes more sense and is easier to 
integrate.

I would go with libuclient because we already have it available on
devices.

Any thoughts?

Thanks,
Baptiste


Hi,

I looked into performance problems of LuCI when using https some time ago.

The slow part was the handshake, the normal stream cipher is relatively 
fast, even very slow devices should be able to do multiple MB/s.


On the server side the ECC handshake was much faster, I think I measured 
values like 1 second (RSA) vs. 0.3 seconds (ECC) for the handshake on a 
Lantiq MIPS 24Kec CPU with mbedtls, the RSA handshake was much faster 
(0.5 seconds) with openssl.


We should activate support for ECC certificates on 
https://downloads.openwrt.org, I think it is possible to use both RSA 
and ECC on the server and then decide based on what the client supports 
and wants. In OpenWrt we could use then ECC to authenticate the server. 
The crypto parts should already be there as we need ECDH for SAE in 
hostapd.


We could use TLS Session Resumption, the SSL libraries should support 
it, this way we can easily reuse the same session for the next download. 
Browsers do this to only do one SSL handshake and then have multiple TCP 
connections to the server to download the material in parallel.


Hauke


The changes I did are here:
https://git.openwrt.org/f2c8f6dc3249b506b915741d12905402dfffe162
https://git.openwrt.org/e8a1469

These are only for mbedtls and not for openssl/wolfssl it could be that 
this causes some problems. I would also assume that openssl is much 
faster than wolfssl, so we do not see these problems so much with openssl.


Hauke



OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH uhttpd 1/3] cmake: Use variables

2020-12-31 Thread Hauke Mehrtens
This makes it easier to build this outside of OpenWrt.

Signed-off-by: Hauke Mehrtens 
---
 CMakeLists.txt | 9 +++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 7ae8ba4..61a3315 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -35,9 +35,13 @@ IF(HAVE_SHADOW)
 ADD_DEFINITIONS(-DHAVE_SHADOW)
 ENDIF()
 
+FIND_LIBRARY(ubox NAMES ubox)
+FIND_LIBRARY(json_script NAMES json_script)
+FIND_LIBRARY(blobmsg_json NAMES blobmsg_json)
+
 ADD_EXECUTABLE(uhttpd ${SOURCES})
 FIND_LIBRARY(libjson NAMES json-c json)
-TARGET_LINK_LIBRARIES(uhttpd ubox dl json_script blobmsg_json ${libjson} 
${LIBS})
+TARGET_LINK_LIBRARIES(uhttpd ${ubox} dl ${json_script} ${blobmsg_json} 
${libjson} ${LIBS})
 
 SET(PLUGINS "")
 IF(LUA_SUPPORT)
@@ -70,10 +74,11 @@ IF(LUA_SUPPORT)
 ENDIF()
 
 IF(UBUS_SUPPORT)
+   FIND_LIBRARY(ubus NAMES ubus)
SET(PLUGINS ${PLUGINS} uhttpd_ubus)
ADD_DEFINITIONS(-DHAVE_UBUS)
ADD_LIBRARY(uhttpd_ubus MODULE ubus.c)
-   TARGET_LINK_LIBRARIES(uhttpd_ubus ubus ubox blobmsg_json ${libjson})
+   TARGET_LINK_LIBRARIES(uhttpd_ubus ${ubus} ${ubox} ${blobmsg_json} 
${libjson})
 ENDIF()
 
 IF(PLUGINS)
-- 
2.20.1


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH uhttpd 2/3] listen: Copy only parts of ai_addr

2020-12-31 Thread Hauke Mehrtens
ai_addr has different sizes for IPv4 and IPv6. Only copy the parts which
are actually used and not the full array, to not copy and uninitialized
memory.

This fixes a warning found with the address sanitizer.

Signed-off-by: Hauke Mehrtens 
---
 listen.c | 15 ++-
 1 file changed, 10 insertions(+), 5 deletions(-)

diff --git a/listen.c b/listen.c
index 2a54888..558e35e 100644
--- a/listen.c
+++ b/listen.c
@@ -29,7 +29,10 @@ struct listener {
struct uloop_fd fd;
int socket;
int n_clients;
-   struct sockaddr_in6 addr;
+   union {
+   struct sockaddr_in6 addr6;
+   struct sockaddr_in addr;
+   };
bool tls;
bool blocked;
 };
@@ -189,7 +192,9 @@ int uh_socket_bind(const char *host, const char *port, bool 
tls)
 
l->fd.fd = sock;
l->tls = tls;
-   l->addr = *(struct sockaddr_in6 *)p->ai_addr;
+   if (p->ai_addrlen < sizeof(l->addr))
+   goto error;
+   memcpy(&l->addr, p->ai_addr, p->ai_addrlen);
list_add_tail(&l->list, &listeners);
bound++;
 
@@ -211,13 +216,13 @@ int uh_first_tls_port(int family)
int tls_port = -1;
 
list_for_each_entry(l, &listeners, list) {
-   if (!l->tls || l->addr.sin6_family != family)
+   if (!l->tls || l->addr.sin_family != family)
continue;
 
-   if (tls_port != -1 && ntohs(l->addr.sin6_port) != 443)
+   if (tls_port != -1 && ntohs(l->addr.sin_port) != 443)
continue;
 
-   tls_port = ntohs(l->addr.sin6_port);
+   tls_port = ntohs(l->addr.sin_port);
}
 
return tls_port;
-- 
2.20.1


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH uhttpd 3/3] main: free port string after strdup()

2020-12-31 Thread Hauke Mehrtens
This fixes a memory leak.

Signed-off-by: Hauke Mehrtens 
---
 main.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/main.c b/main.c
index 73e3d42..bca69cf 100644
--- a/main.c
+++ b/main.c
@@ -298,6 +298,7 @@ int main(int argc, char **argv)
case 'p':
optarg = strdup(optarg);
bound += add_listener_arg(optarg, (ch == 's'));
+   free(optarg);
break;
 
case 'h':
-- 
2.20.1


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH uhttpd 2/3] listen: Copy only parts of ai_addr

2021-01-01 Thread Hauke Mehrtens

On 1/1/21 11:22 AM, Oldřich Jedlička wrote:

pá 1. 1. 2021 v 11:02 odesílatel Oldřich Jedlička  napsal:


Hi,

pá 1. 1. 2021 v 2:20 odesílatel Hauke Mehrtens  napsal:


ai_addr has different sizes for IPv4 and IPv6. Only copy the parts which
are actually used and not the full array, to not copy and uninitialized
memory.

This fixes a warning found with the address sanitizer.

Signed-off-by: Hauke Mehrtens 
---



  };
@@ -189,7 +192,9 @@ int uh_socket_bind(const char *host, const char *port, bool 
tls)

 l->fd.fd = sock;
 l->tls = tls;
-   l->addr = *(struct sockaddr_in6 *)p->ai_addr;
+   if (p->ai_addrlen < sizeof(l->addr))


I think that this sizeof takes the smallest part of the (anonymous)
union - sockaddr_in addr, not the whole union size. You either need to
name the union and sizeof the whole content, or manually select the
biggest entry for use in sizeof, which is addr6.


Also strict less-than doesn't look correct.


Yes you are right, I will send an update.
I changed this code multiple times and had this laying around for some 
time now.


Hauke

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH] ppp: Remove already applied patch

2021-01-01 Thread Hauke Mehrtens
This patch was already applied upstream and not needed here.

Fixes: 06403981e1f2 ("ppp: update to version 2.4.7.git-2019-05-06")
Signed-off-by: Hauke Mehrtens 
---
 package/network/services/ppp/Makefile   |  2 +-
 .../ppp/patches/540-save-pppol2tp_fd_str.patch  | 13 -
 2 files changed, 1 insertion(+), 14 deletions(-)
 delete mode 100644 
package/network/services/ppp/patches/540-save-pppol2tp_fd_str.patch

diff --git a/package/network/services/ppp/Makefile 
b/package/network/services/ppp/Makefile
index cabe1ecbf30e..48d7120a7296 100644
--- a/package/network/services/ppp/Makefile
+++ b/package/network/services/ppp/Makefile
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 include $(INCLUDE_DIR)/kernel.mk
 
 PKG_NAME:=ppp
-PKG_RELEASE:=2
+PKG_RELEASE:=3
 
 PKG_SOURCE_PROTO:=git
 PKG_SOURCE_URL:=https://github.com/paulusmack/ppp
diff --git 
a/package/network/services/ppp/patches/540-save-pppol2tp_fd_str.patch 
b/package/network/services/ppp/patches/540-save-pppol2tp_fd_str.patch
deleted file mode 100644
index d6d44afbd090..
--- a/package/network/services/ppp/patches/540-save-pppol2tp_fd_str.patch
+++ /dev/null
@@ -1,13 +0,0 @@
 a/pppd/plugins/pppol2tp/pppol2tp.c
-+++ b/pppd/plugins/pppol2tp/pppol2tp.c
-@@ -152,6 +152,10 @@ static int setdevname_pppol2tp(char **ar
-   if (pppol2tp_fd_str == NULL)
-   novm("PPPoL2TP FD");
- 
-+  pppol2tp_fd_str = strdup(*argv);
-+  if (pppol2tp_fd_str == NULL)
-+  novm("PPPoL2TP FD");
-+
-   /* Setup option defaults. Compression options are disabled! */
- 
-   modem = 0;
-- 
2.20.1


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH 1/3] busybox: update to 1.33

2021-01-03 Thread Hauke Mehrtens

On 1/4/21 1:24 AM, Rosen Penev wrote:

Remove stime backport.

Remove static libgcc patch as upstream fixed it in a different way.

Remove date -k patch as it no longer applies. It's also pointless as
busybox' hwclock utility can do the same thing. That will be changed
in a future commit.

Remove ntpd patch as that seems to have been applied upstream.

Refresh patches.

Signed-off-by: Rosen Penev 
---
  package/utils/busybox/Makefile|  6 +-
  .../001-remove-stime-function-calls.patch | 84 -
  .../patches/110-no_static_libgcc.patch| 11 ---
  .../busybox/patches/120-lto-jobserver.patch   |  6 +-
  .../patches/200-udhcpc_reduce_msgs.patch  |  4 +-
  .../patches/201-udhcpc_changed_ifindex.patch  |  2 +-
  .../203-udhcpc_renew_no_deconfig.patch|  2 +-
  .../patches/230-add_nslookup_lede.patch   |  6 +-
  .../busybox/patches/250-date-k-flag.patch | 92 ---
  .../500-move-traceroute-applets-to-bin.patch  |  2 +-
  ...520-loginutils-handle-crypt-failures.patch |  6 +-
  .../patches/600-allow-ntpd-non-root.patch | 12 ---
  12 files changed, 17 insertions(+), 216 deletions(-)
  delete mode 100644 
package/utils/busybox/patches/001-remove-stime-function-calls.patch
  delete mode 100644 package/utils/busybox/patches/110-no_static_libgcc.patch
  delete mode 100644 package/utils/busybox/patches/250-date-k-flag.patch
  delete mode 100644 package/utils/busybox/patches/600-allow-ntpd-non-root.patch


Better apply "base-files: use hwclock --systz" before this one to not 
break git bisect.


You did not refresh the configuration.
See this description:
https://git.openwrt.org/696c511fb480be04a0ab4563b06b5e1b0d7eb684

Petr send a update of busybox to version 1.32.0 in August, but did not 
apply it because of a reported bug:

https://lists.openwrt.org/pipermail/openwrt-devel/2020-August/030730.html

It looks like the problem was fixed in 1.32.1 and 1.33.0 here:
https://git.busybox.net/busybox/commit/?id=91e11eba6e3ee21f70905bca857b9b216fb764f6
https://git.busybox.net/busybox/commit/?h=1_32_stable&id=e7629ffbf5c697a0fa805e2439c278e019d84835

Hauke

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[RFC PATCH 2/2] toolchain: Allow building with ASAN and UBSAN

2021-01-17 Thread Hauke Mehrtens
This allows to build all user space with Address sanitizer and undefined
behavior sanitizer. It will automatically add this to the TRAGET_CFLAGS
and TARGET_LDFLAGS of every user space component.

This is only working with gcc 10.X, because the system init process will
mount /proc after it was started and ASAN needs it already earlier and
fails in the versions provided by older compilers.

Signed-off-by: Hauke Mehrtens 
---
 config/Config-build.in | 22 ++
 include/hardening.mk   | 14 ++
 include/package-defaults.mk|  2 +-
 include/toolchain-build.mk |  2 ++
 package/boot/grub2/Makefile|  2 ++
 package/libs/toolchain/Makefile|  2 ++
 package/network/services/dropbear/Makefile |  2 ++
 package/utils/busybox/Makefile |  2 ++
 8 files changed, 47 insertions(+), 1 deletion(-)

diff --git a/config/Config-build.in b/config/Config-build.in
index 0aaf6b31c38b..7ecef388322e 100644
--- a/config/Config-build.in
+++ b/config/Config-build.in
@@ -388,4 +388,26 @@ menu "Global build settings"
 
endchoice
 
+   config PKG_SANITIZER_ADDRESS
+   bool "Enable Address Sanitizer"
+   depends on USE_GLIBC
+   select PACKAGE_libasan
+   select USE_SANITIZER_ADDRESS
+   help
+ This will build all user space applications with the Address 
Sanitizer enabled
+
+   config PKG_SANITIZER_UNDEFINED_BEHAVIOR
+   bool "Enable undefined behavior Sanitizer"
+   depends on USE_GLIBC
+   select PACKAGE_libubsan
+   select USE_SANITIZER_UNDEFINED_BEHAVIOR
+   help
+ This will build all user space applications with the 
undefined behavior Sanitizer enabled
+
+   config USE_SANITIZER_ADDRESS
+   bool
+
+   config USE_SANITIZER_UNDEFINED_BEHAVIOR
+   bool
+
 endmenu
diff --git a/include/hardening.mk b/include/hardening.mk
index 4e49e6b1b904..be2271bd8983 100644
--- a/include/hardening.mk
+++ b/include/hardening.mk
@@ -11,6 +11,8 @@ PKG_ASLR_PIE_REGULAR ?= 0
 PKG_SSP ?= 1
 PKG_FORTIFY_SOURCE ?= 1
 PKG_RELRO ?= 1
+PKG_SANITIZER_ADDRESS ?= 1
+PKG_SANITIZER_UNDEFINED_BEHAVIOR ?= 1
 
 ifdef CONFIG_PKG_CHECK_FORMAT_SECURITY
   ifeq ($(strip $(PKG_CHECK_FORMAT_SECURITY)),1)
@@ -61,4 +63,16 @@ ifdef CONFIG_PKG_RELRO_FULL
 TARGET_LDFLAGS += -znow -zrelro
   endif
 endif
+ifdef CONFIG_PKG_SANITIZER_ADDRESS
+  ifeq ($(strip $(PKG_SANITIZER_ADDRESS)),1)
+TARGET_CFLAGS += -fsanitize=address
+TARGET_LDFLAGS += -fsanitize=address
+  endif
+endif
+ifdef CONFIG_PKG_SANITIZER_UNDEFINED_BEHAVIOR
+  ifeq ($(strip $(PKG_SANITIZER_UNDEFINED_BEHAVIOR)),1)
+TARGET_CFLAGS += -fsanitize=undefined
+TARGET_LDFLAGS += -fsanitize=undefined
+  endif
+endif
 
diff --git a/include/package-defaults.mk b/include/package-defaults.mk
index 2a04bc17e904..1e261db4eb0f 100644
--- a/include/package-defaults.mk
+++ b/include/package-defaults.mk
@@ -5,7 +5,7 @@
 # See /LICENSE for more information.
 #
 
-PKG_DEFAULT_DEPENDS = +libc +USE_GLIBC:librt +USE_GLIBC:libpthread
+PKG_DEFAULT_DEPENDS = +libc +USE_GLIBC:librt +USE_GLIBC:libpthread 
+USE_SANITIZER_ADDRESS:libasan +USE_SANITIZER_UNDEFINED_BEHAVIOR:libubsan
 
 ifneq ($(PKG_NAME),toolchain)
   PKG_FIXUP_DEPENDS = $(if $(filter kmod-%,$(1)),$(2),$(PKG_DEFAULT_DEPENDS) 
$(filter-out $(PKG_DEFAULT_DEPENDS),$(2)))
diff --git a/include/toolchain-build.mk b/include/toolchain-build.mk
index 35d8c9380ec1..92f618a28d4e 100644
--- a/include/toolchain-build.mk
+++ b/include/toolchain-build.mk
@@ -10,6 +10,8 @@ override CONFIG_AUTOREMOVE=
 
 HOST_BUILD_PREFIX:=$(TOOLCHAIN_DIR)
 BUILD_DIR_HOST:=$(BUILD_DIR_TOOLCHAIN)
+PKG_SANITIZER_ADDRESS:=0
+PKG_SANITIZER_UNDEFINED_BEHAVIOR:=0
 
 include $(INCLUDE_DIR)/host-build.mk
 include $(INCLUDE_DIR)/hardening.mk
diff --git a/package/boot/grub2/Makefile b/package/boot/grub2/Makefile
index 46e3597cc242..59a3e7ee5890 100644
--- a/package/boot/grub2/Makefile
+++ b/package/boot/grub2/Makefile
@@ -22,6 +22,8 @@ PKG_BUILD_DEPENDS:=grub2/host
 
 PKG_ASLR_PIE:=0
 PKG_SSP:=0
+PKG_SANITIZER_ADDRESS:=0
+PKG_SANITIZER_UNDEFINED_BEHAVIOR:=0
 
 PKG_FLAGS:=nonshared
 
diff --git a/package/libs/toolchain/Makefile b/package/libs/toolchain/Makefile
index 52a4cda19f6a..4f97df65a8c4 100644
--- a/package/libs/toolchain/Makefile
+++ b/package/libs/toolchain/Makefile
@@ -13,6 +13,8 @@ PKG_MAINTAINER:=Felix Fietkau 
 PKG_LICENSE:=GPL-3.0-with-GCC-exception
 
 PKG_FLAGS:=hold essential nonshared
+PKG_SANITIZER_ADDRESS:=0
+PKG_SANITIZER_UNDEFINED_BEHAVIOR:=0
 
 include $(INCLUDE_DIR)/package.mk
 
diff --git a/package/network/services/dropbear/Makefile 
b/package/network/services/dropbear/Makefile
index 8bbb26f829be..171860e67a16 100644
--- a/package/network/services/dropbear/Makefile
+++ b/package/network/services/dropbear/Makefile
@@ 

[RFC PATCH 0/2] toolchain: build all user space with sanitizer on glibc

2021-01-17 Thread Hauke Mehrtens
This patch allows to build most the OpenWrt user space with address and 
undefined behavior sanitizer activated by default.
This only works with glibc and gcc 10 and I only tested this on x86 64 
so far. It is not intended to activate this by default ever, but this is 
helpful to detect (security) bugs in our applications.

The first patch adds a work around for a problem with our Kconfig 
system, I did not fully  understand the problems and only provided a 
workaround for it, if someone has any idea what is going wrong there 
this would be helpful.

I already found some problems like memory leaks and a use after free 
problem, will send separate mails for the later.

When these sanitizers are activated the OpenWrt userspace needs 
significant more memory, use at least 256MB for a basic system.

TODOs:
 * Fix the Kconfig recursive dependency problem 
 * Test this on more than x86 / 64
 * Make it depend on GCC 10 or wait till GCC 10 is the default.

Hauke Mehrtens (2):
  Workaround recursive error
  toolchain: Allow building with ASAN and UBSAN

 config/Config-build.in | 22 ++
 include/hardening.mk   | 14 ++
 include/package-defaults.mk|  2 +-
 include/toolchain-build.mk |  2 ++
 package/boot/grub2/Makefile|  2 ++
 package/kernel/mac80211/Makefile   |  2 +-
 package/libs/toolchain/Makefile|  2 ++
 package/network/services/dropbear/Makefile |  2 ++
 package/network/utils/iw/Makefile  | 11 ---
 package/utils/busybox/Makefile |  2 ++
 10 files changed, 56 insertions(+), 5 deletions(-)

-- 
2.20.1


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[RFC PATCH 1/2] Workaround recursive error

2021-01-17 Thread Hauke Mehrtens
It looks like there is a bug in our configuration system when we add the
additional dependencies in PKG_DEFAULT_DEPENDS we get these recursive
errors:

tmp/.config-package.in:19514:error: recursive dependency detected!
tmp/.config-package.in:19514:   symbol PACKAGE_kmod-cfg80211 depends on 
PACKAGE_kmod-cfg80211
For a resolution refer to Documentation/kbuild/kconfig-language.rst
subsection "Kconfig recursive dependency limitations"

tmp/.config-package.in:19115:error: recursive dependency detected!
tmp/.config-package.in:19115:   symbol PACKAGE_kmod-b43 depends on 
PACKAGE_kmod-b43
For a resolution refer to Documentation/kbuild/kconfig-language.rst
subsection "Kconfig recursive dependency limitations"

tmp/.config-package.in:18681:error: recursive dependency det


Just remove the dependency on iw.
---
 package/kernel/mac80211/Makefile  |  2 +-
 package/network/utils/iw/Makefile | 11 ---
 2 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/package/kernel/mac80211/Makefile b/package/kernel/mac80211/Makefile
index 096225754c31..2e4a4d4019ea 100644
--- a/package/kernel/mac80211/Makefile
+++ b/package/kernel/mac80211/Makefile
@@ -98,7 +98,7 @@ PKG_CONFIG_DEPENDS += \
 define KernelPackage/cfg80211
   $(call KernelPackage/mac80211/Default)
   TITLE:=cfg80211 - wireless configuration API
-  DEPENDS+= +iw +wireless-regdb
+  DEPENDS+= +wireless-regdb
   ABI_VERSION:=$(PKG_VERSION)-$(PKG_RELEASE)
   FILES:= \
$(PKG_BUILD_DIR)/compat/compat.ko \
diff --git a/package/network/utils/iw/Makefile 
b/package/network/utils/iw/Makefile
index 6eb10c837fde..6a551004c9fe 100644
--- a/package/network/utils/iw/Makefile
+++ b/package/network/utils/iw/Makefile
@@ -27,13 +27,18 @@ define Package/iw
   URL:=http://wireless.kernel.org/en/users/Documentation/iw
   DEPENDS:= +libnl-tiny
   VARIANT:=tiny
+  PROVIDES:=iw
+  CONFLICTS:=iw-full
 endef
 
 define Package/iw-full
-  $(Package/iw)
-  TITLE += (full version)
-  VARIANT:=full
+  SECTION:=net
+  CATEGORY:=Network
+  TITLE:=cfg80211 interface configuration utility (full version)
+  URL:=http://wireless.kernel.org/en/users/Documentation/iw
+  DEPENDS:= +libnl-tiny
   PROVIDES:=iw
+  VARIANT:=full
 endef
 
 define Build/Configure
-- 
2.20.1


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


OpenWrt 19.07.6 service release

2021-01-19 Thread Hauke Mehrtens

Hi,

The OpenWrt community is proud to announce the sixth service release of 
OpenWrt 19.07. It focuses on fixing several security issues.


Main changes from OpenWrt 19.07.5

Security fixes
* Security Advisory 2021-01-19-1 - dnsmasq multiple vulnerabilities
  (CVE-2020-25681, CVE-2020-25682, CVE-2020-25683, CVE-2020-25687,
   CVE-2020-25684, CVE-2020-25685 and CVE-2020-25686)
* openssl: NULL pointer deref in GENERAL_NAME_cmp function can lead to
  a DOS attack. (CVE-2020-1971)

Note: security fixes for most packages can also be applied by upgrading 
only the affected packages on running devices, without the need for a 
full firmware upgrade. This can be done with opkg update; opkg upgrade 
the_package_name or through the LuCI web interface.


Nevertheless, we encourage all users to upgrade their devices to OpenWrt 
19.07.6 or later versions whenever possible.


Major bug fixes
* Fix iOS 14 tethering problem

Device support
* Enable LED VCC for Asus RT-AC51U

LuCI web interface
* luci-mod-system: properly handle SSH pubkeys with options (GH#4684)
* luci-mod-network: properly handle wireless netdevs when creating
  interfaces
* Update translations from weblate

Core components
* Update Linux kernel from 4.14.209 to 4.14.215
* Update mac80211 and wifi drivers from 4.19.137-1 to 4.19.161-1
* Update wireless-regdb from 2019.06.03 to 2020.11.20
* Update mbedtls from 2.16.8 to 2.16.9
* Update openssl from 1.1.1h to 1.1.1i

Full release notes and upgrade instructions are available at
https://openwrt.org/releases/19.07/notes-19.07.6

In particular, make sure to read the regressions and known issues before 
upgrading:

https://openwrt.org/releases/19.07/notes-19.07.6#regressions

For a very detailed list of all changes since 19.07.5, refer to
https://openwrt.org/releases/19.07/changelog-19.07.6

- ---

To stay informed of new OpenWrt releases and security advisories, there
are new channels available:

 * a low-volume mailing list for important announcements: 
https://lists.openwrt.org/mailman/listinfo/openwrt-announce


 * a dedicated "announcements" section in the forum: 
https://forum.openwrt.org/c/announcements/14


 * other announcement channels (such as RSS feeds) might be added in the
   future, they will be listed at https://openwrt.org/contact

- ---

For latest information about the 19.07 series, refer to the wiki at:
https://openwrt.org/releases/19.07/

To download a OpenWrt 19.07.6 firmware image for your device, head to 
the Table of Hardware:

https://openwrt.org/toh/start

Or navigate directly in the list of firmware images:
https://downloads.openwrt.org/releases/19.07.6/targets/

As always, a big thank you goes to all our active package maintainers,
testers, documenters, and supporters.

Have fun!

The OpenWrt Community



OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: Job board support on openwrt.org?

2021-01-23 Thread Hauke Mehrtens

On 1/23/21 2:24 PM, Jo-Philipp Wich wrote:

Hi,

I don't think this is a good idea due to legal obligations,
administrative hassle, quality of work issues and so on.

NACK from me.


I agree with Jo.

NACK from me too.

Such a page will also be seen as some sort of endorsement and people 
could blame OpenWrt for bad work done by these people listed there. I 
just do not want to handle this.


Hauke



OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: Job board support on openwrt.org?

2021-01-23 Thread Hauke Mehrtens

On 1/23/21 6:07 PM, Ibrahim Tachijian wrote:
What do the NACK people say is the best way to find people that is 
willing to do OpenWRT work ?


Surely, emailing this mailing list is not enough, or?


Hi,

I would suggest to look into the git history of the part which interests 
you and write a mail to the people who contributed there if they would 
do contract work for you.


This is not really management or HR compatible, but if you have an 
engineer in your organization they can help you with that.


Hauke



On Sat, Jan 23, 2021, 17:27 Hauke Mehrtens <mailto:ha...@hauke-m.de>> wrote:


On 1/23/21 2:24 PM, Jo-Philipp Wich wrote:
 > Hi,
 >
 > I don't think this is a good idea due to legal obligations,
 > administrative hassle, quality of work issues and so on.
 >
 > NACK from me.

I agree with Jo.

NACK from me too.

Such a page will also be seen as some sort of endorsement and people
could blame OpenWrt for bad work done by these people listed there. I
just do not want to handle this.

Hauke

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org <mailto:openwrt-devel@lists.openwrt.org>
https://lists.openwrt.org/mailman/listinfo/openwrt-devel
<https://lists.openwrt.org/mailman/listinfo/openwrt-devel>




___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH] dnsmasq: backport fixes

2021-01-24 Thread Hauke Mehrtens
This should fix some error messages shown in the log like this one:
dnsmasq[5246]: failed to send packet: Network unreachable

Fixes: e87c0d934c54 ("dnsmasq: Update to version 2.83")
Signed-off-by: Hauke Mehrtens 
---
 package/network/services/dnsmasq/Makefile |  2 +-
 ...c_src-fixes-15b60ddf935a531269bb8c68.patch | 57 +++
 ...f0aec33e58ef5b8d4d107d821c215a52827c.patch | 19 +++
 ...2b171de0d678d98583e2190789e50e02.patch | 20 +++
 ...00-remove-old-runtime-kernel-support.patch |  4 +-
 5 files changed, 99 insertions(+), 3 deletions(-)
 create mode 100644 
package/network/services/dnsmasq/patches/0120-Move-fd-into-frec_src-fixes-15b60ddf935a531269bb8c68.patch
 create mode 100644 
package/network/services/dnsmasq/patches/0121-Fix-to-75e2f0aec33e58ef5b8d4d107d821c215a52827c.patch
 create mode 100644 
package/network/services/dnsmasq/patches/0123-Fix-for-12af2b171de0d678d98583e2190789e50e02.patch

diff --git a/package/network/services/dnsmasq/Makefile 
b/package/network/services/dnsmasq/Makefile
index 7b5af1dd273c..b09f4b7c37a7 100644
--- a/package/network/services/dnsmasq/Makefile
+++ b/package/network/services/dnsmasq/Makefile
@@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk
 PKG_NAME:=dnsmasq
 PKG_UPSTREAM_VERSION:=2.83
 PKG_VERSION:=$(subst test,~~test,$(subst rc,~rc,$(PKG_UPSTREAM_VERSION)))
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_UPSTREAM_VERSION).tar.xz
 PKG_SOURCE_URL:=http://thekelleys.org.uk/dnsmasq
diff --git 
a/package/network/services/dnsmasq/patches/0120-Move-fd-into-frec_src-fixes-15b60ddf935a531269bb8c68.patch
 
b/package/network/services/dnsmasq/patches/0120-Move-fd-into-frec_src-fixes-15b60ddf935a531269bb8c68.patch
new file mode 100644
index ..b3c48db78571
--- /dev/null
+++ 
b/package/network/services/dnsmasq/patches/0120-Move-fd-into-frec_src-fixes-15b60ddf935a531269bb8c68.patch
@@ -0,0 +1,57 @@
+From 04490bf622ac84891aad6f2dd2edf83725decdee Mon Sep 17 00:00:00 2001
+From: Simon Kelley 
+Date: Fri, 22 Jan 2021 16:49:12 +
+Subject: Move fd into frec_src, fixes 15b60ddf935a531269bb8c68198de012a4967156
+
+If identical queries from IPv4 and IPv6 sources are combined by the
+new code added in 15b60ddf935a531269bb8c68198de012a4967156 then replies
+can end up being sent via the wrong family of socket. The ->fd
+should be per query, not per-question.
+
+In bind-interfaces mode, this could also result in replies being sent
+via the wrong socket even when IPv4/IPV6 issues are not in play.
+---
+ src/dnsmasq.h | 3 ++-
+ src/forward.c | 4 ++--
+ 2 files changed, 4 insertions(+), 3 deletions(-)
+
+--- a/src/dnsmasq.h
 b/src/dnsmasq.h
+@@ -664,6 +664,7 @@ struct frec {
+ union mysockaddr source;
+ union all_addr dest;
+ unsigned int iface, log_id;
++int fd;
+ unsigned short orig_id;
+ struct frec_src *next;
+   } frec_src;
+@@ -671,7 +672,7 @@ struct frec {
+   struct randfd *rfd4;
+   struct randfd *rfd6;
+   unsigned short new_id;
+-  int fd, forwardall, flags;
++  int forwardall, flags;
+   time_t time;
+   unsigned char *hash[HASH_SIZE];
+ #ifdef HAVE_DNSSEC 
+--- a/src/forward.c
 b/src/forward.c
+@@ -402,8 +402,8 @@ static int forward_query(int udpfd, unio
+ forward->frec_src.dest = *dst_addr;
+ forward->frec_src.iface = dst_iface;
+ forward->frec_src.next = NULL;
++forward->frec_src.fd = udpfd;
+ forward->new_id = get_id();
+-forward->fd = udpfd;
+ memcpy(forward->hash, hash, HASH_SIZE);
+ forward->forwardall = 0;
+ forward->flags = fwd_flags;
+@@ -1300,7 +1300,7 @@ void reply_query(int fd, int family, tim
+ dump_packet(DUMP_REPLY, daemon->packet, (size_t)nn, NULL, 
&src->source);
+ #endif
+ 
+-send_from(forward->fd, option_bool(OPT_NOWILD) || option_bool 
(OPT_CLEVERBIND), daemon->packet, nn, 
++send_from(src->fd, option_bool(OPT_NOWILD) || option_bool 
(OPT_CLEVERBIND), daemon->packet, nn, 
+   &src->source, &src->dest, src->iface);
+ 
+ if (option_bool(OPT_EXTRALOG) && src != &forward->frec_src)
diff --git 
a/package/network/services/dnsmasq/patches/0121-Fix-to-75e2f0aec33e58ef5b8d4d107d821c215a52827c.patch
 
b/package/network/services/dnsmasq/patches/0121-Fix-to-75e2f0aec33e58ef5b8d4d107d821c215a52827c.patch
new file mode 100644
index ..259e00de6e79
--- /dev/null
+++ 
b/package/network/services/dnsmasq/patches/0121-Fix-to-75e2f0aec33e58ef5b8d4d107d821c215a52827c.patch
@@ -0,0 +1,19 @@
+From 12af2b171de0d678d98583e2190789e50e02 Mon Sep 17 00:00:00 2001
+From: Simon Kelley 
+Date: Fri, 22 Jan 2021 18:24:03 +
+Subject: Fix to 75e2f0aec33e58ef5b8d4d107d821c215a52827c
+
+---
+ src/forward.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+--- a/src/forward.c
 b/src/forward.c
+@@ -378,6 +378,7 @@ static int forward_query(int udpfd, unio
+   

[PATCH 19.07] dnsmasq: backport fixes

2021-01-24 Thread Hauke Mehrtens
This should fix some error messages shown in the log like this one:
dnsmasq[5246]: failed to send packet: Network unreachable

Fixes: e87c0d934c54 ("dnsmasq: Update to version 2.83")
Signed-off-by: Hauke Mehrtens 
---
 package/network/services/dnsmasq/Makefile |  2 +-
 ...c_src-fixes-15b60ddf935a531269bb8c68.patch | 57 +++
 ...f0aec33e58ef5b8d4d107d821c215a52827c.patch | 19 +++
 ...2b171de0d678d98583e2190789e50e02.patch | 20 +++
 4 files changed, 97 insertions(+), 1 deletion(-)
 create mode 100644 
package/network/services/dnsmasq/patches/0120-Move-fd-into-frec_src-fixes-15b60ddf935a531269bb8c68.patch
 create mode 100644 
package/network/services/dnsmasq/patches/0121-Fix-to-75e2f0aec33e58ef5b8d4d107d821c215a52827c.patch
 create mode 100644 
package/network/services/dnsmasq/patches/0123-Fix-for-12af2b171de0d678d98583e2190789e50e02.patch

diff --git a/package/network/services/dnsmasq/Makefile 
b/package/network/services/dnsmasq/Makefile
index 832246cf72..6be9f69c00 100644
--- a/package/network/services/dnsmasq/Makefile
+++ b/package/network/services/dnsmasq/Makefile
@@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk
 PKG_NAME:=dnsmasq
 PKG_UPSTREAM_VERSION:=2.80
 PKG_VERSION:=$(subst test,~~test,$(subst rc,~rc,$(PKG_UPSTREAM_VERSION)))
-PKG_RELEASE:=16.2
+PKG_RELEASE:=16.3
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_UPSTREAM_VERSION).tar.xz
 PKG_SOURCE_URL:=http://thekelleys.org.uk/dnsmasq
diff --git 
a/package/network/services/dnsmasq/patches/0120-Move-fd-into-frec_src-fixes-15b60ddf935a531269bb8c68.patch
 
b/package/network/services/dnsmasq/patches/0120-Move-fd-into-frec_src-fixes-15b60ddf935a531269bb8c68.patch
new file mode 100644
index 00..b2311081a9
--- /dev/null
+++ 
b/package/network/services/dnsmasq/patches/0120-Move-fd-into-frec_src-fixes-15b60ddf935a531269bb8c68.patch
@@ -0,0 +1,57 @@
+From 04490bf622ac84891aad6f2dd2edf83725decdee Mon Sep 17 00:00:00 2001
+From: Simon Kelley 
+Date: Fri, 22 Jan 2021 16:49:12 +
+Subject: Move fd into frec_src, fixes 15b60ddf935a531269bb8c68198de012a4967156
+
+If identical queries from IPv4 and IPv6 sources are combined by the
+new code added in 15b60ddf935a531269bb8c68198de012a4967156 then replies
+can end up being sent via the wrong family of socket. The ->fd
+should be per query, not per-question.
+
+In bind-interfaces mode, this could also result in replies being sent
+via the wrong socket even when IPv4/IPV6 issues are not in play.
+---
+ src/dnsmasq.h | 3 ++-
+ src/forward.c | 4 ++--
+ 2 files changed, 4 insertions(+), 3 deletions(-)
+
+--- a/src/dnsmasq.h
 b/src/dnsmasq.h
+@@ -653,6 +653,7 @@ struct frec {
+ union mysockaddr source;
+ union all_addr dest;
+ unsigned int iface, log_id;
++int fd;
+ unsigned short orig_id;
+ struct frec_src *next;
+   } frec_src;
+@@ -660,7 +661,7 @@ struct frec {
+   struct randfd *rfd4;
+   struct randfd *rfd6;
+   unsigned short new_id;
+-  int fd, forwardall, flags;
++  int forwardall, flags;
+   time_t time;
+   unsigned char *hash[HASH_SIZE];
+ #ifdef HAVE_DNSSEC 
+--- a/src/forward.c
 b/src/forward.c
+@@ -394,8 +394,8 @@ static int forward_query(int udpfd, unio
+ forward->frec_src.dest = *dst_addr;
+ forward->frec_src.iface = dst_iface;
+ forward->frec_src.next = NULL;
++forward->frec_src.fd = udpfd;
+ forward->new_id = get_id();
+-forward->fd = udpfd;
+ memcpy(forward->hash, hash, HASH_SIZE);
+ forward->forwardall = 0;
+ forward->flags = fwd_flags;
+@@ -1284,7 +1284,7 @@ void reply_query(int fd, int family, tim
+ dump_packet(DUMP_REPLY, daemon->packet, (size_t)nn, NULL, 
&src->source);
+ #endif
+ 
+-send_from(forward->fd, option_bool(OPT_NOWILD) || option_bool 
(OPT_CLEVERBIND), daemon->packet, nn, 
++send_from(src->fd, option_bool(OPT_NOWILD) || option_bool 
(OPT_CLEVERBIND), daemon->packet, nn, 
+   &src->source, &src->dest, src->iface);
+ 
+ if (option_bool(OPT_EXTRALOG) && src != &forward->frec_src)
diff --git 
a/package/network/services/dnsmasq/patches/0121-Fix-to-75e2f0aec33e58ef5b8d4d107d821c215a52827c.patch
 
b/package/network/services/dnsmasq/patches/0121-Fix-to-75e2f0aec33e58ef5b8d4d107d821c215a52827c.patch
new file mode 100644
index 00..a62439a8a1
--- /dev/null
+++ 
b/package/network/services/dnsmasq/patches/0121-Fix-to-75e2f0aec33e58ef5b8d4d107d821c215a52827c.patch
@@ -0,0 +1,19 @@
+From 12af2b171de0d678d98583e2190789e50e02 Mon Sep 17 00:00:00 2001
+From: Simon Kelley 
+Date: Fri, 22 Jan 2021 18:24:03 +
+Subject: Fix to 75e2f0aec33e58ef5b8d4d107d821c215a52827c
+
+---
+ src/forward.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+--- a/src/forward.c
 b/src/forward.c
+@@ -370,6 +370,7 @@ static int forward_query(int udpfd, unio
+ new->dest = *dst_addr;
+ new-&

Re: [PATCH 03/12] ltq-adsl-app: add ubus support to get metrics

2021-01-25 Thread Hauke Mehrtens

On 12/15/20 10:35 AM, Andre Heider wrote:

As with ltq-vdsl-app, see previous commit.

Signed-off-by: Andre Heider 
---
  package/network/config/ltq-adsl-app/Makefile  |  2 +-
  .../ltq-adsl-app/patches/300-ubus.patch   | 50 +++
  package/network/config/ltq-adsl-app/src   |  1 +
  3 files changed, 52 insertions(+), 1 deletion(-)
  create mode 100644 package/network/config/ltq-adsl-app/patches/300-ubus.patch
  create mode 12 package/network/config/ltq-adsl-app/src

diff --git a/package/network/config/ltq-adsl-app/Makefile 
b/package/network/config/ltq-adsl-app/Makefile
index cfd66d0ee4..e03c0911a5 100644
--- a/package/network/config/ltq-adsl-app/Makefile
+++ b/package/network/config/ltq-adsl-app/Makefile
@@ -35,7 +35,7 @@ define Package/ltq-adsl-app
CATEGORY:=Network
TITLE:=Lantiq DSL userland tool
URL:=http://www.lantiq.com/
-  DEPENDS:=@(TARGET_lantiq_xway||TARGET_lantiq_xway_legacy||TARGET_lantiq_ase) 
+libpthread +ltq-dsl-base
+  DEPENDS:=@(TARGET_lantiq_xway||TARGET_lantiq_xway_legacy||TARGET_lantiq_ase) 
+libpthread +ltq-dsl-base +libubox +libubus
MENU:=1
  endef
  
diff --git a/package/network/config/ltq-adsl-app/src b/package/network/config/ltq-adsl-app/src

new file mode 12
index 00..d3dfcc3b34
--- /dev/null
+++ b/package/network/config/ltq-adsl-app/src
@@ -0,0 +1 @@
+../ltq-vdsl-app/src
\ No newline at end of file



Is this simlink here ok?
I would prefer if you package Makefile would copy this instead of this 
symlink.


Hauke



OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH 10/12] ltq-dsl-base: bump PKG_RELEASE

2021-01-25 Thread Hauke Mehrtens

On 12/15/20 10:35 AM, Andre Heider wrote:

Signed-off-by: Andre Heider 
Tested-by: Martin Schiller 
---
  package/network/utils/ltq-dsl-base/Makefile | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/package/network/utils/ltq-dsl-base/Makefile 
b/package/network/utils/ltq-dsl-base/Makefile
index e2cfc4004c..aae07bc299 100644
--- a/package/network/utils/ltq-dsl-base/Makefile
+++ b/package/network/utils/ltq-dsl-base/Makefile
@@ -6,7 +6,7 @@
  include $(TOPDIR)/rules.mk
  
  PKG_NAME:=ltq-dsl-base

-PKG_RELEASE:=2
+PKG_RELEASE:=3
  
  include $(INCLUDE_DIR)/package.mk
  



Could you please integrate these increases of the PKG_RELEASE into the 
patches which change the package please.


Hauke



OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH v2 0/12] add ubus support to ltq-[v|a]dsl-app

2021-01-25 Thread Hauke Mehrtens

On 12/15/20 10:35 AM, Andre Heider wrote:

v2:
- drop 0002-ltq-vdsl-app-fix-Wundef-warnings.patch
- use "/dev/dsl_cpe_api" without the "0" suffix for the adsl daemon:
   package/kernel/lantiq/ltq-adsl/patches/100-dsl_compat.patch:+   
device_create(dsl_class, NULL, MKDEV(DRV_DSL_CPE_API_DEV_MAJOR, 0), NULL, 
"dsl_cpe_api");
   package/kernel/lantiq/ltq-vdsl/patches/100-compat.patch:+   device_create(dsl_class, 
NULL, dsl_devt, NULL, "dsl_cpe_api0");
- use callDSLMetrics() for luci, per jo
- add Tested-by tags

This is to significantly speed up the generation of the metrics.

The motivation comes from the fact that ~2.6s is just way too
ineffcient for interval based metric collectors like prometheus or
collectd.

The luci status page also loads/refreshes alot faster.

$ time /etc/init.d/dsl_control dslstat
real0m 2.66s
user0m 0.90s
sys 0m 1.76s

$ time ubus call dsl metrics
real0m 0.02s
user0m 0.00s
sys 0m 0.01s

The ltq-adsl-app changes are only compile time tested.



Do you have pull requests on github for the luci and package feed changes?

Hauke



OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH v3 0/6] add ubus support to ltq-[v|a]dsl-app

2021-01-26 Thread Hauke Mehrtens

On 1/26/21 9:00 AM, Andre Heider wrote:

v3:
- copy dsl_cpe_ubus.c from ltq-adsl-app to ltq-vdsl-app instead of using
   a symlink
- squash PKG_RELEASE patches
- move feed patches to PRs:
   https://github.com/openwrt/packages/pull/14572
   https://github.com/openwrt/luci/pull/4749

v2:
- drop 0002-ltq-vdsl-app-fix-Wundef-warnings.patch
- use "/dev/dsl_cpe_api" without the "0" suffix for the adsl daemon:
   package/kernel/lantiq/ltq-adsl/patches/100-dsl_compat.patch:+   
device_create(dsl_class, NULL, MKDEV(DRV_DSL_CPE_API_DEV_MAJOR, 0), NULL, 
"dsl_cpe_api");
   package/kernel/lantiq/ltq-vdsl/patches/100-compat.patch:+   device_create(dsl_class, 
NULL, dsl_devt, NULL, "dsl_cpe_api0");
- use callDSLMetrics() for luci, per jo
- add Tested-by tags

This is to significantly speed up the generation of the metrics.

The motivation comes from the fact that ~2.6s is just way too
ineffcient for interval based metric collectors like prometheus or
collectd.

The luci status page also loads/refreshes alot faster.

$ time /etc/init.d/dsl_control dslstat
real0m 2.66s
user0m 0.90s
sys 0m 1.76s

$ time ubus call dsl metrics
real0m 0.02s
user0m 0.00s
sys 0m 0.01s

The ltq-adsl-app changes are only compile time tested.

Andre Heider (6):
   ltq-vdsl-app: shutdown upon sigterm
   ltq-vdsl-app: add ubus support to get metrics
   ltq-adsl-app: add ubus support to get metrics
   ltq-vdsl-app: use ubus to provide metrics
   ltq-adsl-app: use ubus to provide metrics
   ltq-dsl-base: remove usused lantiq_dsl.sh


Hi Andre,

This looks good to me and also thanks Martin Schiller for testing.

I would like to merge this in the next days. I do not have an ADSL line 
or a working Danube board here, did anyone tried this on Danube or 
Amazon SE? The changes are looking ok and we can wait for people to 
complain. ;-)


@Jow and @Rosen: are the changes in the feed ok? I would also like to 
merge them in parallel?


Hauke

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH] util-linux: fix bad pkgconf variable

2021-01-27 Thread Hauke Mehrtens

On 1/20/21 1:16 AM, Rosen Penev wrote:

Because of the lib prefix, it's not getting substituted properly and
breaks compilation of other packages.

Fixes error with at least btrfs-progs:

Package '@LIBSELINUX@', required by 'mount', not found
Package '@LIBCRYPTSETUP@', required by 'mount', not foun

Signed-off-by: Rosen Penev 
---
  package/utils/util-linux/Makefile |  2 +-
  .../util-linux/patches/010-mount-pkgconfig.patch  | 11 +++
  2 files changed, 12 insertions(+), 1 deletion(-)
  create mode 100644 package/utils/util-linux/patches/010-mount-pkgconfig.patch

diff --git a/package/utils/util-linux/Makefile 
b/package/utils/util-linux/Makefile
index 31a66493e9..7551fe867b 100644
--- a/package/utils/util-linux/Makefile
+++ b/package/utils/util-linux/Makefile
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
  
  PKG_NAME:=util-linux

  PKG_VERSION:=2.36.1
-PKG_RELEASE:=1
+PKG_RELEASE:=2
  
  PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz

  PKG_SOURCE_URL:=@KERNEL/linux/utils/$(PKG_NAME)/v2.36
diff --git a/package/utils/util-linux/patches/010-mount-pkgconfig.patch 
b/package/utils/util-linux/patches/010-mount-pkgconfig.patch
new file mode 100644
index 00..a0f9bf3a3c
--- /dev/null
+++ b/package/utils/util-linux/patches/010-mount-pkgconfig.patch
@@ -0,0 +1,11 @@
+--- a/libmount/mount.pc.in
 b/libmount/mount.pc.in
+@@ -17,7 +17,7 @@ includedir=@includedir@
+ Name: mount
+ Description: mount library
+ Version: @LIBMOUNT_VERSION@
+-Requires.private: blkid @LIBSELINUX@ @LIBCRYPTSETUP@
++Requires.private: blkid @SELINUX_LIBS@ @CRYPTSETUP_LIBS@
+ Cflags: -I${includedir}/libmount
+ Libs: -L${libdir} -lmount
+ Libs.private: @LIBDL@


Hi,

This problem was introduced in OpenWrt in this patch:
https://git.openwrt.org/ba887275ca56c28e6b7a6aecda26e7fd4107f4bc

The @LIBSELINUX@ and @LIBCRYPTSETUP@ expansions are applied to all files 
in the PATHFILES variable, see here:

https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git/tree/Makefile.am?h=v2.36.1#n175

All Makefile.in files are automatically in there and some are manually 
added with PATHFILES. The mentioned patch in OpenWrt removes these files 
from the PATHFILES variable.


We should try to fix or get rid of this OpenWrt patch.

Hauke



OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


OpenWrt add dependency to swig for U-Boot builds

2021-01-31 Thread Hauke Mehrtens
The U-Boot build for more and more SoCs is using binman by default to 
combine the images (SPL, U-Boot, ...). Binman is build from the U-Boot 
project and it needs swig to build. We have multiple patches in OpenWrt 
to remove this dependency from U-Boot, but it costs more and more time 
to revert back to the old code. We have them in sunxi and rockchip 
U-Boot, the Mediatek U-Boot build failed some time ago because of 
missing swig in build bots.


I was just trying to update sunxi U-Boot to 2021.01 and the binman usage 
changed again, so it needs more adaptations.


Building swig in OpenWrt tools will not be easy. We needs swig with 
python bindings and this version needs the python development headers to 
build.


I would like to add swig as an official dependency to OpenWrt, we could 
make it depend on the target if this is possible.


Does anyone have an opinion on this topic?

Hauke



OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH 1/2] tools: mkimage: Update U-Boot to version 2021.01

2021-01-31 Thread Hauke Mehrtens
* The fit image is now created with 0666 permission in upstream U-Boot
  remove our patch switch creates it with 0744
* The generated/autoconf.h file is created now as an empty file, it is
  not needed to remove this include any more.
* Upstream lib/rsa/rsa-sign.c now includes stdlib.h instead of malloc.h
* ALIGN_MASK was moved to imagetool.h, own patch should not be needed
  any more.

Signed-off-by: Hauke Mehrtens 
---

Could someone test this on MacOS please.

 tools/mkimage/Makefile|  6 +++--
 .../patches/020-fix-file-creation-perms.patch | 11 
 .../030-allow-to-use-different-magic.patch| 14 +-
 ...d-compatibility-with-non-Linux-hosts.patch | 26 ---
 .../070-remove_generated_autoconf.patch   | 10 ---
 .../patches/210-link-libcrypto-static.patch   |  4 +--
 6 files changed, 13 insertions(+), 58 deletions(-)
 delete mode 100644 tools/mkimage/patches/020-fix-file-creation-perms.patch
 delete mode 100644 tools/mkimage/patches/070-remove_generated_autoconf.patch

diff --git a/tools/mkimage/Makefile b/tools/mkimage/Makefile
index 90ecdaaa6e57..6901d921cfc6 100644
--- a/tools/mkimage/Makefile
+++ b/tools/mkimage/Makefile
@@ -7,14 +7,14 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=mkimage
-PKG_VERSION:=2020.04
+PKG_VERSION:=2021.01
 
 PKG_SOURCE:=u-boot-$(PKG_VERSION).tar.bz2
 PKG_SOURCE_URL:= \
https://mirror.cyberbits.eu/u-boot \
https://ftp.denx.de/pub/u-boot \
ftp://ftp.denx.de/pub/u-boot
-PKG_HASH:=fe732aaf037d9cc3c0909bad8362af366ae964bbdac6913a34081ff4ad565372
+PKG_HASH:=b407e1510a74e863b8b5cb42a24625344f0e0c2fc7582d8c866bd899367d0454
 
 HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/u-boot-$(PKG_VERSION)
 
@@ -24,6 +24,8 @@ define Host/Prepare
$(Host/Prepare/Default)
mkdir -p $(HOST_BUILD_DIR)/include/config
touch $(HOST_BUILD_DIR)/include/config/auto.conf
+   mkdir -p $(HOST_BUILD_DIR)/include/generated/
+   touch $(HOST_BUILD_DIR)/include/generated/autoconf.h
 endef
 
 define Host/Compile
diff --git a/tools/mkimage/patches/020-fix-file-creation-perms.patch 
b/tools/mkimage/patches/020-fix-file-creation-perms.patch
deleted file mode 100644
index 80cda288ab3d..
--- a/tools/mkimage/patches/020-fix-file-creation-perms.patch
+++ /dev/null
@@ -1,11 +0,0 @@
 a/tools/fit_image.c
-+++ b/tools/fit_image.c
-@@ -642,7 +642,7 @@ static int copyfile(const char *src, con
-   goto out;
-   }
- 
--  fd_dst = open(dst, O_WRONLY | O_CREAT, 0700);
-+  fd_dst = open(dst, O_WRONLY | O_CREAT, 0744);
-   if (fd_dst < 0) {
-   printf("Can't open file %s (%s)\n", dst, strerror(errno));
-   goto out;
diff --git a/tools/mkimage/patches/030-allow-to-use-different-magic.patch 
b/tools/mkimage/patches/030-allow-to-use-different-magic.patch
index 8d79de29921a..3a1677d54ddb 100644
--- a/tools/mkimage/patches/030-allow-to-use-different-magic.patch
+++ b/tools/mkimage/patches/030-allow-to-use-different-magic.patch
@@ -2,7 +2,7 @@ This patch makes it possible to set a custom image magic.
 
 --- a/tools/mkimage.c
 +++ b/tools/mkimage.c
-@@ -20,6 +20,7 @@ static struct image_tool_params params =
+@@ -21,6 +21,7 @@ static struct image_tool_params params =
.arch = IH_ARCH_PPC,
.type = IH_TYPE_KERNEL,
.comp = IH_COMP_GZIP,
@@ -10,7 +10,7 @@ This patch makes it possible to set a custom image magic.
.dtc = MKIMAGE_DEFAULT_DTC_OPTIONS,
.imagename = "",
.imagename2 = "",
-@@ -76,11 +77,12 @@ static void usage(const char *msg)
+@@ -82,11 +83,12 @@ static void usage(const char *msg)
 "  -l ==> list image header information\n",
params.cmdname);
fprintf(stderr,
@@ -24,16 +24,16 @@ This patch makes it possible to set a custom image magic.
"  -a ==> set load address to 'addr' (hex)\n"
"  -e ==> set entry point to 'ep' (hex)\n"
"  -n ==> set image name to 'name'\n"
-@@ -143,7 +145,7 @@ static void process_args(int argc, char
+@@ -150,7 +152,7 @@ static void process_args(int argc, char
int opt;
  
while ((opt = getopt(argc, argv,
--   "a:A:b:c:C:d:D:e:Ef:Fk:i:K:ln:N:p:O:rR:qsT:vVx")) 
!= -1) {
-+   
"a:A:b:c:C:d:D:e:Ef:Fk:i:K:lM:n:N:p:O:rR:qsT:vVx")) != -1) {
+- "a:A:b:B:c:C:d:D:e:Ef:Fk:i:K:ln:N:p:O:rR:qstT:vVx")) != -1) {
++ "a:A:b:B:c:C:d:D:e:Ef:Fk:i:K:lM:n:N:p:O:rR:qstT:vVx")) != 
-1) {
switch (opt) {
case 'a':
params.addr = strtoull(optarg, &ptr, 16);
-@@ -221,6 +223,14 @@ static void process_args(int argc, char
+@@ -237,6 +239,14 @@ static void process_args(int argc, char

[PATCH 2/2] uboot-envtools: Update to version 2021.01

2021-01-31 Thread Hauke Mehrtens
Signed-off-by: Hauke Mehrtens 
---
 package/boot/uboot-envtools/Makefile | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/boot/uboot-envtools/Makefile 
b/package/boot/uboot-envtools/Makefile
index 5014b71ef67e..a9eccec0cec9 100644
--- a/package/boot/uboot-envtools/Makefile
+++ b/package/boot/uboot-envtools/Makefile
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=uboot-envtools
 PKG_DISTNAME:=u-boot
-PKG_VERSION:=2020.04
+PKG_VERSION:=2021.01
 PKG_RELEASE:=$(AUTORELEASE)
 
 PKG_SOURCE:=$(PKG_DISTNAME)-$(PKG_VERSION).tar.bz2
@@ -17,7 +17,7 @@ PKG_SOURCE_URL:= \
 https://ftp.denx.de/pub/u-boot \
 https://mirror.cyberbits.eu/u-boot \
 ftp://ftp.denx.de/pub/u-boot
-PKG_HASH:=fe732aaf037d9cc3c0909bad8362af366ae964bbdac6913a34081ff4ad565372
+PKG_HASH:=b407e1510a74e863b8b5cb42a24625344f0e0c2fc7582d8c866bd899367d0454
 PKG_SOURCE_SUBDIR:=$(PKG_DISTNAME)-$(PKG_VERSION)
 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_DISTNAME)-$(PKG_VERSION)
 
-- 
2.20.1


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCHv3 1/3] base-files: use hwclock --systz

2021-01-31 Thread Hauke Mehrtens

Hi Rosen,

Are you planning to send a new version soon?

Hauke

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH] dnsmasq: Update to final version 2.84

2021-02-03 Thread Hauke Mehrtens
Only small changes compared to the 2.84test3 version.

Signed-off-by: Hauke Mehrtens 
---
 package/network/services/dnsmasq/Makefile   | 6 +++---
 .../patches/100-remove-old-runtime-kernel-support.patch | 4 ++--
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/package/network/services/dnsmasq/Makefile 
b/package/network/services/dnsmasq/Makefile
index 2e404dfef337..fc733a4eaf09 100644
--- a/package/network/services/dnsmasq/Makefile
+++ b/package/network/services/dnsmasq/Makefile
@@ -8,13 +8,13 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=dnsmasq
-PKG_UPSTREAM_VERSION:=2.84test3
+PKG_UPSTREAM_VERSION:=2.84
 PKG_VERSION:=$(subst test,~~test,$(subst rc,~rc,$(PKG_UPSTREAM_VERSION)))
 PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_UPSTREAM_VERSION).tar.xz
-PKG_SOURCE_URL:=http://thekelleys.org.uk/dnsmasq/test-releases
-PKG_HASH:=20d1109c991ca08778ea20322b8f3245f2e974688d494b59b2e6ae096ec592b1
+PKG_SOURCE_URL:=http://thekelleys.org.uk/dnsmasq
+PKG_HASH:=603195c64b73137609b07e1024ae0b37f652b2f5fe467dce66985b3d1850050c
 
 PKG_LICENSE:=GPL-2.0
 PKG_LICENSE_FILES:=COPYING
diff --git 
a/package/network/services/dnsmasq/patches/100-remove-old-runtime-kernel-support.patch
 
b/package/network/services/dnsmasq/patches/100-remove-old-runtime-kernel-support.patch
index bd11806ae0a3..12436ef01b11 100644
--- 
a/package/network/services/dnsmasq/patches/100-remove-old-runtime-kernel-support.patch
+++ 
b/package/network/services/dnsmasq/patches/100-remove-old-runtime-kernel-support.patch
@@ -27,7 +27,7 @@ Signed-off-by: Kevin Darbyshire-Bryant 

  
 --- a/src/dnsmasq.h
 +++ b/src/dnsmasq.h
-@@ -1125,7 +1125,7 @@ extern struct daemon {
+@@ -1130,7 +1130,7 @@ extern struct daemon {
int inotifyfd;
  #endif
  #if defined(HAVE_LINUX_NETWORK)
@@ -36,7 +36,7 @@ Signed-off-by: Kevin Darbyshire-Bryant 

  #elif defined(HAVE_BSD_NETWORK)
int dhcp_raw_fd, dhcp_icmp_fd, routefd;
  #endif
-@@ -1306,9 +1306,6 @@ int read_write(int fd, unsigned char *pa
+@@ -1312,9 +1312,6 @@ int read_write(int fd, unsigned char *pa
  void close_fds(long max_fd, int spare1, int spare2, int spare3);
  int wildcard_match(const char* wildcard, const char* match);
  int wildcard_matchn(const char* wildcard, const char* match, int num);
-- 
2.20.1


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH] ppp: Update to version 2.4.9

2021-02-03 Thread Hauke Mehrtens
Upstream integrated multiple patches from Distributions and did other
changes:
* rp-pppoe.so was renamed to pppoe.so
* Converted to  ANSI C

The following patches were applied upstream:
* 100-debian_ip-ip_option.patch
* 101-debian_close_dev_ppp.patch
* 103-debian_fix_link_pidfile.patch
* 106-debian_stripMSdomain.patch
* 107-debian_pppoatm_wildcard.patch
* 110-debian_defaultroute.patch
* 202-no_strip.patch

Compilation with musl libx was fixed upstream so
140-pppoe_compile_fix.patch  is not needed any more

Parts of the 203-opt_flags.patch patch were applied in a different way
upstream.

Signed-off-by: Hauke Mehrtens 
---
 package/network/services/ppp/Makefile |  10 +-
 package/network/services/ppp/files/ppp.sh |   4 +-
 .../010-use_target_for_configure.patch|  22 +-
 .../ppp/patches/100-debian_ip-ip_option.patch |  96 --
 .../patches/101-debian_close_dev_ppp.patch|  28 --
 .../patches/103-debian_fix_link_pidfile.patch |  23 --
 .../ppp/patches/105-debian_demand.patch   |  30 +-
 .../patches/106-debian_stripMSdomain.patch|  47 ---
 .../patches/107-debian_pppoatm_wildcard.patch |  25 --
 .../ppp/patches/110-debian_defaultroute.patch | 314 --
 .../120-debian_ipv6_updown_option.patch   |  18 +-
 .../ppp/patches/140-pppoe_compile_fix.patch   |  36 --
 .../services/ppp/patches/200-makefile.patch   |  23 +-
 .../ppp/patches/201-mppe_mppc_1.1.patch   | 133 +---
 .../services/ppp/patches/202-no_strip.patch   |  88 -
 .../services/ppp/patches/203-opt_flags.patch  |  36 +-
 .../patches/205-no_exponential_timeout.patch  |   4 +-
 .../ppp/patches/207-lcp_mtu_max.patch |   2 +-
 .../ppp/patches/208-fix_status_code.patch |   2 +-
 .../300-filter-pcap-includes-lib.patch|   6 +-
 .../ppp/patches/310-precompile_filter.patch   |  20 +-
 ...multilink_support_custom_iface_names.patch |  33 +-
 .../330-retain_foreign_default_routes.patch   |   2 +-
 .../340-populate_default_gateway.patch|   6 +-
 .../patches/400-simplify_kernel_checks.patch  |  32 +-
 .../ppp/patches/401-no_record_file.patch  |   6 +-
 .../services/ppp/patches/403-no_wtmp.patch|   4 +-
 .../404-remove_obsolete_protocol_names.patch  |  16 +-
 .../ppp/patches/405-no_multilink_option.patch |   2 +-
 .../ppp/patches/500-add-pptp-plugin.patch |  14 +-
 ...openssl-for-the-DES-instead-of-the-l.patch |  25 +-
 31 files changed, 222 insertions(+), 885 deletions(-)
 delete mode 100644 
package/network/services/ppp/patches/100-debian_ip-ip_option.patch
 delete mode 100644 
package/network/services/ppp/patches/101-debian_close_dev_ppp.patch
 delete mode 100644 
package/network/services/ppp/patches/103-debian_fix_link_pidfile.patch
 delete mode 100644 
package/network/services/ppp/patches/106-debian_stripMSdomain.patch
 delete mode 100644 
package/network/services/ppp/patches/107-debian_pppoatm_wildcard.patch
 delete mode 100644 
package/network/services/ppp/patches/110-debian_defaultroute.patch
 delete mode 100644 
package/network/services/ppp/patches/140-pppoe_compile_fix.patch
 delete mode 100644 package/network/services/ppp/patches/202-no_strip.patch

diff --git a/package/network/services/ppp/Makefile 
b/package/network/services/ppp/Makefile
index 48d7120a7296..8f4fed169bcf 100644
--- a/package/network/services/ppp/Makefile
+++ b/package/network/services/ppp/Makefile
@@ -13,14 +13,14 @@ PKG_RELEASE:=3
 
 PKG_SOURCE_PROTO:=git
 PKG_SOURCE_URL:=https://github.com/paulusmack/ppp
-PKG_SOURCE_DATE:=2020-10-03
-PKG_SOURCE_VERSION:=ad3937a0a38a696eb1a37dbf8f92e8e6072cdccb
-PKG_MIRROR_HASH:=c5b39615eb62728431b19f3ae5428eb1e2fc705b4b7b960228fe5b5d7b5a4bca
+PKG_SOURCE_DATE:=2021-01-04
+PKG_SOURCE_VERSION:=4fb319056f168bb8379865b91b4fd3e1ada73f1e
+PKG_MIRROR_HASH:=889041bbf917d1f040bb316ea863a991755aa8c2c7f38717806a05b919036c65
 PKG_MAINTAINER:=Felix Fietkau 
 PKG_LICENSE:=BSD-4-Clause
 PKG_CPE_ID:=cpe:/a:samba:ppp
 
-PKG_RELEASE_VERSION:=2.4.8
+PKG_RELEASE_VERSION:=2.4.9
 PKG_VERSION:=$(PKG_RELEASE_VERSION).git-$(PKG_SOURCE_DATE)
 
 PKG_BUILD_DEPENDS:=libpcap
@@ -242,7 +242,7 @@ endef
 
 define Package/ppp-mod-pppoe/install
$(INSTALL_DIR) $(1)/usr/lib/pppd/$(PKG_RELEASE_VERSION)
-   $(INSTALL_BIN) 
$(PKG_INSTALL_DIR)/lib/pppd/$(PKG_RELEASE_VERSION)/rp-pppoe.so \
+   $(INSTALL_BIN) 
$(PKG_INSTALL_DIR)/lib/pppd/$(PKG_RELEASE_VERSION)/pppoe.so \
$(1)/usr/lib/pppd/$(PKG_RELEASE_VERSION)/
 endef
 
diff --git a/package/network/services/ppp/files/ppp.sh 
b/package/network/services/ppp/files/ppp.sh
index b553effd889e..7bbc497c43bd 100755
--- a/package/network/services/ppp/files/ppp.sh
+++ b/package/network/services/ppp/files/ppp.sh
@@ -234,7 +234,7 @@ proto_pppoe_setup() {
json_get_var padi_timeout padi_timeout
 
ppp_generic_setup "$config" \
-   plugin rp-pppoe.so \
+   plugin pppoe.so \
${ac:+rp_pppoe_ac "$ac"} \
${service:+rp_ppp

Re: [PATCHv3 2/3] busybox: update to 1.33

2021-02-03 Thread Hauke Mehrtens

On 2/1/21 1:15 AM, Rosen Penev wrote:

Remove stime backport.

Remove static libgcc patch as upstream fixed it with
BUSYBOX_DEFAULT_STATIC_LIBGCC which defauls to off.

Remove date -k patch as it no longer applies. It's also pointless as
busybox' hwclock utility can do the same thing.

Remove ntpd patch as that seems to have been applied upstream.

Add smalll patch fixing compilation with SELinux. Upstream commit
2496616b0a8d1c80cd1416b73a4847b59b9f969a renamed the variable without
renaming it in the SELinux path.

Refresh config and patches.

Signed-off-by: Rosen Penev 
---
  v2: refreshed config and slight rewording.
  package/utils/busybox/Config-defaults.in  |  48 ++-
  package/utils/busybox/Makefile|   6 +-
  package/utils/busybox/config/Config.in|  38 --
  .../utils/busybox/config/archival/Config.in   |   2 +-
  .../busybox/config/console-tools/Config.in|  13 --
  .../utils/busybox/config/coreutils/Config.in  |  10 +-
  .../utils/busybox/config/e2fsprogs/Config.in  |   1 -
  .../utils/busybox/config/findutils/Config.in  |   8 ++
  .../busybox/config/klibc-utils/Config.in  |   1 -
  package/utils/busybox/config/libbb/Config.in  |   2 -
  .../utils/busybox/config/miscutils/Config.in  |  36 +
  .../utils/busybox/config/modutils/Config.in   |   6 -
  .../utils/busybox/config/networking/Config.in |  68 ++
  .../busybox/config/networking/udhcp/Config.in |   2 -
  package/utils/busybox/config/procps/Config.in |   3 -
  package/utils/busybox/config/shell/Config.in  | 124 ++
  .../utils/busybox/config/sysklogd/Config.in   |  10 +-
  .../utils/busybox/config/util-linux/Config.in |  62 ++---
  .../config/util-linux/volume_id/Config.in |   6 +
  .../001-remove-stime-function-calls.patch |  84 
  .../patches/010-fix-wrong-variable.patch  |  11 ++
  .../patches/110-no_static_libgcc.patch|  11 --
  .../busybox/patches/120-lto-jobserver.patch   |   6 +-
  .../patches/200-udhcpc_reduce_msgs.patch  |   4 +-
  .../patches/201-udhcpc_changed_ifindex.patch  |   2 +-
  .../203-udhcpc_renew_no_deconfig.patch|   2 +-
  .../patches/230-add_nslookup_lede.patch   |   6 +-
  .../busybox/patches/250-date-k-flag.patch |  92 -
  .../500-move-traceroute-applets-to-bin.patch  |   2 +-
  ...520-loginutils-handle-crypt-failures.patch |   6 +-
  .../patches/600-allow-ntpd-non-root.patch |  12 --
  31 files changed, 255 insertions(+), 429 deletions(-)
  delete mode 100644 
package/utils/busybox/patches/001-remove-stime-function-calls.patch
  create mode 100644 package/utils/busybox/patches/010-fix-wrong-variable.patch
  delete mode 100644 package/utils/busybox/patches/110-no_static_libgcc.patch
  delete mode 100644 package/utils/busybox/patches/250-date-k-flag.patch
  delete mode 100644 package/utils/busybox/patches/600-allow-ntpd-non-root.patch


Do we want to merge this into OpenWrt master before the 21.X branch is 
created?
As 21.X is delayed again I would prefer to merge this now, then we have 
a more recent base for potential security updates later.


The commit message should probably extended with some content Hannu 
suggested.


Hauke

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH] wolfssl: Backport fix for CVE-2021-3336

2021-02-08 Thread Hauke Mehrtens
This should fix CVE-2021-3336:
DoTls13CertificateVerify in tls13.c in wolfSSL through 4.6.0 does not
cease processing for certain anomalous peer behavior (sending an
ED22519, ED448, ECC, or RSA signature without the corresponding
certificate).

The patch is backported from the upstream wolfssl development branch.

Signed-off-by: Hauke Mehrtens 
---
 package/libs/wolfssl/Makefile |  2 +-
 .../wolfssl/patches/010-CVE-2021-3336.patch   | 53 +++
 2 files changed, 54 insertions(+), 1 deletion(-)
 create mode 100644 package/libs/wolfssl/patches/010-CVE-2021-3336.patch

diff --git a/package/libs/wolfssl/Makefile b/package/libs/wolfssl/Makefile
index dcc6aca40cb4..ff01fca66310 100644
--- a/package/libs/wolfssl/Makefile
+++ b/package/libs/wolfssl/Makefile
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=wolfssl
 PKG_VERSION:=4.6.0-stable
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=https://github.com/wolfSSL/wolfssl/archive/v$(PKG_VERSION)
diff --git a/package/libs/wolfssl/patches/010-CVE-2021-3336.patch 
b/package/libs/wolfssl/patches/010-CVE-2021-3336.patch
new file mode 100644
index ..abb9bfdd9bcb
--- /dev/null
+++ b/package/libs/wolfssl/patches/010-CVE-2021-3336.patch
@@ -0,0 +1,53 @@
+From fad1e67677bf7797b6bd6e1f21a513c289d963a7 Mon Sep 17 00:00:00 2001
+From: Sean Parkinson 
+Date: Thu, 21 Jan 2021 08:24:38 +1000
+Subject: [PATCH] TLS 1.3: ensure key for signature in CertificateVerify
+
+---
+ src/tls13.c | 18 +-
+ 1 file changed, 13 insertions(+), 5 deletions(-)
+
+--- a/src/tls13.c
 b/src/tls13.c
+@@ -5624,28 +5624,36 @@ static int DoTls13CertificateVerify(WOLF
+ #ifdef HAVE_ED25519
+ if (args->sigAlgo == ed25519_sa_algo &&
+   
!ssl->peerEd25519KeyPresent) {
+-WOLFSSL_MSG("Oops, peer sent ED25519 key but not in verify");
++WOLFSSL_MSG("Peer sent ED22519 sig but not ED22519 cert");
++ret = SIG_VERIFY_E;
++goto exit_dcv;
+ }
+ #endif
+ #ifdef HAVE_ED448
+ if (args->sigAlgo == ed448_sa_algo && !ssl->peerEd448KeyPresent) {
+-WOLFSSL_MSG("Oops, peer sent ED448 key but not in verify");
++WOLFSSL_MSG("Peer sent ED448 sig but not ED448 cert");
++ret = SIG_VERIFY_E;
++goto exit_dcv;
+ }
+ #endif
+ #ifdef HAVE_ECC
+ if (args->sigAlgo == ecc_dsa_sa_algo &&
+
!ssl->peerEccDsaKeyPresent) {
+-WOLFSSL_MSG("Oops, peer sent ECC key but not in verify");
++WOLFSSL_MSG("Peer sent ECC sig but not ECC cert");
++ret = SIG_VERIFY_E;
++goto exit_dcv;
+ }
+ #endif
+ #ifndef NO_RSA
+ if (args->sigAlgo == rsa_sa_algo) {
+-WOLFSSL_MSG("Oops, peer sent PKCS#1.5 signature");
++WOLFSSL_MSG("Peer sent PKCS#1.5 algo but not in certificate");
+ ERROR_OUT(INVALID_PARAMETER, exit_dcv);
+ }
+ if (args->sigAlgo == rsa_pss_sa_algo &&
+  (ssl->peerRsaKey == NULL || 
!ssl->peerRsaKeyPresent)) {
+-WOLFSSL_MSG("Oops, peer sent RSA key but not in verify");
++WOLFSSL_MSG("Peer sent RSA sig but not RSA cert");
++ret = SIG_VERIFY_E;
++goto exit_dcv;
+ }
+ #endif
+ 
-- 
2.20.1


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


OpenWrt 21.02 planning

2021-02-11 Thread Hauke Mehrtens

Hi,

We just had our developer meeting and want to do branch the next release 
soon. I just want to coordinate the release planning here, the full 
meeting notes will be published later.


We want to merge the mac80211 update to version 5.10 found here:
https://git.openwrt.org/?p=openwrt/staging/hauke.git;a=shortlog;h=refs/heads/mac80211-5.10
Felix uses this since some time now and found no problems, I am also not 
aware of any problems. Kernel 5.10 is an LTS kernel which makes security 
maintenance easier for us.

I plan to merge this at the weekend.

We would also like to get this busybox update in:
https://patchwork.ozlabs.org/project/openwrt/list/?series=227292
It also works well and should make it easier to maintain busybox in our 
stable release.

I plan to merge this at the weekend.

It would be nice to get DSA support in LuCI. We have this pull request:
https://github.com/openwrt/luci/pull/4307
This still has problems with Wireless bridge-vlan.
If this is not ready in time for the branching we will backport it later.

Rafał is asking about the general LuCI status here:
https://lists.openwrt.org/pipermail/openwrt-devel/2021-February/033715.html


For more details, we have this release goals page:
https://openwrt.org/docs/guide-developer/releases/goals/21.02

lynxis and ynezz will prepare the build bot setup to build snapshots of 
the 21.02 release branch and the releases (candidates).


If everything will look good, we will branch 21.02 sometime next week.

If the update of mac80ß211 or busybox breaks something, we will fix it 
or revert the update this should not delay the branching.


I would like to have a 21.02-rc1 in 2 or 3 weeks after the branching, so 
we get more test coverage.


Do we still have some important bugs we should really fix in master or 
anything which could be blocking for the release?

Any objections to this plan?

Hauke



OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


MT7612EN problems with DFS

2021-02-12 Thread Hauke Mehrtens

Hi Felix,

DFS on the Xiaomi Mi WiFi R3G (MT7612EN) stops working after about 1 day 
for me with current OpenWrt master (r15718).


I think it worked well with OpenWrt from beginning of December with 
mac80211 5.10.


I see this in the log:

Wed Feb 10 16:54:29 2021 daemon.notice hostapd: wlan1: 
DFS-RADAR-DETECTED freq=5580 ht_enabled=0 chan_offset=0 chan_width=3 
cf1=5610 cf2=0
Wed Feb 10 16:54:29 2021 daemon.notice hostapd: dfs_downgrade_bandwidth: 
no DFS channels left, waiting for NOP to finish

Wed Feb 10 16:54:29 2021 daemon.notice hostapd: wlan1: AP-DISABLED
Wed Feb 10 16:54:29 2021 daemon.notice hostapd: wlan1: 
AP-STA-DISCONNECTED b2:03:8c:14:b2:26
Wed Feb 10 16:54:29 2021 daemon.notice hostapd: wlan1: 
AP-STA-DISCONNECTED 04:ed:33:d2:3f:e8
Wed Feb 10 16:54:29 2021 daemon.err hostapd: 20/40 MHz: center segment 0 
(=122) and center freq 1 (=5590) not in sync
Wed Feb 10 16:54:29 2021 daemon.notice hostapd: nl80211: deinit 
ifname=wlan1 disabled_11b_rates=0
Wed Feb 10 16:54:29 2021 kern.info kernel: [145806.582851] device wlan1 
left promiscuous mode
Wed Feb 10 16:54:29 2021 kern.info kernel: [145806.587707] br-lan: port 
4(wlan1) entered disabled state
Wed Feb 10 16:54:29 2021 daemon.notice netifd: Network device 'wlan1' 
link is down
Wed Feb 10 16:54:29 2021 daemon.notice hostapd: wlan1: interface state 
ENABLED->DISABLED
Wed Feb 10 16:54:29 2021 daemon.debug dnsmasq[4383]: stopped listening 
on wlan1(#15): fe80::4231:3cff:fe02:8fba%wlan1 port 53
Wed Feb 10 16:54:29 2021 kern.info kernel: [145806.659862] br-lan: port 
4(wlan1) entered blocking state
Wed Feb 10 16:54:29 2021 kern.info kernel: [145806.665285] br-lan: port 
4(wlan1) entered disabled state
Wed Feb 10 16:54:29 2021 kern.info kernel: [145806.671295] device wlan1 
entered promiscuous mode
Wed Feb 10 16:54:29 2021 daemon.notice hostapd: wlan1: interface state 
DISABLED->COUNTRY_UPDATE
Wed Feb 10 16:54:29 2021 daemon.notice hostapd: wlan1: interface state 
COUNTRY_UPDATE->HT_SCAN

Wed Feb 10 16:54:30 2021 daemon.err hostapd: could not get valid channel
Wed Feb 10 16:54:30 2021 daemon.notice hostapd: wlan1: interface state 
HT_SCAN->DFS


Wed Feb 10 17:24:48 2021 daemon.notice hostapd: wlan1: DFS-NOP-FINISHED 
freq=5580 ht_enabled=0 chan_offset=0 chan_width=0 cf1=5580 cf2=0

Wed Feb 10 17:24:48 2021 daemon.err hostapd: could not get valid channel
Wed Feb 10 17:24:48 2021 daemon.notice hostapd: wlan1: interface state 
DFS->DFS
Wed Feb 10 17:24:48 2021 daemon.notice hostapd: wlan1: DFS-NOP-FINISHED 
freq=5600 ht_enabled=0 chan_offset=0 chan_width=0 cf1=5600 cf2=0
Wed Feb 10 17:24:48 2021 daemon.notice hostapd: wlan1: interface state 
DFS->DFS
Wed Feb 10 17:24:48 2021 daemon.notice hostapd: wlan1: DFS-CAC-START 
freq=5580 chan=116 sec_chan=1, width=0, seg0=122, seg1=0, cac_time=60s
Wed Feb 10 17:24:48 2021 daemon.err hostapd: 20/40 MHz: center segment 0 
(=122) and center freq 1 (=5590) not in sync

Wed Feb 10 17:24:48 2021 daemon.err hostapd: Can't set freq params
Wed Feb 10 17:24:48 2021 daemon.err hostapd: DFS start_dfs_cac() failed, -1
Wed Feb 10 17:24:48 2021 daemon.notice hostapd: wlan1: DFS-NOP-FINISHED 
freq=5620 ht_enabled=0 chan_offset=0 chan_width=0 cf1=5620 cf2=0
Wed Feb 10 17:24:48 2021 daemon.notice hostapd: wlan1: interface state 
DFS->DFS
Wed Feb 10 17:24:48 2021 daemon.notice hostapd: wlan1: DFS-CAC-START 
freq=5580 chan=116 sec_chan=1, width=0, seg0=122, seg1=0, cac_time=60s
Wed Feb 10 17:24:48 2021 daemon.err hostapd: 20/40 MHz: center segment 0 
(=122) and center freq 1 (=5590) not in sync

Wed Feb 10 17:24:48 2021 daemon.err hostapd: Can't set freq params
Wed Feb 10 17:24:48 2021 daemon.err hostapd: DFS start_dfs_cac() failed, -1
Wed Feb 10 17:24:48 2021 daemon.notice hostapd: wlan1: DFS-NOP-FINISHED 
freq=5640 ht_enabled=0 chan_offset=0 chan_width=0 cf1=5640 cf2=0
Wed Feb 10 17:24:48 2021 daemon.notice hostapd: wlan1: interface state 
DFS->DFS
Wed Feb 10 17:24:48 2021 daemon.notice hostapd: wlan1: DFS-CAC-START 
freq=5580 chan=116 sec_chan=1, width=0, seg0=122, seg1=0, cac_time=60s
Wed Feb 10 17:24:48 2021 daemon.err hostapd: 20/40 MHz: center segment 0 
(=122) and center freq 1 (=5590) not in sync

Wed Feb 10 17:24:48 2021 daemon.err hostapd: Can't set freq params
Wed Feb 10 17:24:48 2021 daemon.err hostapd: DFS start_dfs_cac() failed, -1
--
You can find more logs here:
https://www.hauke-m.de/files/logs/2021-02-12-wlan1.txt

Hauke



OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCHv3 2/3] busybox: update to 1.33

2021-02-14 Thread Hauke Mehrtens

On 2/4/21 5:02 PM, Hannu Nyman wrote:

Hauke Mehrtens kirjoitti 4.2.2021 klo 1.55:

On 2/1/21 1:15 AM, Rosen Penev wrote:

Remove stime backport.

Remove static libgcc patch as upstream fixed it with
BUSYBOX_DEFAULT_STATIC_LIBGCC which defauls to off.

Remove date -k patch as it no longer applies. It's also pointless as
busybox' hwclock utility can do the same thing.

Remove ntpd patch as that seems to have been applied upstream.

Add smalll patch fixing compilation with SELinux. Upstream commit
2496616b0a8d1c80cd1416b73a4847b59b9f969a renamed the variable without
renaming it in the SELinux path.

Refresh config and patches.

Signed-off-by: Rosen Penev 
---
...


Do we want to merge this into OpenWrt master before the 21.X branch is 
created?
As 21.X is delayed again I would prefer to merge this now, then we 
have a more recent base for potential security updates later.



I think that we should merge it. Better to get the new version into the 
new stable release, especially if the branching is not today or tomorrow 
:-(





The commit message should probably extended with some content Hannu 
suggested.



That would help a lot at the next version bump. I have done most the 
busybox version bumps in the last few years (and the actual config 
refresh also this time), and even with that history it is still hard to 
remember the extra changes to be done manually. Better to document them 
in the main commit message.


I listed the needed edits in my earlier response, so Rosen might either 
edit the commit message, or maybe it is easier if Hauke just adds them 
(when you take the commits into your staging tree).


http://lists.openwrt.org/pipermail/openwrt-devel/2021-January/033218.html


Hi Rosen and Hannu,

Is this change of the commit message looking good to you:
https://git.openwrt.org/?p=openwrt/staging/hauke.git;a=commitdiff;h=0275ee5dde7c36c925396779dd23d4f470ab40e1

Hauke



OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: Upcoming 19.07.7 release

2021-02-14 Thread Hauke Mehrtens

On 2/5/21 1:57 PM, Adrian Schmutzler wrote:

HI,


-Original Message-
From: openwrt-devel [mailto:openwrt-devel-boun...@lists.openwrt.org]
On Behalf Of Baptiste Jonglez
Sent: Freitag, 5. Februar 2021 08:57
To: openwrt-devel@lists.openwrt.org
Subject: Upcoming 19.07.7 release

Hi,

We are planning a new 19.07 release in about a week (probably next week-
end).

If you are aware of changes that need to be integrated, now is the time to do
it or mention it here!


just found this old PR here claiming to fix ath10k-ct compile without debugfs 
on 19.07:
https://github.com/openwrt/openwrt/pull/3451

It would be nice if somebody familiar with that could have a look and then 
either review/merge or reject it.

Best

Adrian


Hi,

I am unable to reproduce this problem. I added more details to the pull 
request and asked fro some configuration.


Hauke



OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH] mac80211: Update to version 5.10.16-1

2021-02-14 Thread Hauke Mehrtens
The removed patches were applied upstream.

Signed-off-by: Hauke Mehrtens 
---

The refreshed patches are looking strange, it reverts many changes from this 
commit:
https://git.openwrt.org/?p=openwrt/openwrt.git;a=commitdiff;h=ed1e234d87fc2fc1561b02dcc2f67a464721fc6f

I refreshed the patches like this:
make package/mac80211/{clean,refresh} V=99

 package/kernel/mac80211/Makefile  |  6 +-
 .../ath/080-ath10k_thermal_config.patch   |  2 +-
 ..._hw-issue-external-reset-for-QCA955x.patch | 51 +++--
 .../patches/ath/402-ath_regd_optional.patch   |  2 +-
 .../patches/ath/530-ath9k_extra_leds.patch| 12 +--
 .../ath/551-ath9k_ubnt_uap_plus_hsr.patch |  2 +-
 ...rolling-support-for-various-chipsets.patch | 16 ++--
 ...62-brcmfmac-Disable-power-management.patch |  2 +-
 .../mac80211/patches/brcm/998-survey.patch|  8 +-
 .../patches/build/050-lib80211_option.patch   |  4 +-
 .../602-rt2x00-introduce-rt2x00eeprom.patch   |  2 +-
 ...-differentiate-based-on-SoC-CHIP_VER.patch | 75 ++-
 ...ave-survey-for-every-channel-visited.patch | 14 ++--
 .../100-remove-cryptoapi-dependencies.patch   | 10 +--
 ...ot-maintain-a-backlog-sorted-list-of.patch | 31 
 ...ryption-key-selection-for-802.3-xmit.patch | 53 -
 ...ac80211-fix-fast-rx-encryption-check.patch | 21 --
 ...add-rx-decapsulation-offload-support.patch |  2 +-
 ...-a-mistake-check-for-rx_stats-update.patch | 28 ---
 ...drop-tx-nulldata-packets-on-encrypte.patch | 25 ---
 ...l_ht-improve-ampdu-length-estimation.patch |  6 +-
 ...l_ht-significantly-redesign-the-rate.patch | 16 ++--
 ...-station-rate-table-updates-on-assoc.patch | 38 --
 .../500-mac80211_configure_antenna_gain.patch |  2 +-
 24 files changed, 138 insertions(+), 290 deletions(-)
 delete mode 100644 
package/kernel/mac80211/patches/subsys/313-mac80211-fix-encryption-key-selection-for-802.3-xmit.patch
 delete mode 100644 
package/kernel/mac80211/patches/subsys/314-mac80211-fix-fast-rx-encryption-check.patch
 delete mode 100644 
package/kernel/mac80211/patches/subsys/316-mac80211-fix-a-mistake-check-for-rx_stats-update.patch
 delete mode 100644 
package/kernel/mac80211/patches/subsys/336-mac80211-do-not-drop-tx-nulldata-packets-on-encrypte.patch
 delete mode 100644 
package/kernel/mac80211/patches/subsys/353-mac80211-fix-station-rate-table-updates-on-assoc.patch

diff --git a/package/kernel/mac80211/Makefile b/package/kernel/mac80211/Makefile
index 06fe948fa2ad..f6ad06452f44 100644
--- a/package/kernel/mac80211/Makefile
+++ b/package/kernel/mac80211/Makefile
@@ -10,10 +10,10 @@ include $(INCLUDE_DIR)/kernel.mk
 
 PKG_NAME:=mac80211
 
-PKG_VERSION:=5.10-rc6-1
+PKG_VERSION:=5.10.16-1
 PKG_RELEASE:=1
-PKG_SOURCE_URL:=@KERNEL/linux/kernel/projects/backports/stable/v5.10-rc6/
-PKG_HASH:=24c1e84dc1e7bb52d4f67ce481c242f29212a4ceb7833af30e3c279a3f710832
+PKG_SOURCE_URL:=@KERNEL/linux/kernel/projects/backports/stable/v5.10.16/
+PKG_HASH:=12856db780c5023edc47e2d18486eb3346bb7c82f1f2fc48deb3b163142f7d2d
 
 PKG_SOURCE:=backports-$(PKG_VERSION).tar.xz
 PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/backports-$(PKG_VERSION)
diff --git 
a/package/kernel/mac80211/patches/ath/080-ath10k_thermal_config.patch 
b/package/kernel/mac80211/patches/ath/080-ath10k_thermal_config.patch
index 55d48daa7989..de6f9d9bb079 100644
--- a/package/kernel/mac80211/patches/ath/080-ath10k_thermal_config.patch
+++ b/package/kernel/mac80211/patches/ath/080-ath10k_thermal_config.patch
@@ -37,7 +37,7 @@
  void ath10k_thermal_event_temperature(struct ath10k *ar, int temperature);
 --- a/local-symbols
 +++ b/local-symbols
-@@ -143,6 +143,7 @@ ATH10K_SNOC=
+@@ -142,6 +142,7 @@ ATH10K_SNOC=
  ATH10K_DEBUG=
  ATH10K_DEBUGFS=
  ATH10K_SPECTRAL=
diff --git 
a/package/kernel/mac80211/patches/ath/351-ath9k_hw-issue-external-reset-for-QCA955x.patch
 
b/package/kernel/mac80211/patches/ath/351-ath9k_hw-issue-external-reset-for-QCA955x.patch
index d3248f958b5f..5f265b84c26e 100644
--- 
a/package/kernel/mac80211/patches/ath/351-ath9k_hw-issue-external-reset-for-QCA955x.patch
+++ 
b/package/kernel/mac80211/patches/ath/351-ath9k_hw-issue-external-reset-for-QCA955x.patch
@@ -29,6 +29,21 @@ Signed-off-by: Felix Fietkau 
 -  npend = ath9k_hw_numtxpending(ah, i);
 -  if (npend)
 -  break;
+-  }
+-
+-  if (ah->external_reset &&
+-  (npend || type == ATH9K_RESET_COLD)) {
+-  int reset_err = 0;
+-
+-  ath_dbg(ath9k_hw_common(ah), RESET,
+-  "reset MAC via external reset\n");
+-
+-  reset_err = ah->external_reset();
+-  if (reset_err) {
+-  ath_err(ath9k_hw_common(ah),
+-  "External reset failed, err=%d\n",
+-  reset_err);
+-  return false;
 +  if (type == ATH9K_RESET_COLD)
 +  return true;
 +
@@ -44,47 +59,

Re: uboot-envtools build error in openwrt-21.02.

2021-02-18 Thread Hauke Mehrtens

On 2/18/21 10:40 PM, Etan Kissling wrote:

When building openwrt-21.02 I encountered errors in uboot-envtools.

The problem appears since a recent u-boot update.
https://github.com/u-boot/u-boot/commit/587e4a4296982f85b2a40fc8a704db65079e0aac

Etan

Hi,

I do not see an build problem in the build bots, could you please post 
your error message and your host operating system?


Hauke



OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH v2 2/5] mvebu: refresh 5.10 patches

2021-02-21 Thread Hauke Mehrtens

On 2/20/21 5:55 PM, Tomasz Maciej Nowak wrote:

W dniu 20.02.2021 o 12:53, Rui Salvaterra pisze:

Also delete already upstreamed patches/changes.

Signed-off-by: Rui Salvaterra 
---
  ...t-for-endpoint-to-be-ready-before-tr.patch |  50 ---
  ...-t-rely-on-jiffies-while-holding-spi.patch |  54 ---
  ...ntroduce-mvneta_update_stats-routine.patch |  95 --
  ...duce-page-pool-API-for-sw-buffer-man.patch | 181 --
  ...on-build_skb-in-mvneta_rx_swbm-poll-.patch | 303 -
  ...006-net-mvneta-add-basic-XDP-support.patch | 311 --
  ...avoid_error_message_for_optional_IRQ.patch |  31 --
  ...header-prefetch-in-mvneta_swbm_rx_fr.patch |  43 ---
  ...mvneta-make-tx-buffer-array-agnostic.patch | 210 
  .../009-net-mvneta-add-XDP_TX-support.patch   | 175 --
  ...fix-build-skb-for-bm-capable-devices.patch |  41 ---
  ...-arm64-dts-uDPU-remove-i2c-fast-mode.patch |  31 --
  ...ts-uDPU-SFP-cages-support-3W-modules.patch |  34 --
  ...on-page_pool_recycle_direct-in-mvnet.patch |  39 ---
  ...sallow-XDP-program-on-hardware-buffe.patch |  53 ---
  ...DP-support-if-sw-bm-is-used-as-fallb.patch |  67 
  ...in-link-immediately-after-enabling-t.patch |  60 
  ...7-PCI-aardvark-Improve-link-training.patch | 208 
  ...18-PCI-aardvark-Issue-PERST-via-GPIO.patch | 123 ---
  .../019-PCI-aardvark-Add-PHY-support.patch| 152 -
  ...l-armada-37xx-Set-pcie_reset_pin-to-.patch |  93 --
  ...l-armada-37xx-Move-PCIe-comphy-handl.patch |  57 
  ...l-armada-37xx-Move-PCIe-max-link-spe.patch |  44 ---
  ...-arm64-dts-add-uDPU-i2c-bus-recovery.patch |  53 ---
  ...-t-touch-PCIe-registers-if-no-card-c.patch |  50 ---
  ...add-driver-for-LinkStation-power-off.patch | 207 
  ...-initialization-with-old-Marvell-s-A.patch |  44 ---
  ...l-espressobin-Add-ethernet-switch-al.patch |  88 -
  ...Mangle-bootloader-s-kernel-arguments.patch |  37 +--
  ...-mvebu-armada-38x-enable-libata-leds.patch |   4 +-
  ...l-armada-3720-espressobin-add-ports-.patch |  26 --
  .../patches-5.10/400-find_active_root.patch   |   2 +-
  .../700-mvneta-tx-queue-workaround.patch  |   6 +-
  ...-pci-mvebu-time-out-reset-on-link-up.patch |   6 +-
  34 files changed, 18 insertions(+), 2960 deletions(-)
  delete mode 100644 
target/linux/mvebu/patches-5.10/001-PCI-aardvark-Wait-for-endpoint-to-be-ready-before-tr.patch
  delete mode 100644 
target/linux/mvebu/patches-5.10/002-PCI-aardvark-Don-t-rely-on-jiffies-while-holding-spi.patch
  delete mode 100644 
target/linux/mvebu/patches-5.10/003-net-mvneta-introduce-mvneta_update_stats-routine.patch
  delete mode 100644 
target/linux/mvebu/patches-5.10/004-net-mvneta-introduce-page-pool-API-for-sw-buffer-man.patch
  delete mode 100644 
target/linux/mvebu/patches-5.10/005-net-mvneta-rely-on-build_skb-in-mvneta_rx_swbm-poll-.patch
  delete mode 100644 
target/linux/mvebu/patches-5.10/006-net-mvneta-add-basic-XDP-support.patch
  delete mode 100644 
target/linux/mvebu/patches-5.10/007-gpio-mvebu-avoid_error_message_for_optional_IRQ.patch
  delete mode 100644 
target/linux/mvebu/patches-5.10/007-net-mvneta-move-header-prefetch-in-mvneta_swbm_rx_fr.patch
  delete mode 100644 
target/linux/mvebu/patches-5.10/008-net-mvneta-make-tx-buffer-array-agnostic.patch
  delete mode 100644 
target/linux/mvebu/patches-5.10/009-net-mvneta-add-XDP_TX-support.patch
  delete mode 100644 
target/linux/mvebu/patches-5.10/010-net-mvneta-fix-build-skb-for-bm-capable-devices.patch
  delete mode 100644 
target/linux/mvebu/patches-5.10/011-arm64-dts-uDPU-remove-i2c-fast-mode.patch
  delete mode 100644 
target/linux/mvebu/patches-5.10/012-arm64-dts-uDPU-SFP-cages-support-3W-modules.patch
  delete mode 100644 
target/linux/mvebu/patches-5.10/013-net-mvneta-rely-on-page_pool_recycle_direct-in-mvnet.patch
  delete mode 100644 
target/linux/mvebu/patches-5.10/014-mvneta-driver-disallow-XDP-program-on-hardware-buffe.patch
  delete mode 100644 
target/linux/mvebu/patches-5.10/015-net-mvneta-fix-XDP-support-if-sw-bm-is-used-as-fallb.patch
  delete mode 100644 
target/linux/mvebu/patches-5.10/016-PCI-aardvark-Train-link-immediately-after-enabling-t.patch
  delete mode 100644 
target/linux/mvebu/patches-5.10/017-PCI-aardvark-Improve-link-training.patch
  delete mode 100644 
target/linux/mvebu/patches-5.10/018-PCI-aardvark-Issue-PERST-via-GPIO.patch
  delete mode 100644 
target/linux/mvebu/patches-5.10/019-PCI-aardvark-Add-PHY-support.patch
  delete mode 100644 
target/linux/mvebu/patches-5.10/020-arm64-dts-marvell-armada-37xx-Set-pcie_reset_pin-to-.patch
  delete mode 100644 
target/linux/mvebu/patches-5.10/021-arm64-dts-marvell-armada-37xx-Move-PCIe-comphy-handl.patch
  delete mode 100644 
target/linux/mvebu/patches-5.10/022-arm64-dts-marvell-armada-37xx-Move-PCIe-max-link-spe.patch
  delete mode 100644 
target/linux/mvebu/patches-5.10/023-arm64-dts-add-uDPU-i2c-bus-recovery.patch
  delete mode 100644 
target/linux/mvebu/patches-5.10/024-PCI-aardvark

Re: [PATCH v2 3/5] mvebu: update the Turris Omnia device tree

2021-02-21 Thread Hauke Mehrtens

On 2/21/21 12:06 PM, Tomasz Maciej Nowak wrote:

W dniu 20.02.2021 o 21:26, Rui Salvaterra pisze:

Hi, Tomasz,

On Sat, 20 Feb 2021 at 16:55, Tomasz Maciej Nowak  wrote:


W dniu 20.02.2021 o 12:53, Rui Salvaterra pisze:

Include support for the multicolor LEDs (software controlled, for now) and fix
the hardware buffer management support, due to a missing mbus window.


I see more stuff added then what the message says. Also some of changes are in Linus 
tree, please backport relevant patches with proper message and commit hash (git 
format-patch -1 ), and add proper index according to 
target/linux/generic/PATCHES.


This is a complete backport of the current (Linux 5.11) Turris Omnia
device tree, including the hardware buffer management fix. I squashed
everyting in a single patch, as it seemed more logical. I can backport
the individual patches, if you prefer.


That's always preferred, since next person doing bump or backporting patches to 
the same component, won't have to track changes in individual files.


I would prefer if you only do the kernel update in this patch series and 
do the additional backports for the Turris Omnia later when this was 
merged. It will only make this more complicated.


Hauke


OpenPGP_0x93DD20630910B515.asc
Description: application/pgp-keys


OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH v2 1/5] mvebu: copy 5.4 patches to 5.10

2021-02-21 Thread Hauke Mehrtens

On 2/20/21 10:48 PM, Rui Salvaterra wrote:

[resending as reply to all, sorry about that]

Hi, Tomasz,

On Sat, 20 Feb 2021 at 16:55, Tomasz Maciej Nowak  wrote:


Hi Rui,

aside from copying patches also files should be split, since some ESPRESSObin 
variants are merged upstream and with keeping files as they are now, we will 
overwrite changes done upstream.
Additionally just a small nit inline.


This is just a brainless copying. The idea is to split the bringup
into logical steps, as suggested by Adrian Schmutzler [1]. Since
setting the kernel testing version is the last of the patch series,
this should have no influence at all in the build.


Hi,

If you copy the patches first could you also copy the kernel 
configuration files, so it is easy to review them.


Hauke


OpenPGP_0x93DD20630910B515.asc
Description: application/pgp-keys


OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH v2 4/5] mvebu: add 5.10 kernel config

2021-02-21 Thread Hauke Mehrtens

On 2/20/21 9:39 PM, Rui Salvaterra wrote:

Hi, Tomasz,

On Sat, 20 Feb 2021 at 16:55, Tomasz Maciej Nowak  wrote:


The cortexa53 and cortexa72 config refresh are missing, also some symbols could 
be split from this patch and added to generic config, so other targets refresh 
will produce smaller diffs. Comments inline.


I have no a53/a72 hardware at all (I only have a9, the Omnia), so any
changes to those targets will be completely untested. Maybe I should
have made this point explicit. :/


Could you please try to update also the other subtargets in this patch 
set and ask others to test this on some devices.
If you do not have these devices it should be fine that you only compile 
tested them.


Hauke


OpenPGP_0x93DD20630910B515.asc
Description: application/pgp-keys


OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH v3 2/8] mvebu: refresh the 5.4 kernel configs

2021-02-22 Thread Hauke Mehrtens

On 2/22/21 9:59 AM, Rui Salvaterra wrote:

Remove the implicit/inherited symbols. While not strictly necessary, this will
make reviewing the diff between 5.4 and 5.10 easier.

Signed-off-by: Rui Salvaterra 
---
  target/linux/mvebu/config-5.4   |  74 +-
  target/linux/mvebu/cortexa53/config-5.4 | 122 +---
  target/linux/mvebu/cortexa72/config-5.4 | 111 -
  3 files changed, 24 insertions(+), 283 deletions(-)

Was this done by running "make kernel_oldconfig" and "make 
kernel_oldconfig CONFIG_TARGET=subtarget" ?


Hauke


OpenPGP_0x93DD20630910B515.asc
Description: application/pgp-keys


OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH v3 4/8] mvebu: remove 5.10 upstreamed device trees

2021-02-22 Thread Hauke Mehrtens

On 2/22/21 9:59 AM, Rui Salvaterra wrote:

At this point, they're either redundant or obsolete. Factor out common device
trees into the files directory.

Signed-off-by: Rui Salvaterra 
---
  .../boot/dts/armada-370-buffalo-ls421de.dts   | 433 --
  .../arm/boot/dts/armada-385-linksys-venom.dts | 213 -
  .../dts/marvell/armada-3720-gl-mv1000.dts | 162 ---
  .../marvell/armada-3720-espressobin-emmc.dts  |   0
  .../marvell/armada-3720-espressobin-ultra.dts |   0
  .../armada-3720-espressobin-v7-emmc.dts   |   0
  .../marvell/armada-3720-espressobin-v7.dts|   0
  .../marvell/armada-3720-espressobin-emmc.dts  |  28 --
  .../marvell/armada-3720-espressobin-ultra.dts | 241 --
  .../armada-3720-espressobin-v7-emmc.dts   |  43 --
  .../marvell/armada-3720-espressobin-v7.dts|  31 --
  11 files changed, 1151 deletions(-)
  delete mode 100644 
target/linux/mvebu/files-5.10/arch/arm/boot/dts/armada-370-buffalo-ls421de.dts
  delete mode 100644 
target/linux/mvebu/files-5.10/arch/arm/boot/dts/armada-385-linksys-venom.dts


I think these two files are not yet upstream.


  delete mode 100644 
target/linux/mvebu/files-5.10/arch/arm64/boot/dts/marvell/armada-3720-gl-mv1000.dts
  rename target/linux/mvebu/{files-5.10 => 
files-5.4}/arch/arm64/boot/dts/marvell/armada-3720-espressobin-emmc.dts (100%)
  rename target/linux/mvebu/{files-5.10 => 
files-5.4}/arch/arm64/boot/dts/marvell/armada-3720-espressobin-ultra.dts (100%)
  rename target/linux/mvebu/{files-5.10 => 
files-5.4}/arch/arm64/boot/dts/marvell/armada-3720-espressobin-v7-emmc.dts (100%)
  rename target/linux/mvebu/{files-5.10 => 
files-5.4}/arch/arm64/boot/dts/marvell/armada-3720-espressobin-v7.dts (100%)
  delete mode 100644 
target/linux/mvebu/files/arch/arm64/boot/dts/marvell/armada-3720-espressobin-emmc.dts
  delete mode 100644 
target/linux/mvebu/files/arch/arm64/boot/dts/marvell/armada-3720-espressobin-ultra.dts
  delete mode 100644 
target/linux/mvebu/files/arch/arm64/boot/dts/marvell/armada-3720-espressobin-v7-emmc.dts
  delete mode 100644 
target/linux/mvebu/files/arch/arm64/boot/dts/marvell/armada-3720-espressobin-v7.dts



OpenPGP_0x93DD20630910B515.asc
Description: application/pgp-keys


OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH v3] openpgm: Add Pragmatic General Multicast library

2021-02-22 Thread Hauke Mehrtens

On 2/10/21 1:09 PM, Ye Holmes wrote:

OpenPGM is a library implementing the PGM reliable multicast
network protocol; The famous messaging library ZMQ has an
optional dependency on OpenPGM, with OpenPGM enabled, we can
foster the development of multicast network applications.

Signed-off-by: Ye Holmes 
---
On Dienstag, 9. Februar 2021 04:20, Adrian Schmutzler wrote:

This comes with certain helpers like build tests etc.

Thanks, I will initiate a Pull-Reqeust on packages/github later,
to test whether build succeeds (I've tested it on my machine).

On Tue, 9 Feb 2021 17:05:00 +0100, Alberto Bursi wrote:

I have now added a paragraph on the submitting patches article
to send contributions to the right repository
https://openwrt.org/submitting-patches


Thanks, a lot, Alberto! 😃

The v3 patch differs from previous patch: the relative path of
license file is changed to `LICENSE, instead of `openpgm/pgm/LICENSE,
as the post-move of source files after tarball extraction.
---
  libs/openpgm/Makefile | 62 +++
  .../0001-Rename-openpgm-5.2.pc.in.patch   | 22 +++
  ...hecksum.c-fix-build-with-32-bits-MMX.patch | 38 
  3 files changed, 122 insertions(+)
  create mode 100644 libs/openpgm/Makefile
  create mode 100644 libs/openpgm/patches/0001-Rename-openpgm-5.2.pc.in.patch
  create mode 100644 
libs/openpgm/patches/0002-openpgm-pgm-checksum.c-fix-build-with-32-bits-MMX.patch



Please add this to the packages feed, see here:
https://github.com/openwrt/packages/blob/master/CONTRIBUTING.md

You have to create a fork of the package feed, and then a pull request 
to get this merged into the openwrt package feed on github.


Hauke


OpenPGP_0x93DD20630910B515.asc
Description: application/pgp-keys


OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH] ppp: Update to version 2.4.9

2021-02-22 Thread Hauke Mehrtens

On 2/4/21 2:34 AM, Rosen Penev wrote:

On Wed, Feb 3, 2021 at 3:28 PM Hauke Mehrtens  wrote:


Upstream integrated multiple patches from Distributions and did other
changes:
* rp-pppoe.so was renamed to pppoe.so
* Converted to  ANSI C

The following patches were applied upstream:
* 100-debian_ip-ip_option.patch
* 101-debian_close_dev_ppp.patch
* 103-debian_fix_link_pidfile.patch
* 106-debian_stripMSdomain.patch
* 107-debian_pppoatm_wildcard.patch
* 110-debian_defaultroute.patch
* 202-no_strip.patch

Compilation with musl libx was fixed upstream so
140-pppoe_compile_fix.patch  is not needed any more

Parts of the 203-opt_flags.patch patch were applied in a different way
upstream.

Signed-off-by: Hauke Mehrtens 
---
  package/network/services/ppp/Makefile |  10 +-
  package/network/services/ppp/files/ppp.sh |   4 +-
  .../010-use_target_for_configure.patch|  22 +-
  .../ppp/patches/100-debian_ip-ip_option.patch |  96 --
  .../patches/101-debian_close_dev_ppp.patch|  28 --
  .../patches/103-debian_fix_link_pidfile.patch |  23 --
  .../ppp/patches/105-debian_demand.patch   |  30 +-
  .../patches/106-debian_stripMSdomain.patch|  47 ---
  .../patches/107-debian_pppoatm_wildcard.patch |  25 --
  .../ppp/patches/110-debian_defaultroute.patch | 314 --
  .../120-debian_ipv6_updown_option.patch   |  18 +-
  .../ppp/patches/140-pppoe_compile_fix.patch   |  36 --
  .../services/ppp/patches/200-makefile.patch   |  23 +-
  .../ppp/patches/201-mppe_mppc_1.1.patch   | 133 +---
  .../services/ppp/patches/202-no_strip.patch   |  88 -
  .../services/ppp/patches/203-opt_flags.patch  |  36 +-
  .../patches/205-no_exponential_timeout.patch  |   4 +-
  .../ppp/patches/207-lcp_mtu_max.patch |   2 +-
  .../ppp/patches/208-fix_status_code.patch |   2 +-
  .../300-filter-pcap-includes-lib.patch|   6 +-
  .../ppp/patches/310-precompile_filter.patch   |  20 +-
  ...multilink_support_custom_iface_names.patch |  33 +-
  .../330-retain_foreign_default_routes.patch   |   2 +-
  .../340-populate_default_gateway.patch|   6 +-
  .../patches/400-simplify_kernel_checks.patch  |  32 +-
  .../ppp/patches/401-no_record_file.patch  |   6 +-
  .../services/ppp/patches/403-no_wtmp.patch|   4 +-
  .../404-remove_obsolete_protocol_names.patch  |  16 +-
  .../ppp/patches/405-no_multilink_option.patch |   2 +-
  .../ppp/patches/500-add-pptp-plugin.patch |  14 +-
  ...openssl-for-the-DES-instead-of-the-l.patch |  25 +-
  31 files changed, 222 insertions(+), 885 deletions(-)
  delete mode 100644 
package/network/services/ppp/patches/100-debian_ip-ip_option.patch
  delete mode 100644 
package/network/services/ppp/patches/101-debian_close_dev_ppp.patch
  delete mode 100644 
package/network/services/ppp/patches/103-debian_fix_link_pidfile.patch
  delete mode 100644 
package/network/services/ppp/patches/106-debian_stripMSdomain.patch
  delete mode 100644 
package/network/services/ppp/patches/107-debian_pppoatm_wildcard.patch
  delete mode 100644 
package/network/services/ppp/patches/110-debian_defaultroute.patch
  delete mode 100644 
package/network/services/ppp/patches/140-pppoe_compile_fix.patch
  delete mode 100644 package/network/services/ppp/patches/202-no_strip.patch




--- a/package/network/services/ppp/patches/300-filter-pcap-includes-lib.patch
+++ b/package/network/services/ppp/patches/300-filter-pcap-includes-lib.patch
@@ -7,14 +7,14 @@ Signed-off-by: Jo-Philipp Wich 

  --- a/pppd/Makefile.linux
  +++ b/pppd/Makefile.linux
-@@ -190,8 +190,8 @@ endif
+@@ -210,8 +210,8 @@ LIBS   += -ldl
+ endif

   ifdef FILTER
- ifneq ($(wildcard /usr/include/pcap-bpf.h),)
  -LIBS+= -lpcap
  -CFLAGS  += -DPPP_FILTER
  +LIBS+= -lpcap -L$(STAGING_DIR)/usr/lib
  +CFLAGS  += -DPPP_FILTER -I$(STAGING_DIR)/usr/include
   endif
- endif

+ ifdef HAVE_INET6
diff --git a/package/network/services/ppp/patches/310-precompile_filter.patch 
b/package/network/services/ppp/patches/310-precompile_filter.patch

This patch is broken with musl 1.2.x. If you notice, __P is gone
everywhere in the codebase except for this patch. Please remove here
as well.


Sorry I forgot this usage of __P here. I removed this and there are no 
other __P macros added any more.



index ec6110442352..d2449e69ea2d 100644
--- a/package/network/services/ppp/patches/310-precompile_filter.patch
+++ b/package/network/services/ppp/patches/310-precompile_filter.patch
@@ -13,7 +13,7 @@ Signed-off-by: Jo-Philipp Wich 

  --- a/pppd/Makefile.linux
  +++ b/pppd/Makefile.linux
-@@ -50,6 +50,9 @@ MPPE=y
+@@ -51,6 +51,9 @@ MPPE=y
   # and that the kernel driver support PPP packet filtering.
   #FILTER=y

@@ -23,8 +23,8 @@ Signed-off-by: Jo-Philipp Wich 
   # Uncomment the next line to enable multilink PPP (enabled by default)
   # Linux distributions: Please leave multilink ENABLED in your builds
   # of pppd!
-@@ -195,6 +198,14 @@ CFLAGS  += -DPPP_FILTER -I$(STAGING_DIR)
- endif
+@@ -214,6 +217,14

Re: [PATCH v7 1/2] [v7, 1/2] ipq806x: add support for Linksys E8350 v1

2021-02-22 Thread Hauke Mehrtens

On 1/24/21 5:20 PM, Todor Colov wrote:

Signed-off-by: Todor Colov 


Please add a description.


---
  .../ipq806x/base-files/etc/board.d/01_leds|   3 +
  .../ipq806x/base-files/etc/board.d/02_network |   1 +
  .../base-files/lib/upgrade/platform.sh|   3 +-
  .../arm/boot/dts/qcom-ipq8064-e8350-v1.dts| 246 ++
  target/linux/ipq806x/image/Makefile   |  29 +++
  .../0069-arm-boot-add-dts-files.patch |   3 +-
  6 files changed, 283 insertions(+), 2 deletions(-)
  create mode 100644 
target/linux/ipq806x/files/arch/arm/boot/dts/qcom-ipq8064-e8350-v1.dts

diff --git a/target/linux/ipq806x/base-files/etc/board.d/01_leds 
b/target/linux/ipq806x/base-files/etc/board.d/01_leds
index 284f9e2c1d..33c7f80fb9 100755
--- a/target/linux/ipq806x/base-files/etc/board.d/01_leds
+++ b/target/linux/ipq806x/base-files/etc/board.d/01_leds
@@ -22,6 +22,9 @@ edgecore,ecw5410)
ucidef_set_led_wlan "wlan2g" "WLAN2G" "green:wlan2g" "phy1tpt"
ucidef_set_led_wlan "wlan5g" "WLAN5G" "green:wlan5g" "phy0tpt"
;;
+linksys,e8350-v1)
+ucidef_set_led_wlan "wlan" "WLAN" "green:wifi" "phy0tpt"
+;;
  nec,wg2600hp)
ucidef_set_led_wlan "wlan2g" "WLAN2G" "green:wlan2g" "phy1tpt"
ucidef_set_led_wlan "wlan5g" "WLAN5G" "green:wlan5g" "phy0tpt"
diff --git a/target/linux/ipq806x/base-files/etc/board.d/02_network 
b/target/linux/ipq806x/base-files/etc/board.d/02_network
index ddef4b7ac6..036cba2de5 100755
--- a/target/linux/ipq806x/base-files/etc/board.d/02_network
+++ b/target/linux/ipq806x/base-files/etc/board.d/02_network
@@ -69,6 +69,7 @@ qcom,ipq8064-db149)
  ubnt,unifi-ac-hd)
ucidef_set_interface_lan "eth0 eth1"
;;
+linksys,e8350-v1 |\


Please add this alphabetical ordered.


  zyxel,nbg6817)
hw_mac_addr=$(mtd_get_mac_ascii 0:APPSBLENV ethaddr)
ucidef_add_switch "switch0" \
diff --git a/target/linux/ipq806x/base-files/lib/upgrade/platform.sh 
b/target/linux/ipq806x/base-files/lib/upgrade/platform.sh
index 4dc612492c..7b319a5b7c 100644
--- a/target/linux/ipq806x/base-files/lib/upgrade/platform.sh
+++ b/target/linux/ipq806x/base-files/lib/upgrade/platform.sh
@@ -1,7 +1,7 @@
  PART_NAME=firmware
  REQUIRE_IMAGE_METADATA=1
  
-RAMFS_COPY_BIN='fw_printenv fw_setenv'

+RAMFS_COPY_BIN='fw_printenv fw_setenv fwtool'


Why is fwtool added?


  RAMFS_COPY_DATA='/etc/fw_env.config /var/lock/fw_printenv.lock'
  
  platform_check_image() {

@@ -20,6 +20,7 @@ platform_do_upgrade() {
nand_do_upgrade "$1"
;;
compex,wpq864|\
+   linksys,e8350-v1|\
netgear,d7800 |\
netgear,r7500 |\
netgear,r7500v2 |\
diff --git 
a/target/linux/ipq806x/files/arch/arm/boot/dts/qcom-ipq8064-e8350-v1.dts 
b/target/linux/ipq806x/files/arch/arm/boot/dts/qcom-ipq8064-e8350-v1.dts
new file mode 100644
index 00..872deeb044
--- /dev/null
+++ b/target/linux/ipq806x/files/arch/arm/boot/dts/qcom-ipq8064-e8350-v1.dts
@@ -0,0 +1,246 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+#include "qcom-ipq8064-v2.0.dtsi"
+
+#include 
+#include 
+
+/ {
+   model = "Linksys E8350 V1 WiFi Router";
+   compatible = "linksys,e8350-v1", "qcom,ipq8064";
+
+   memory@0 {
+   reg = <0x4200 0x1e00>;
+   device_type = "memory";
+   };
+
+   aliases {
+   serial0 = &gsbi4_serial;
+
+   led-boot = &led_power;
+   led-failsafe = &led_power;
+   led-running = &led_power;
+   led-upgrade = &led_power;
+   };
+
+   keys {
+   compatible = "gpio-keys";
+   pinctrl-0 = <&button_pins>;
+   pinctrl-names = "default";
+
+   reset {
+   label = "reset";
+   gpios = <&qcom_pinmux 68 GPIO_ACTIVE_LOW>;
+   linux,code = ;
+   };
+
+   wps {
+   label = "wps";
+   gpios = <&qcom_pinmux 65 GPIO_ACTIVE_LOW>;
+   linux,code = ;
+   };
+
+   wifi {
+   label = "wifi";
+   gpios = <&qcom_pinmux 67 GPIO_ACTIVE_LOW>;
+   linux,code = ;
+   };
+   };
+
+   nand-controller@1ac0 {
+   compatible = "qcom,ipq806x-nand";
+   reg = <0x1ac0 0x800>;
+   clocks = <&gcc EBI2_CLK>,
+   <&gcc EBI2_AON_CLK>;
+   clock-names = "core", "aon";
+   dmas = <&adm_dma 3>;
+   dma-names = "rxtx";
+   qcom,cmd-crci = <15>;
+   qcom,data-crci = <3>;
+
+   nand@0 {
+   reg = <0>;
+
+   nand-ecc-strength = <4>;
+   nand-bus-width = <8>;
+
+   partitions {
+   compatible = "fixed-partitions";
+
+

Re: [PATCH v7 2/2] [v7, 2/2] tools: addfwhrd Linksys E8350v1 FW header genarator

2021-02-22 Thread Hauke Mehrtens

On 1/24/21 5:20 PM, Todor Colov wrote:

Signed-off-by: Todor Colov 
---
  tools/firmware-utils/Makefile   |   1 +
  tools/firmware-utils/src/addfwhdr.c | 233 
  2 files changed, 234 insertions(+)
  create mode 100644 tools/firmware-utils/src/addfwhdr.c

diff --git a/tools/firmware-utils/Makefile b/tools/firmware-utils/Makefile
index e4a31b6fd0..34a857c6e5 100644
--- a/tools/firmware-utils/Makefile
+++ b/tools/firmware-utils/Makefile
@@ -25,6 +25,7 @@ endef
  define Host/Compile
mkdir -p $(HOST_BUILD_DIR)/bin
$(call cc,add_header)
+   $(call cc,addfwhdr cyg_crc32)
$(call cc,addpattern)
$(call cc,asustrx)
$(call cc,bcm4908asus,-Wall)
diff --git a/tools/firmware-utils/src/addfwhdr.c 
b/tools/firmware-utils/src/addfwhdr.c
new file mode 100644
index 00..ada56e6abf
--- /dev/null
+++ b/tools/firmware-utils/src/addfwhdr.c
@@ -0,0 +1,233 @@
+/*
+   Linksys e8350 v1 firmware header generator
+*/
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+
+#include "cyg_crc.h"
+#define AC2350  20
+#define USA 1
+
+#if LOCALE == USA
+   #define CYBERTAN_VERSION"v1.0.03"
+   #define SERIAL_NUMBER   "003"
+   #define MINOR_VERSION   ""
+   #define BUILD_KEYWORD   " B"
+   #define BUILD_NUMBERSERIAL_NUMBER
+   #define BETA_VERSION" "
+   #define CYBERTAN_UBOOT_VERSION  "v1.0"
+#else   // ETSI
+   #define CYBERTAN_VERSION"v1.0.00"
+   #define SERIAL_NUMBER   "01"
+   #define MINOR_VERSION   ""
+   #define BUILD_KEYWORD   " B"
+   #define BUILD_NUMBERSERIAL_NUMBER
+   #define BETA_VERSION" "
+   #define CYBERTAN_UBOOT_VERSION  "v1.0"
+#endif


It looks like these defines are not used.
Please remove this if it is not needed, having this as a compile time 
option will also cause problems in OpenWrt when we want to build images 
for both variants.



+
+//add for AC2350 F/W header
+#define FWHDR_MAGIC_STR "CHDR"
+#define FWHDR_MAGIC 0X52444843
+struct cbt_fw_header
+{
+   unsigned int magic; /* "CHDR" */
+   unsigned int len;   /* Length of file including header */
+   unsigned int crc32; /* 32-bit CRC */
+   unsigned int res;
+};
+
+#define MAX_BUF1024
+#define CRC32_INIT_VALUE 0x/* Initial CRC32 checksum value */
+
+#ifndef TYPEDEF_UINT8
+typedef unsigned char   uint8;
+#endif
+
+#ifndef TYPEDEF_UINT16
+typedef unsigned short  uint16;
+#endif
+
+#ifndef TYPEDEF_UINT32
+typedef unsigned intuint32;
+#endif
+
+typedef uint32_t cyg_uint32;
+typedef uint16_t cyg_uint16;
+
+extern cyg_uint32 cyg_crc32_accumulate(cyg_uint32 crc32val, unsigned char *s, 
int len);
+//extern uint32 crc32(uint8 *pdata, uint nbytes, uint32 crc);
+
+int fd, fd_w;
+
+void die(const char * str, ...)
+{
+   va_list args;
+   va_start(args, str);
+   vfprintf(stderr, str, args);
+   fputc('\n', stderr);
+   exit(1);
+}
+
+int fill_null0(int size)
+{
+   unsigned char buf[1];
+   int i;
+
+   fprintf(stderr,"Fill null\n");
+
+   buf[0] = 0xff;
+   for (i=0 ; i< size; i++ )
+   if (write(fd_w, buf, 1) != 1)
+   return 0;
+
+   return 1;
+}
+
+long file_open(const char *name)
+{
+   struct stat sb;
+   if ((fd = open(name, O_RDONLY, 0)) < 0){
+   die("Unable to open `%s' : %m", name);
+   }
+
+   if (fstat (fd, &sb))
+   die("Unable to stat `%s' : %m", name);
+
+   return sb.st_size;
+}
+
+void usage(void)
+{
+   die("Usage: addfwhdr [-i|--input] sysupgrade.o [-o|--output] 
code.bin\n");
+}
+
+int main(int argc, char ** argv)
+{
+   uint input_size,c;
+   char *input_file=NULL, *output_file=NULL;
+   int opt;
+   int option_index=0;
+   int garbage = 0;
+   char *buf = NULL;
+   extern char *optarg;
+   extern int optind, opterr, optopt;
+   
+   struct cbt_fw_header *fwhdr;
+   uint32 crc; 
+
+   static struct option long_options[] =
+   {
+   {"input", 1, 0, 'i'},
+   {"output", 1, 0, 'o'},
+   {"garbage", 0, 0, 'g'},
+   {0, 0, 0, 0}
+   };
+
+   printf("\n-- add fw header \n");
+
+   fwhdr  = malloc(sizeof(struct cbt_fw_header));
+   memset(fwhdr, 0, sizeof(struct cbt_fw_header)); 
+
+   while(1){
+   opt = getopt_long(argc, argv, "i:o:g",long_options, 
&option_index);
+   if(opt == -1)
+   break;
+   switch(opt){
+   case 'h' :
+   usage(); break;
+   case 'i' :
+   input_file = optarg;
+   printf("input file is [%s]\n",input_file); 
break;
+   case 'o' :
+ 

[PATCH 1/2] realtek: Add generic zyxel_gs1900 image definition

2021-02-24 Thread Hauke Mehrtens
Add a new common device definition for the Zyxel GS1900 line of
switches.

Signed-off-by: Hauke Mehrtens 
---
 target/linux/realtek/image/Makefile | 20 +---
 1 file changed, 9 insertions(+), 11 deletions(-)

diff --git a/target/linux/realtek/image/Makefile 
b/target/linux/realtek/image/Makefile
index 424726c8a9fb..fcb5e55e7ab6 100644
--- a/target/linux/realtek/image/Makefile
+++ b/target/linux/realtek/image/Makefile
@@ -84,37 +84,35 @@ define Device/netgear_gs110tpp-v1
 endef
 TARGET_DEVICES += netgear_gs110tpp-v1
 
-define Device/zyxel_gs1900-10hp
+define Device/zyxel_gs1900
   SOC := rtl8380
   IMAGE_SIZE := 6976k
   DEVICE_VENDOR := ZyXEL
   DEVICE_MODEL := GS1900-10HP
   UIMAGE_MAGIC := 0x8380
+  KERNEL_INITRAMFS := kernel-bin | append-dtb | gzip | zyxel-vers AAHI | 
uImage gzip
+endef
+
+define Device/zyxel_gs1900-10hp
+  $(Device/zyxel_gs1900)
+  DEVICE_MODEL := GS1900-10HP
   KERNEL_INITRAMFS := kernel-bin | append-dtb | gzip | zyxel-vers AAZI | 
uImage gzip
 endef
 TARGET_DEVICES += zyxel_gs1900-10hp
 
 define Device/zyxel_gs1900-8hp-v1
-  SOC := rtl8380
-  IMAGE_SIZE := 6976k
-  DEVICE_VENDOR := ZyXEL
+  $(Device/zyxel_gs1900)
   DEVICE_MODEL := GS1900-8HP
   DEVICE_VARIANT := v1
   DEVICE_PACKAGES += lua-rs232
-  UIMAGE_MAGIC := 0x8380
-  KERNEL_INITRAMFS := kernel-bin | append-dtb | gzip | zyxel-vers AAHI | 
uImage gzip
 endef
 TARGET_DEVICES += zyxel_gs1900-8hp-v1
 
 define Device/zyxel_gs1900-8hp-v2
-  SOC := rtl8380
-  IMAGE_SIZE := 6976k
-  DEVICE_VENDOR := ZyXEL
+  $(Device/zyxel_gs1900)
   DEVICE_MODEL := GS1900-8HP
   DEVICE_VARIANT := v2
   DEVICE_PACKAGES += lua-rs232
-  UIMAGE_MAGIC := 0x8380
-  KERNEL_INITRAMFS := kernel-bin | append-dtb | gzip | zyxel-vers AAHI | 
uImage gzip
 endef
 TARGET_DEVICES += zyxel_gs1900-8hp-v2
 
-- 
2.30.0


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH 2/2] realtek: Add ZyXEL GS1900-8

2021-02-24 Thread Hauke Mehrtens
The ZyXEL GS1900-8 is a 8 port switch without any PoE functionality or
SFP ports, but otherwise similar to the other GS1900 switches.

Serial connection parameters for the device: 115200 8N1.

Installation

Instructions are identical to those for the GS1900-10HP and GS1900-8HP.

* Configure your client with a static 192.168.1.x IP (e.g. 192.168.1.10).
* Set up a TFTP server on your client and make it serve the initramfs
  image.
* Connect serial, power up the switch, interrupt U-boot by hitting the
  space bar, and enable the network:
  > rtk network on
* Since the GS1900-10HP is a dual-partition device, you want to keep the
  OEM firmware on the backup partition for the time being. OpenWrt can
  only boot off the first partition anyway (hardcoded in the DTS). To
  make sure we are manipulating the first partition, issue the following
  commands:
  > setsys bootpartition 0
  > savesys
* Download the image onto the device and boot from it:
  > tftpboot 0x84f0 
192.168.1.10:openwrt-realtek-generic-zyxel_gs1900-8-initramfs-kernel.bin
  > bootm
* Once OpenWrt has booted, scp the sysupgrade image to /tmp and flash it:
  > sysupgrade 
/tmp/openwrt-realtek-generic-zyxel_gs1900-8-squashfs-sysupgrade.bin

Signed-off-by: Hauke Mehrtens 
---
 package/boot/uboot-envtools/files/realtek   |  1 +
 target/linux/realtek/dts/rtl8380_zyxel_gs1900-8.dts | 12 
 target/linux/realtek/image/Makefile |  6 ++
 3 files changed, 19 insertions(+)
 create mode 100644 target/linux/realtek/dts/rtl8380_zyxel_gs1900-8.dts

diff --git a/package/boot/uboot-envtools/files/realtek 
b/package/boot/uboot-envtools/files/realtek
index 9573e8944f54..a91ca826044e 100644
--- a/package/boot/uboot-envtools/files/realtek
+++ b/package/boot/uboot-envtools/files/realtek
@@ -11,6 +11,7 @@ case "$board" in
 d-link,dgs-1210-16|\
 d-link,dgs-1210-28|\
 d-link,dgs-1210-10p|\
+zyxel,gs1900-8|\
 zyxel,gs1900-8hp-v1|\
 zyxel,gs1900-8hp-v2|\
 zyxel,gs1900-10hp)
diff --git a/target/linux/realtek/dts/rtl8380_zyxel_gs1900-8.dts 
b/target/linux/realtek/dts/rtl8380_zyxel_gs1900-8.dts
new file mode 100644
index ..e9c5efe60392
--- /dev/null
+++ b/target/linux/realtek/dts/rtl8380_zyxel_gs1900-8.dts
@@ -0,0 +1,12 @@
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include "rtl8380_zyxel_gs1900.dtsi"
+
+/ {
+   compatible = "zyxel,gs1900-8", "realtek,rtl838x-soc";
+   model = "ZyXEL GS1900-8 Switch";
+};
+
+&gpio1 {
+   /delete-node/ poe_enable;
+};
diff --git a/target/linux/realtek/image/Makefile 
b/target/linux/realtek/image/Makefile
index fcb5e55e7ab6..0a3292119c3a 100644
--- a/target/linux/realtek/image/Makefile
+++ b/target/linux/realtek/image/Makefile
@@ -100,6 +100,12 @@ define Device/zyxel_gs1900-10hp
 endef
 TARGET_DEVICES += zyxel_gs1900-10hp
 
+define Device/zyxel_gs1900-8
+  $(Device/zyxel_gs1900)
+  DEVICE_MODEL := GS1900-8
+endef
+TARGET_DEVICES += zyxel_gs1900-8
+
 define Device/zyxel_gs1900-8hp-v1
   $(Device/zyxel_gs1900)
   DEVICE_MODEL := GS1900-8HP
-- 
2.30.0


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH] uclibc++: remove

2021-02-27 Thread Hauke Mehrtens

On 2/27/21 5:17 AM, Rosen Penev wrote:

No package here depends on it. Furthermore, uClibc++ is a fairly buggy
C++ library and seems to be relatively inactive upstream.

It also lacks proper support for modern C++11 features.

The main benefit of it is size: 66.6 KB vs 287.3 KB on mips24kc. Static
linking and LTO can help bring the size down of packages that need it.

Added warning message to uclibc++.mk

Signed-off-by: Rosen Penev 
---
  config/Config-build.in|  14 --
  include/uclibc++.mk   |  18 +--
  package/libs/uclibc++/Makefile| 105 -
  package/libs/uclibc++/files/config.default|  58 ---
  .../libs/uclibc++/patches/001-no-ansi.patch   |  10 --
  .../patches/002-undef-functions.patch |  35 -
  .../libs/uclibc++/patches/003-no-fPIC.patch   |  10 --
  ...ibc-Make-long-long-available-to-C-11.patch | 143 --
  .../005-istream_helpers-Fix-sscanf-typo.patch |  37 -
  9 files changed, 2 insertions(+), 428 deletions(-)
  delete mode 100644 package/libs/uclibc++/Makefile
  delete mode 100644 package/libs/uclibc++/files/config.default
  delete mode 100644 package/libs/uclibc++/patches/001-no-ansi.patch
  delete mode 100644 package/libs/uclibc++/patches/002-undef-functions.patch
  delete mode 100644 package/libs/uclibc++/patches/003-no-fPIC.patch
  delete mode 100644 
package/libs/uclibc++/patches/004-uClibc-Make-long-long-available-to-C-11.patch
  delete mode 100644 
package/libs/uclibc++/patches/005-istream_helpers-Fix-sscanf-typo.patch



Acked-by: Hauke Mehrtens 


OpenPGP_0x93DD20630910B515.asc
Description: application/pgp-keys


OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH 1/2] realtek: Add generic zyxel_gs1900 image definition

2021-02-27 Thread Hauke Mehrtens

On 2/25/21 11:10 AM, Adrian Schmutzler wrote:

Hi,


-Original Message-
From: openwrt-devel [mailto:openwrt-devel-boun...@lists.openwrt.org]
On Behalf Of Stefan Lippers-Hollmann
Sent: Donnerstag, 25. Februar 2021 07:56
To: Hauke Mehrtens 
Cc: openwrt-devel@lists.openwrt.org
Subject: Re: [PATCH 1/2] realtek: Add generic zyxel_gs1900 image definition

Hi

On 2021-02-24, Hauke Mehrtens wrote:

Add a new common device definition for the Zyxel GS1900 line of
switches.

[...]

-define Device/zyxel_gs1900-10hp
+define Device/zyxel_gs1900
SOC := rtl8380
IMAGE_SIZE := 6976k
DEVICE_VENDOR := ZyXEL
DEVICE_MODEL := GS1900-10HP
UIMAGE_MAGIC := 0x8380
+  KERNEL_INITRAMFS := kernel-bin | append-dtb | gzip | zyxel-vers
+AAHI | uImage gzip endef


I'm wondering if this attempt to deal the gs1900 switch family really improves
the situation for these devices. While IMAGE_SIZE and UIMAGE_MAGIC
might indeed by rather generic to most (all?) members of the gs1900 family,
SOC might not be (GS1900-24, GS1900-24E, GS1900-24HP are RTL8382M,
GS1900-48 and GS1900-48HP are RTL8393 - admittedly, I do not know how
different the resulting DTS would need to be, as these devices are not
supported yet) and zyxel-vers is different for every single model (aside from
GS1900-8HPv1 && GS1900-8HPv2):


Common definitions in Makefiles and DTS are two different questions. It's not 
uncommon that shared nodes in Makefile are possible where DTSes are still 
individual. Anyway, one could make zyxel-vers a variable and move back SOC to 
the devices when necessary:

DEVICE_VARS += ZYXEL_VERS

define Device/zyxel_gs1900
IMAGE_SIZE := 6976k
DEVICE_VENDOR := ZyXEL
UIMAGE_MAGIC := 0x8380
KERNEL_INITRAMFS := kernel-bin | append-dtb | gzip | zyxel-vers 
(ZYXEL_VERS)
| uImage gzip
endef

define Device/zyxel_gs1900-10hp
$(Device/zyxel_gs1900)
SOC := rtl8380
DEVICE_MODEL := GS1900-10HP
ZYXEL_VERS := AAZI
endef
TARGET_DEVICES += zyxel_gs1900-10hp

That would still keep the kernel_initramfs recipe in the common node. Of 
course, this might eventually hit a point where having the common node is more 
effort than benefit.


I will update it like this and also remove the DEVICE_MODEL.

Hauke


OpenPGP_0x93DD20630910B515.asc
Description: application/pgp-keys


OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH 1/2] realtek: Add generic zyxel_gs1900 image definition

2021-02-27 Thread Hauke Mehrtens

On 2/25/21 6:10 PM, Bjørn Mork wrote:

Stefan Lippers-Hollmann  writes:

On 2021-02-24, Hauke Mehrtens wrote:

Add a new common device definition for the Zyxel GS1900 line of
switches.

[...]

-define Device/zyxel_gs1900-10hp
+define Device/zyxel_gs1900
SOC := rtl8380
IMAGE_SIZE := 6976k
DEVICE_VENDOR := ZyXEL
DEVICE_MODEL := GS1900-10HP
UIMAGE_MAGIC := 0x8380
+  KERNEL_INITRAMFS := kernel-bin | append-dtb | gzip | zyxel-vers AAHI | 
uImage gzip
+endef


I'm wondering if this attempt to deal the gs1900 switch family really
improves the situation for these devices. While IMAGE_SIZE and
UIMAGE_MAGIC might indeed by rather generic to most (all?) members of
the gs1900 family, SOC might not be (GS1900-24, GS1900-24E, GS1900-24HP
are RTL8382M, GS1900-48 and GS1900-48HP are RTL8393 - admittedly, I do
not know how different the resulting DTS would need to be, as these
devices are not supported yet) and zyxel-vers is different for every
single model (aside from GS1900-8HPv1 && GS1900-8HPv2):

GS1900-8:   AAHH
GS1900-8HPv1:   AAHI
GS1900-8HPv2:   AAHI
GS1900-10HP:AAZI
GS1900-16:  AAHJ
GS1900-24:  AAHL
GS1900-24E: AAHK
GS1900-24EP:ABTO
GS1900-24HP:AAHM
GS1900-24HPv2:  ABTP
GS1900-48:  AAHN
GS1900-48HP:AAHO
GS1900-48HPv2:  ABTQ

Most of these should be supportable by OpenWrt.


Note that it is techincally possibly to build images which support more
than one "zyxel-vers", or even all of them, That's what the stock
firmware does.

The only reason I opted for one specific "zyxel-vers" per device is that
we use a device specific DTS.  Having a matching "zyxel-vers" prevents
flashing the wrong OpenWrt image from stock.



I used the wrong AAHI magic and it was possible to falsh the image over 
the Web UI, buit the image did not boot, it was unable to find the root 
fs for me.


Where is this check done?

I was unable to extract the original firmware with binwalk which would 
be nice to get some more information about how it is structured.


Hauke


OpenPGP_0x93DD20630910B515.asc
Description: application/pgp-keys


OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH] netifd: bridge: set default value for igmp_snoop

2021-02-27 Thread Hauke Mehrtens

On 2/24/21 1:49 AM, sotu...@gmail.com wrote:

From: Zheng Qian 

When luci unchecked the igmp snoop option for a bridge, it
just delete the igmp_snooping key from the config file.
So netifd can't change /sys/devices/virtual/net/br-lan/bridge/multicast_snooping from "1" 
to "0".

This patch will set a default value to false for the bridge
option to fix this bug.

Signed-off-by: Zheng Qian 
---
  bridge.c | 1 +
  1 file changed, 1 insertion(+)

diff --git a/bridge.c b/bridge.c
index b70d626..464629c 100644
--- a/bridge.c
+++ b/bridge.c
@@ -875,6 +875,7 @@ bridge_apply_settings(struct bridge_state *bst, struct 
blob_attr **tb)
  
  	/* defaults */

cfg->stp = false;
+   cfg->igmp_snoop = false;
cfg->forward_delay = 2;
cfg->robustness = 2;
cfg->query_interval = 12500;



The default setting was removed in this change:
https://git.openwrt.org/?p=project/netifd.git;a=commitdiff;h=52541140f8138e31958cdc3d7e42a4029fa6bbc9

-   cfg->igmp_snoop = true;
-   cfg->multicast_querier = true;

We should probably also set multicast_querier to false here.

Hauke


OpenPGP_0x93DD20630910B515.asc
Description: application/pgp-keys


OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH 1/2] realtek: Add generic zyxel_gs1900 image definition

2021-02-28 Thread Hauke Mehrtens

On 2/27/21 6:00 PM, Bjørn Mork wrote:

Hauke Mehrtens  writes:


I used the wrong AAHI magic and it was possible to falsh the image
over the Web UI, buit the image did not boot, it was unable to find
the root fs for me.


That's odd.  Didn't work in my tests, but I've only tested the
GS1900-10HP with the latest stock firmware.

But rootfs?  Flashing from stock will only work with the initramfs
image.  The stock web ui will cut the image according to the uimage
header, without warning.  So everything has to be "inside" the uimage.


Ok, I used the sysupgrade tar, I was surprised that this was accepted at 
all. ;-)



But there is something wrong with our image code if you are able to
flash anything else than the initramfs image from stock.  Specifically:
The "zyxel-vers" stuff should *not* be appended to the kernel in the
sysupgrade image.


Where is this check done?


AFAICS, only in the stock firmware upgrade "app".


I was unable to extract the original firmware with binwalk which would
be nice to get some more information about how it is structured.



The GPL drop at https://biot.com/gpl/GS1900-10HP(V2.60(AAZI.2)C0).zip is
pretty complete.  Only a few files are binary blobs.  And everything
necessary to build an image is included.


Thanks I will have a look at this.


There isn't anything weird with the stock image.  It's a standard uimage
with a non-standard magic.  The list of supported hardware versions is an
ascii text file at the end of the real image, but inside the size and
checksum coverage of the uimage header.


Hauke


OpenPGP_0x93DD20630910B515.asc
Description: application/pgp-keys


OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH] uboot-envtools: adjust compile patch to version v2021.01

2021-02-28 Thread Hauke Mehrtens

On 2/24/21 4:50 PM, k_ronny wrote:

with u-boot v2020.07 some variables have been renamed so this patch needs to be 
adjusted
otherwise at least with macOS as build system there are build errors

Signed-off-by: k_ronny 
---
  package/boot/uboot-envtools/patches/001-compile.patch | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/boot/uboot-envtools/patches/001-compile.patch 
b/package/boot/uboot-envtools/patches/001-compile.patch
index 5413aa4a41..9b1b6b5d35 100644
--- a/package/boot/uboot-envtools/patches/001-compile.patch
+++ b/package/boot/uboot-envtools/patches/001-compile.patch
@@ -5,10 +5,10 @@
   override HOSTCC = $(CC)
   
  +ifneq ($(TARGET_CFLAGS),)

-+HOSTCFLAGS = $(TARGET_CFLAGS)
++KBUILD_HOSTCFLAGS = $(TARGET_CFLAGS)
  +endif
  +ifneq ($(TARGET_LDFLAGS),)
-+HOSTLDFLAGS = $(TARGET_LDFLAGS)
++KBUILD_HOSTLDFLAGS = $(TARGET_LDFLAGS)
  +endif
  +
   # Compile for a hosted environment on the target



Hi,

This patch looks good, but could you please resend it with your full 
name in the From and the Signed-off-by line please.


Hauke


OpenPGP_0x93DD20630910B515.asc
Description: application/pgp-keys


OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: Please consider reverting autoconf-lean from toolchain

2021-03-01 Thread Hauke Mehrtens

On 3/1/21 3:54 PM, Hannu Nyman wrote:
Apparently autoconf-lean, merged into the toolchain during last weekend, 
causes problems with various packages at buildbot.


I am not sure if that is due to underlying problems in the specific 
failing packages, or due to a wrong site config from autoconf-lean, but 
buildbot is gradually hitting the problems as packages are built with 
faulty SDKs.


I suggest that the new autoconf-lean stuff is reverted until the 
failures are understood better.


I have filed bug FS#3655 and earlieralso a packages issue as that was 
how I found the issue in my own build.


There are several buildbot failure logs examples in the bug FS#3655.

At least ntfs-3g, rsync, nedata, and possibly also mac80211 and mwlwifi 
are failing for some targets.

(not sure about mac80211 and mwlwifi failures' relation)

I reverted autoconf-lean from my buildhost and I was again able to build 
ntfs-3g.



Extract from bug FS#3655:

https://bugs.openwrt.org/index.php?do=details&task_id=3655&order=id&sort=desc 



---

autoconf-lean stuff from Felix was merged by Daniel a few days ago to 
master with commits
https://git.openwrt.org/?p=openwrt/openwrt.git;a=commit;h=32c664ff02910bf39a3fbd5a5a4a8bff3191dd03� 
and
https://git.openwrt.org/?p=openwrt/openwrt.git;a=commit;h=f439e291304a93b982e912dc91b80ca950a594f3 



That seems to cause buildhost-specific variation in the generated site 
config files, and causes variating breakage from some packages.


I stumbled upon this on weekend with ntfs-3g, which suddenly does not 
compile in my Ubuntu 20.10 in Virtualbox. I filed a bug about ntfs-3g to 
packages feed, but this is more generic:

https://github.com/openwrt/packages/issues/14940


The same buildhost builds 21.02 without problems (and that is still 
pretty identical to master regarding packages)


Reverting autoconf-lean commits fixes things for me.

There are now others with the same symptoms, based on responses to the 
packages feed bug.


Buildbot is now meeting the same problem. At least ntfs-3g, rsync, 
nedata, and possibly also mac80211 and mwlwifi are failing for some 
targets with some buildhosts (with the new SDK).


E.g.
https://downloads.openwrt.org/snapshots/faillogs/aarch64_cortex-a72/packages/ntfs-3g/compile.txt 


OpenWrt does not build with glibc for me and the build bots.

When I remove this setting at least the autoconf-lean packet links, but 
I still have some build problems.

ac_cv_lib_xnet_main=${ac_cv_lib_xnet_main=yes}

Hauke


OpenPGP_0x93DD20630910B515.asc
Description: application/pgp-keys


OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH 0/5] mediatek: Add support for Buffalo WSR-2533DHP2

2021-03-09 Thread Hauke Mehrtens
These patches are adding support for different TRX magics and later 
support for the Buffalo WSR-2533DHP2.
This was developed mostly by INAGAKI Hiroshi and I did some fixes and 
cleaned the patches up in the last days.

I added the two patches also for kernel 5.4, I needed this in the 
beginning till I found out why kernel 5.10 is not booting. Now kernel 
5.10 is working fine with this device. I can also remove the kernel 5.4
patches.

@Hiroshi: Could you please give your Signed-off-by if you are fine with this.

Hauke Mehrtens (3):
  mediatek: Fix mtk parallel nand driver
  tools: otrx: allow own magic
  mediatek: Support non standard trx magic values

INAGAKI Hiroshi (2):
  mtd: Add option for TRX magic to fixtrx
  mediatek: Add support for Buffalo WSR-2533DHP2

 package/boot/uboot-envtools/files/mediatek|   3 +
 package/system/mtd/src/Makefile   |   1 +
 package/system/mtd/src/mtd.c  |  14 +-
 package/system/mtd/src/mtd.h  |   1 +
 package/system/mtd/src/trx.c  |   8 +-
 .../dts/mt7622-buffalo-wsr-2533dhp2.dts   | 336 ++
 target/linux/mediatek/image/mt7622.mk |  64 
 .../mt7622/base-files/etc/board.d/02_network  |   4 +
 .../base-files/etc/uci-defaults/09_fix_crc|  10 +
 .../mt7622/base-files/lib/upgrade/buffalo.sh  | 126 +++
 .../mt7622/base-files/lib/upgrade/platform.sh |  15 +
 target/linux/mediatek/mt7622/config-5.10  |   1 +
 ...trx-Allow-to-specify-trx-magic-in-DT.patch |  75 
 ...ove-dependency-to-BRCM-architectures.patch |  23 ++
 ...Fix-WAITRDY-break-condition-and-time.patch |  36 ++
 ...trx-Allow-to-specify-trx-magic-in-DT.patch |  75 
 ...ove-dependency-to-BRCM-architectures.patch |  23 ++
 tools/firmware-utils/src/otrx.c   |  15 +-
 18 files changed, 822 insertions(+), 8 deletions(-)
 create mode 100644 target/linux/mediatek/dts/mt7622-buffalo-wsr-2533dhp2.dts
 create mode 100644 
target/linux/mediatek/mt7622/base-files/etc/uci-defaults/09_fix_crc
 create mode 100644 
target/linux/mediatek/mt7622/base-files/lib/upgrade/buffalo.sh
 create mode 100644 
target/linux/mediatek/patches-5.10/350-mtd-parsers-trx-Allow-to-specify-trx-magic-in-DT.patch
 create mode 100644 
target/linux/mediatek/patches-5.10/351-mtd-parsers-Remove-dependency-to-BRCM-architectures.patch
 create mode 100644 
target/linux/mediatek/patches-5.10/360-mtd-rawnand-mtk-Fix-WAITRDY-break-condition-and-time.patch
 create mode 100644 
target/linux/mediatek/patches-5.4/0350-mtd-parsers-trx-Allow-to-specify-trx-magic-in-DT.patch
 create mode 100644 
target/linux/mediatek/patches-5.4/0351-mtd-parsers-Remove-dependency-to-BRCM-architectures.patch

-- 
2.30.1


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH 2/5] tools: otrx: allow own magic

2021-03-09 Thread Hauke Mehrtens
This allows to specify an own magic instead of using the default magic
value TRX_MAGIC. If no own magic is specified the default one will be
used.

Signed-off-by: Hauke Mehrtens 
---
 tools/firmware-utils/src/otrx.c | 15 +--
 1 file changed, 13 insertions(+), 2 deletions(-)

diff --git a/tools/firmware-utils/src/otrx.c b/tools/firmware-utils/src/otrx.c
index 223e032f2b5e..3bbbac39e3b3 100644
--- a/tools/firmware-utils/src/otrx.c
+++ b/tools/firmware-utils/src/otrx.c
@@ -287,7 +287,6 @@ static int otrx_create_write_hdr(FILE *trx, struct 
trx_header *hdr) {
uint8_t buf[1024];
uint32_t crc32;
 
-   hdr->magic = cpu_to_le32(TRX_MAGIC);
hdr->version = 1;
 
fseek(trx, 0, SEEK_SET);
@@ -324,9 +323,13 @@ static int otrx_create(int argc, char **argv) {
ssize_t sbytes;
size_t curr_idx = 0;
size_t curr_offset = sizeof(hdr);
+   char *e;
+   uint32_t magic;
int c;
int err = 0;
 
+   hdr.magic = cpu_to_le32(TRX_MAGIC);
+
if (argc < 3) {
fprintf(stderr, "No TRX file passed\n");
err = -EINVAL;
@@ -343,7 +346,7 @@ static int otrx_create(int argc, char **argv) {
fseek(trx, curr_offset, SEEK_SET);
 
optind = 3;
-   while ((c = getopt(argc, argv, "f:A:a:b:")) != -1) {
+   while ((c = getopt(argc, argv, "f:A:a:b:M:")) != -1) {
switch (c) {
case 'f':
if (curr_idx >= TRX_MAX_PARTS) {
@@ -400,6 +403,14 @@ static int otrx_create(int argc, char **argv) {
curr_offset += sbytes;
}
break;
+   case 'M':
+   errno = 0;
+   magic = strtoul(optarg, &e, 0);
+   if (errno || (e == optarg) || *e)
+   fprintf(stderr, "illegal magic string %s\n", 
optarg);
+   else
+   hdr.magic = cpu_to_le32(magic);
+   break;
}
if (err)
break;
-- 
2.30.1


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH 3/5] mtd: Add option for TRX magic to fixtrx

2021-03-09 Thread Hauke Mehrtens
From: INAGAKI Hiroshi 

Buffalo uses the TRX header with a different magic and even changes this
magic with different devices. This change allows to specify the header
to use as a command line argument.

This is needed for the Buffalo WSR-2533DHP2 based on mt7622.

Co-Developed-by: Hauke Mehrtens 
Signed-off-by: Hauke Mehrtens 
---
 package/system/mtd/src/mtd.c | 14 --
 package/system/mtd/src/mtd.h |  1 +
 package/system/mtd/src/trx.c |  8 
 3 files changed, 17 insertions(+), 6 deletions(-)

diff --git a/package/system/mtd/src/mtd.c b/package/system/mtd/src/mtd.c
index 9baed3fd5e99..fc7071d94083 100644
--- a/package/system/mtd/src/mtd.c
+++ b/package/system/mtd/src/mtd.c
@@ -94,6 +94,7 @@ int mtdsize = 0;
 int erasesize = 0;
 int jffs2_skip_bytes=0;
 int mtdtype = 0;
+uint32_t opt_trxmagic = TRX_MAGIC;
 
 int mtd_open(const char *mtd, bool block)
 {
@@ -205,7 +206,7 @@ image_check(int imagefd, const char *mtd)
 
magic = ((uint32_t *)buf)[0];
 
-   if (be32_to_cpu(magic) == TRX_MAGIC)
+   if (be32_to_cpu(magic) == opt_trxmagic)
imageformat = MTD_IMAGE_FORMAT_TRX;
else if (be32_to_cpu(magic) == SEAMA_MAGIC)
imageformat = MTD_IMAGE_FORMAT_SEAMA;
@@ -810,6 +811,7 @@ static void usage(void)
"-l  the length of data that we want to 
dump\n");
if (mtd_fixtrx) {
fprintf(stderr,
+   "-M   magic number of the image header in 
the partition (for fixtrx)\n"
"-o offset   offset of the image header in the 
partition(for fixtrx)\n");
}
if (mtd_fixtrx || mtd_fixseama || mtd_fixwrg || mtd_fixwrgg) {
@@ -877,7 +879,7 @@ int main (int argc, char **argv)
 #ifdef FIS_SUPPORT
"F:"
 #endif
-   "frnqe:d:s:j:p:o:c:t:l:")) != -1)
+   "frnqe:d:s:j:p:o:c:t:l:M:")) != -1)
switch (ch) {
case 'f':
force = 1;
@@ -929,6 +931,14 @@ int main (int argc, char **argv)
usage();
}
break;
+   case 'M':
+   errno = 0;
+   opt_trxmagic = strtoul(optarg, 0, 0);
+   if (errno) {
+   fprintf(stderr, "-M: illegal numeric 
string\n");
+   usage();
+   }
+   break;
case 'o':
errno = 0;
offset = strtoul(optarg, 0, 0);
diff --git a/package/system/mtd/src/mtd.h b/package/system/mtd/src/mtd.h
index fe716b715090..d2facc8e3b94 100644
--- a/package/system/mtd/src/mtd.h
+++ b/package/system/mtd/src/mtd.h
@@ -12,6 +12,7 @@
 extern int quiet;
 extern int mtdsize;
 extern int erasesize;
+extern uint32_t opt_trxmagic;
 
 extern int mtd_open(const char *mtd, bool block);
 extern int mtd_check_open(const char *mtd);
diff --git a/package/system/mtd/src/trx.c b/package/system/mtd/src/trx.c
index 3e3b5d220c62..d7c5d832c42d 100644
--- a/package/system/mtd/src/trx.c
+++ b/package/system/mtd/src/trx.c
@@ -35,7 +35,6 @@
 #include "mtd.h"
 #include "crc32.h"
 
-#define TRX_MAGIC   0x30524448  /* "HDR0" */
 #define TRX_CRC32_DATA_OFFSET  12  /* First 12 bytes are not covered by 
CRC32 */
 #define TRX_CRC32_DATA_SIZE16
 struct trx_header {
@@ -92,7 +91,7 @@ trx_fixup(int fd, const char *name)
}
 
trx = ptr;
-   if (trx->magic != TRX_MAGIC) {
+   if (ntohl(trx->magic) != opt_trxmagic) {
fprintf(stderr, "TRX header not found\n");
goto err;
}
@@ -127,7 +126,8 @@ trx_check(int imagefd, const char *mtd, char *buf, int *len)
}
}
 
-   if (trx->magic != TRX_MAGIC || trx->len < sizeof(struct trx_header)) {
+   if (ntohl(trx->magic) != opt_trxmagic ||
+   trx->len < sizeof(struct trx_header)) {
if (quiet < 2) {
fprintf(stderr, "Bad trx header\n");
fprintf(stderr, "This is not the correct file format; 
refusing to flash.\n"
@@ -200,7 +200,7 @@ mtd_fixtrx(const char *mtd, size_t offset, size_t data_size)
}
 
trx = (struct trx_header *)(first_block + offset);
-   if (trx->magic != STORE32_LE(0x30524448)) {
+   if (ntohl(trx->magic) != opt_trxmagic) {
fprintf(stderr, "No trx magic found\n");
exit(1);
}
-- 
2.30.1


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH 4/5] mediatek: Support non standard trx magic values

2021-03-09 Thread Hauke Mehrtens
Buffalo uses the TRX format with a different magic, add support for
this.

It is planned to send these patches upstream.

Cc: Rafał Miłecki 
Signed-off-by: Hauke Mehrtens 
---
 ...trx-Allow-to-specify-trx-magic-in-DT.patch | 75 +++
 ...ove-dependency-to-BRCM-architectures.patch | 23 ++
 ...trx-Allow-to-specify-trx-magic-in-DT.patch | 75 +++
 ...ove-dependency-to-BRCM-architectures.patch | 23 ++
 4 files changed, 196 insertions(+)
 create mode 100644 
target/linux/mediatek/patches-5.10/350-mtd-parsers-trx-Allow-to-specify-trx-magic-in-DT.patch
 create mode 100644 
target/linux/mediatek/patches-5.10/351-mtd-parsers-Remove-dependency-to-BRCM-architectures.patch
 create mode 100644 
target/linux/mediatek/patches-5.4/0350-mtd-parsers-trx-Allow-to-specify-trx-magic-in-DT.patch
 create mode 100644 
target/linux/mediatek/patches-5.4/0351-mtd-parsers-Remove-dependency-to-BRCM-architectures.patch

diff --git 
a/target/linux/mediatek/patches-5.10/350-mtd-parsers-trx-Allow-to-specify-trx-magic-in-DT.patch
 
b/target/linux/mediatek/patches-5.10/350-mtd-parsers-trx-Allow-to-specify-trx-magic-in-DT.patch
new file mode 100644
index ..4db51a88ad19
--- /dev/null
+++ 
b/target/linux/mediatek/patches-5.10/350-mtd-parsers-trx-Allow-to-specify-trx-magic-in-DT.patch
@@ -0,0 +1,75 @@
+From 0600e3d81628002a5cd80cf83ee454851b0063c0 Mon Sep 17 00:00:00 2001
+From: Hauke Mehrtens 
+Date: Sun, 7 Mar 2021 18:19:26 +0100
+Subject: mtd: parsers: trx: Allow to specify trx-magic in DT
+
+Buffalo uses a different TRX magic for every device, to be able to use
+this trx parser, make it possible to specify the TRX magic in device
+tree. If no TRX magic is specified in device tree, the standard value
+will be used. This value should only be specified if a vendor chooses to
+use a non standard TRX magic.
+
+Signed-off-by: Hauke Mehrtens 
+---
+ .../bindings/mtd/partitions/brcm,trx.txt  |  5 +
+ drivers/mtd/parsers/parser_trx.c  | 21 ++-
+ 2 files changed, 25 insertions(+), 1 deletion(-)
+
+--- a/Documentation/devicetree/bindings/mtd/partitions/brcm,trx.txt
 b/Documentation/devicetree/bindings/mtd/partitions/brcm,trx.txt
+@@ -28,6 +28,11 @@ detected by a software parsing TRX heade
+ Required properties:
+ - compatible : (required) must be "brcm,trx"
+ 
++Optional properties:
++
++- trx-magic: TRX magic, if it is different from the default magic
++   0x30524448 as a u32.
++
+ Example:
+ 
+ flash@0 {
+--- a/drivers/mtd/parsers/parser_trx.c
 b/drivers/mtd/parsers/parser_trx.c
+@@ -74,6 +74,24 @@ out_default:
+   return "rootfs";
+ }
+ 
++static uint32_t parser_trx_get_magic(struct mtd_info *mtd)
++{
++  uint32_t trx_magic = TRX_MAGIC;
++  struct device_node *np;
++  int err;
++
++  np = mtd_get_of_node(mtd);
++  if (!np)
++  return trx_magic;
++
++  /* Get different magic from device tree if specified */
++  err = of_property_read_u32(np, "trx-magic", &trx_magic);
++  if (err != 0 && err != -EINVAL)
++  pr_err("failed to parse \"trx-magic\" DT attribute, use 
default: %d\n", err);
++
++  return trx_magic;
++}
++
+ static int parser_trx_parse(struct mtd_info *mtd,
+   const struct mtd_partition **pparts,
+   struct mtd_part_parser_data *data)
+@@ -83,6 +101,7 @@ static int parser_trx_parse(struct mtd_i
+   struct trx_header trx;
+   size_t bytes_read;
+   uint8_t curr_part = 0, i = 0;
++  uint32_t trx_magic = parser_trx_get_magic(mtd);
+   int err;
+ 
+   parts = kcalloc(TRX_PARSER_MAX_PARTS, sizeof(struct mtd_partition),
+@@ -97,7 +116,7 @@ static int parser_trx_parse(struct mtd_i
+   return err;
+   }
+ 
+-  if (trx.magic != TRX_MAGIC) {
++  if (trx.magic != trx_magic) {
+   kfree(parts);
+   return -ENOENT;
+   }
diff --git 
a/target/linux/mediatek/patches-5.10/351-mtd-parsers-Remove-dependency-to-BRCM-architectures.patch
 
b/target/linux/mediatek/patches-5.10/351-mtd-parsers-Remove-dependency-to-BRCM-architectures.patch
new file mode 100644
index ..5f06cad4cd8d
--- /dev/null
+++ 
b/target/linux/mediatek/patches-5.10/351-mtd-parsers-Remove-dependency-to-BRCM-architectures.patch
@@ -0,0 +1,23 @@
+From 63f0cf88ab5461acb0911252f12bb94ee3bf05a2 Mon Sep 17 00:00:00 2001
+From: Hauke Mehrtens 
+Date: Sun, 7 Mar 2021 18:23:29 +0100
+Subject: mtd: parsers: Remove dependency to BRCM architectures
+
+Buffalo uses the TRX partition format also on Mediatek SoCs.
+
+Signed-off-by: Hauke Mehrtens 
+---
+ drivers/mtd/parsers/Kconfig | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/drivers/mtd/parsers/Kconfig
 b/drivers/mtd/parsers/Kconfig
+@@ -121,7 +121,7 @@ config MTD_AFS_PARTS
+ 
+ config MTD_PARSER_TRX
+   tristate "Parser for TRX format partitions"
+-  depends 

[PATCH 1/5] mediatek: Fix mtk parallel nand driver

2021-03-09 Thread Hauke Mehrtens
This fixes some bugs in the mtk parallel nand driver introduced in 5.10.

This patch was send upstream.

Signed-off-by: Hauke Mehrtens 
---
 ...Fix-WAITRDY-break-condition-and-time.patch | 36 +++
 1 file changed, 36 insertions(+)
 create mode 100644 
target/linux/mediatek/patches-5.10/360-mtd-rawnand-mtk-Fix-WAITRDY-break-condition-and-time.patch

diff --git 
a/target/linux/mediatek/patches-5.10/360-mtd-rawnand-mtk-Fix-WAITRDY-break-condition-and-time.patch
 
b/target/linux/mediatek/patches-5.10/360-mtd-rawnand-mtk-Fix-WAITRDY-break-condition-and-time.patch
new file mode 100644
index ..340e80f67b12
--- /dev/null
+++ 
b/target/linux/mediatek/patches-5.10/360-mtd-rawnand-mtk-Fix-WAITRDY-break-condition-and-time.patch
@@ -0,0 +1,36 @@
+From 4a4854761c9dedeedbf72c25d1317ab2e7600d4f Mon Sep 17 00:00:00 2001
+From: Hauke Mehrtens 
+Date: Mon, 8 Mar 2021 23:16:17 +0100
+Subject: [PATCH] mtd: rawnand: mtk: Fix WAITRDY break condition and timeout
+
+This fixes NAND_OP_WAITRDY_INSTR operation in the driver. Without this
+change the driver waits till the system is busy, but we should wait till
+the busy flag is cleared. The readl_poll_timeout() function gets a break
+condition, not a wait condition.
+
+In addition fix the timeout. The timeout_ms is given in ms, but the
+readl_poll_timeout() function takes the timeout in us. Multiple the
+given timeout by 1000 to convert it.
+
+Without this change, the driver does not work at all, it doesn't even
+identify the NAND chip.
+
+Fixes: 5197360f9e09 ("mtd: rawnand: mtk: Convert the driver to exec_op()")
+Signed-off-by: Hauke Mehrtens 
+---
+ drivers/mtd/nand/raw/mtk_nand.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/drivers/mtd/nand/raw/mtk_nand.c
 b/drivers/mtd/nand/raw/mtk_nand.c
+@@ -488,8 +488,8 @@ static int mtk_nfc_exec_instr(struct nan
+   return 0;
+   case NAND_OP_WAITRDY_INSTR:
+   return readl_poll_timeout(nfc->regs + NFI_STA, status,
+-status & STA_BUSY, 20,
+-instr->ctx.waitrdy.timeout_ms);
++!(status & STA_BUSY), 20,
++instr->ctx.waitrdy.timeout_ms * 1000);
+   default:
+   break;
+   }
-- 
2.30.1


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH 5/5] mediatek: Add support for Buffalo WSR-2533DHP2

2021-03-09 Thread Hauke Mehrtens
From: INAGAKI Hiroshi 

This adds support for the Buffalo WSR-2533DHP2.

The device uses the Broadcom TRX image format with a special magic. To
be able to boot the images or load them they have to be wrapped with
different headers depending how it is loaded.

There are multiple ways to install OpenWrt on this device.
1. Boot ramdisk from U-Boot.

This will load the image and not write it into the flash.

1. Stop boot menu with "space" key
2. Select "System Load Linux to SDRAM via TFTP."
3. Load this image:
   openwrt-mediatek-mt7622-buffalo_wsr-2533dhp2-initramfs-kernel.bin
4. The system boots the image

2. Write to flash from U-Boot
-
This will load the image over tftp and directly write it into the flash.

1. Stop boot menu with "space" key
2. Select "System Load Linux Kernel then write to Flash via TFTP."
3. Load this image:
   openwrt-mediatek-mt7622-buffalo_wsr-2533dhp2-squashfs-factory-uboot.bin
4. The system writes this image into the flash and boots into it.

3. Write to flash from Web UI
-
This will load the image over over the Web UI and write it into the flash

1. Open the Web UI
2. Go to "管理" -> "ファームウェア更新"
3. Select "ローカルファイル指定" and click "更新実行"
4. Load this image:
   openwrt-mediatek-mt7622-buffalo_wsr-2533dhp2-squashfs-factory.bin
5. The system writes this image into the flash and boots into it.

Specifications (v1)
---
* SoC:   MT7622 (4x4 2.4 GHz Wifi)
* Wifi:  MT7615 (4x4 5 GHz Wifi)
* Flash: Winbond W29N01HZ 128MB SLC NAND
* Ethernet:  Realtek RTL8367S (4 x 1GBit/s, SoC via 2.5GBit/s)

Co-Developed-by: Hauke Mehrtens 
Signed-off-by: Hauke Mehrtens 
---
 package/boot/uboot-envtools/files/mediatek|   3 +
 package/system/mtd/src/Makefile   |   1 +
 .../dts/mt7622-buffalo-wsr-2533dhp2.dts   | 336 ++
 target/linux/mediatek/image/mt7622.mk |  64 
 .../mt7622/base-files/etc/board.d/02_network  |   4 +
 .../base-files/etc/uci-defaults/09_fix_crc|  10 +
 .../mt7622/base-files/lib/upgrade/buffalo.sh  | 126 +++
 .../mt7622/base-files/lib/upgrade/platform.sh |  15 +
 target/linux/mediatek/mt7622/config-5.10  |   1 +
 9 files changed, 560 insertions(+)
 create mode 100644 target/linux/mediatek/dts/mt7622-buffalo-wsr-2533dhp2.dts
 create mode 100644 
target/linux/mediatek/mt7622/base-files/etc/uci-defaults/09_fix_crc
 create mode 100644 
target/linux/mediatek/mt7622/base-files/lib/upgrade/buffalo.sh

diff --git a/package/boot/uboot-envtools/files/mediatek 
b/package/boot/uboot-envtools/files/mediatek
index ba6d780c4926..ce28fb31cbca 100644
--- a/package/boot/uboot-envtools/files/mediatek
+++ b/package/boot/uboot-envtools/files/mediatek
@@ -24,6 +24,9 @@ case "$board" in
ubootenv_add_uci_config "$envdev" "0x0" "0x8" "0x8" "1"
ubootenv_add_uci_config "$envdev" "0x8" "0x8" "0x8" "1"
;;
+buffalo,wsr-2533dhp2)
+   ubootenv_add_uci_config "/dev/mtd3" "0x0" "0x1000" "0x1000"
+   ;;
 esac
 
 config_load ubootenv
diff --git a/package/system/mtd/src/Makefile b/package/system/mtd/src/Makefile
index 6baea52b8f03..e204ecb221d5 100644
--- a/package/system/mtd/src/Makefile
+++ b/package/system/mtd/src/Makefile
@@ -12,6 +12,7 @@ obj.gemini = $(obj.wrgg)
 obj.brcm = trx.o
 obj.bcm47xx = $(obj.brcm)
 obj.bcm53xx = $(obj.brcm) $(obj.seama)
+obj.mediatek = $(obj.brcm)
 obj.bcm63xx = imagetag.o
 obj.bmips = imagetag.o
 obj.ramips = $(obj.seama) $(obj.tpl) $(obj.wrg) linksys_bootcount.o
diff --git a/target/linux/mediatek/dts/mt7622-buffalo-wsr-2533dhp2.dts 
b/target/linux/mediatek/dts/mt7622-buffalo-wsr-2533dhp2.dts
new file mode 100644
index ..198c78476d33
--- /dev/null
+++ b/target/linux/mediatek/dts/mt7622-buffalo-wsr-2533dhp2.dts
@@ -0,0 +1,336 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+/dts-v1/;
+#include 
+#include 
+
+#include "mt7622.dtsi"
+#include "mt6380.dtsi"
+
+/ {
+   model = "Buffalo WSR-2533DHP2";
+   compatible = "buffalo,wsr-2533dhp2", "mediatek,mt7622";
+
+   aliases {
+   serial0 = &uart0;
+   led-boot = &power_green;
+   led-failsafe = &power_amber;
+   led-running = &power_green;
+   led-upgrade = &power_green;
+   };
+
+   chosen {
+   bootargs = "earlycon=uart8250,mmio32,0x11002000 
console=ttyS0,115200n8 swiotlb=512";
+   };
+
+   memory {
+   reg = <0 0x4000 0 0x0F00>;
+   };
+
+   leds {
+   compatible = "gpio-leds";
+
+   wireless_amber {
+   label = &quo

Re: [PATCH 0/5] mediatek: Add support for Buffalo WSR-2533DHP2

2021-03-10 Thread Hauke Mehrtens

On 3/10/21 10:03 AM, INAGAKI Hiroshi wrote:

Hi Hauke,

On 2021/03/10 8:52, Hauke Mehrtens wrote:

These patches are adding support for different TRX magics and later
support for the Buffalo WSR-2533DHP2.
This was developed mostly by INAGAKI Hiroshi and I did some fixes and
cleaned the patches up in the last days.

I added the two patches also for kernel 5.4, I needed this in the
beginning till I found out why kernel 5.10 is not booting. Now kernel
5.10 is working fine with this device. I can also remove the kernel 5.4
patches.

@Hiroshi: Could you please give your Signed-off-by if you are fine 
with this.

I'm fine, thank you :)

Signed-off-by: INAGAKI Hiroshi 


BTW, the word after the prefix in the commit titles may need to be 
lower-case[1].


[1]: https://openwrt.org/submitting-patches#submission_guidelines


Thanks,

I added your Signed-off-by and fixed the commit messages.

Hauke



OpenPGP_0x93DD20630910B515.asc
Description: application/pgp-keys


OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH 5/5] mediatek: Add support for Buffalo WSR-2533DHP2

2021-03-15 Thread Hauke Mehrtens

On 3/12/21 9:55 PM, Adrian Schmutzler wrote:

Hi,


-Original Message-
From: openwrt-devel [mailto:openwrt-devel-boun...@lists.openwrt.org]
On Behalf Of Hauke Mehrtens
Sent: Mittwoch, 10. März 2021 00:52
To: openwrt-devel@lists.openwrt.org
Cc: musashino.o...@gmail.com; Hauke Mehrtens 
Subject: [PATCH 5/5] mediatek: Add support for Buffalo WSR-2533DHP2


[...]


+   leds {
+   compatible = "gpio-leds";
+
+   wireless_amber {
+   label = "wsr-2533dhp2:amber:wireless";
+   gpios = <&pio 2 GPIO_ACTIVE_HIGH>;
+   };


Consider removing the model from the labels here and below ...


I removed the "wsr-2533dhp2:" prefix from the led labels.
I also switched from gpio-keys-polled to gpio-keys, IRQs for GPIOs are 
working.


One of the buttons is a tri-state switch connected to GPIO 1 and 16, it 
used the same Linux code BTN_0 for both GPIOs before, I checked this to 
BTN_0 and BTN_1 now.


Hauke

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


  1   2   3   4   5   6   7   8   9   10   >