[PATCH] elfutils: fix building with GCC 11

2021-07-18 Thread Rui Salvaterra
Add a patch to fix building with GCC 11, which triggers new warnings by
enabling -Warray-parameter by default.

Signed-off-by: Rui Salvaterra 
---
 .../patches/111-fix-gcc11-build.patch | 22 +++
 1 file changed, 22 insertions(+)
 create mode 100644 package/libs/elfutils/patches/111-fix-gcc11-build.patch

diff --git a/package/libs/elfutils/patches/111-fix-gcc11-build.patch 
b/package/libs/elfutils/patches/111-fix-gcc11-build.patch
new file mode 100644
index 00..1ec880e34e
--- /dev/null
+++ b/package/libs/elfutils/patches/111-fix-gcc11-build.patch
@@ -0,0 +1,22 @@
+--- a/libebl/libebl.h
 b/libebl/libebl.h
+@@ -245,7 +245,7 @@ extern ssize_t ebl_register_info (Ebl *e
+Each of these is filled with the DWARF register number corresponding,
+or -1 if there is none.  Returns zero when the information is available.  
*/
+ extern int ebl_syscall_abi (Ebl *ebl, int *sp, int *pc,
+-  int *callno, int args[6]);
++  int *callno, int args[]);
+ 
+ /* Supply the ABI-specified state of DWARF CFI before CIE initial programs.
+ 
+--- a/libdw/libdw.h
 b/libdw/libdw.h
+@@ -1065,7 +1065,7 @@ extern int dwarf_frame_cfa (Dwarf_Frame
+expressions in the CFI, *OPS is an internal pointer that can be used as
+long as the Dwarf_CFI used to create FRAME remains alive.  */
+ extern int dwarf_frame_register (Dwarf_Frame *frame, int regno,
+-   Dwarf_Op ops_mem[3],
++   Dwarf_Op ops_mem[],
+Dwarf_Op **ops, size_t *nops)
+   __nonnull_attribute__ (3, 4, 5);
+ 
-- 
2.32.0


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


[PATCH 1/2] kernel/generic: add a missing symbol to the 5.10 kconfig

2021-07-18 Thread Rui Salvaterra
Add CONFIG_HAVE_ARM_ARCH_TIMER (disabled). A make kernel_oldconfig on cortexa9
will otherwise prompt for its selection. The 5.4 configuration already contains
the same symbol.

Signed-off-by: Rui Salvaterra 
---
 target/linux/generic/config-5.10 | 1 +
 1 file changed, 1 insertion(+)

diff --git a/target/linux/generic/config-5.10 b/target/linux/generic/config-5.10
index 68e90156a0..746f401ec9 100644
--- a/target/linux/generic/config-5.10
+++ b/target/linux/generic/config-5.10
@@ -2120,6 +2120,7 @@ CONFIG_HARDENED_USERCOPY=y
 # CONFIG_HARDENED_USERCOPY_PAGESPAN is not set
 CONFIG_HARDEN_EL2_VECTORS=y
 # CONFIG_HARDLOCKUP_DETECTOR is not set
+# CONFIG_HAVE_ARM_ARCH_TIMER is not set
 # CONFIG_HCALL_STATS is not set
 # CONFIG_HDC100X is not set
 # CONFIG_HDC2010 is not set
-- 
2.32.0


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


[PATCH 0/2] kernel/generic: two trivial fixes

2021-07-18 Thread Rui Salvaterra
Add a missing symbol and resort the 5.10 kconfig.

Rui Salvaterra (2):
  kernel/generic: add a missing symbol to the 5.10 kconfig
  kernel/generic: sort the 5.10 kconfig symbols

 target/linux/generic/config-5.10 | 7 ---
 1 file changed, 4 insertions(+), 3 deletions(-)

-- 
2.32.0


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


[PATCH 2/2] kernel/generic: sort the 5.10 kconfig symbols

2021-07-18 Thread Rui Salvaterra
Sort the kernel configuration using scripts/kconfig.pl.

Signed-off-by: Rui Salvaterra 
---
 target/linux/generic/config-5.10 | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/target/linux/generic/config-5.10 b/target/linux/generic/config-5.10
index 746f401ec9..54e6d817da 100644
--- a/target/linux/generic/config-5.10
+++ b/target/linux/generic/config-5.10
@@ -1004,8 +1004,8 @@ CONFIG_CROSS_COMPILE=""
 # CONFIG_CROSS_MEMORY_ATTACH is not set
 CONFIG_CRYPTO=y
 # CONFIG_CRYPTO_842 is not set
-# CONFIG_CRYPTO_ADIANTUM is not set
 CONFIG_CRYPTO_ACOMP2=y
+# CONFIG_CRYPTO_ADIANTUM is not set
 CONFIG_CRYPTO_AEAD=y
 CONFIG_CRYPTO_AEAD2=y
 # CONFIG_CRYPTO_AEGIS128 is not set
@@ -1123,9 +1123,9 @@ CONFIG_CRYPTO_HASH2=y
 # CONFIG_CRYPTO_HW is not set
 # CONFIG_CRYPTO_JITTERENTROPY is not set
 # CONFIG_CRYPTO_KEYWRAP is not set
+# CONFIG_CRYPTO_KHAZAD is not set
 CONFIG_CRYPTO_KPP=y
 CONFIG_CRYPTO_KPP2=y
-# CONFIG_CRYPTO_KHAZAD is not set
 CONFIG_CRYPTO_LIB_AES=y
 CONFIG_CRYPTO_LIB_ARC4=y
 # CONFIG_CRYPTO_LIB_BLAKE2S is not set
@@ -3562,8 +3562,8 @@ CONFIG_MTD_NAND_IDS=y
 # CONFIG_MTD_NAND_PLATFORM is not set
 # CONFIG_MTD_NAND_PXA3xx is not set
 # CONFIG_MTD_NAND_RB4XX is not set
-# CONFIG_MTD_NAND_RB91X is not set
 # CONFIG_MTD_NAND_RB750 is not set
+# CONFIG_MTD_NAND_RB91X is not set
 # CONFIG_MTD_NAND_RICOH is not set
 # CONFIG_MTD_NAND_S3C2410 is not set
 # CONFIG_MTD_NAND_SHARPSL is not set
-- 
2.32.0


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


[PATCH v1 procd] watchdog: Add an info message if the watchdog reset the system

2021-07-18 Thread Martin Blumenstingl via openwrt-devel
The sender domain has a DMARC Reject/Quarantine policy which disallows
sending mailing list messages using the original "From" header.

To mitigate this problem, the original message has been wrapped
automatically by the mailing list software.--- Begin Message ---
Investigating why a device has rebooted can be difficult, especially if
there's no output (for example during a kernel crash) on the serial
console. Some watchdog drivers can tell us if the watchdog has caused
the system to reboot. The corresponding WDIOF_CARDRESET flag is
documented as: "Card previously reset the CPU".

Add an info message if the watchdog supports the WDIOF_CARDRESET flag
and if the boot status indicates that the watchdog has previously reset
the system.

Signed-off-by: Martin Blumenstingl 
---
 watchdog.c | 31 +++
 1 file changed, 31 insertions(+)

diff --git a/watchdog.c b/watchdog.c
index 9d770b4..39ae9ff 100644
--- a/watchdog.c
+++ b/watchdog.c
@@ -93,6 +93,35 @@ static int watchdog_set_drv_timeout(void)
return ioctl(wdt_fd, WDIOC_SETTIMEOUT, _drv_timeout);
 }
 
+static void watchdog_print_status(void)
+{
+   struct watchdog_info wdt_info;
+   int bootstatus;
+
+   if (wdt_fd < 0)
+   return;
+
+   if (ioctl(wdt_fd, WDIOC_GETSUPPORT, _info)) {
+   DEBUG(2, "Watchdog GETSUPPORT failed\n");
+   return;
+   }
+
+   if (!(wdt_info.options & WDIOF_CARDRESET)) {
+   DEBUG(2, "Watchdog does not have CARDRESET support\n");
+   return;
+   }
+
+   if (ioctl(wdt_fd, WDIOC_GETBOOTSTATUS, )) {
+   DEBUG(2, "Watchdog GETBOOTSTATUS failed\n");
+   return;
+   }
+
+   if (bootstatus & WDIOF_CARDRESET)
+   LOG("Watchdog has previously reset the system\n");
+   else
+   DEBUG(2, "Watchdog did not previously reset the system\n");
+}
+
 void watchdog_set_magicclose(bool val)
 {
wdt_magicclose = val;
@@ -170,6 +199,8 @@ void watchdog_init(int preinit)
watchdog_timeout_cb(_timeout);
 
DEBUG(4, "Opened watchdog with timeout %ds\n", watchdog_timeout(0));
+
+   watchdog_print_status();
 }
 
 
-- 
2.32.0


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


[sdwalker/sdwalker.github.io] d63580: This week's update

2021-07-18 Thread Stephen Walker via openwrt-devel
The sender domain has a DMARC Reject/Quarantine policy which disallows
sending mailing list messages using the original "From" header.

To mitigate this problem, the original message has been wrapped
automatically by the mailing list software.--- Begin Message ---
  Branch: refs/heads/master
  Home:   https://github.com/sdwalker/sdwalker.github.io
  Commit: d63580951342a975ccbb9954ca0d3b2efeba8af0
  
https://github.com/sdwalker/sdwalker.github.io/commit/d63580951342a975ccbb9954ca0d3b2efeba8af0
  Author: Stephen Walker 
  Date:   2021-07-18 (Sun, 18 Jul 2021)

  Changed paths:
M uscan/index-18.06.html
M uscan/index-19.07.html
M uscan/index-21.02.html
M uscan/index.html

  Log Message:
  ---
  This week's update



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


OpenWrt DSA Mini-Tutorial

2021-07-18 Thread Rich Brown
I have updated the DSA Mini-tutorial in the playground: 
https://openwrt.org/playground/richb/dsa-mini-tutorial

I finished the first section ("Bridging all LAN ports"), and I am going to stop 
editing now, because:

1) I need someone else to look at the overall format of the document
2) I made some bold assertions and simplifications of the language in the 
document. But because I don't really understand DSA, I may be totally wrong...
3) If it's not right, we won't have to patch up the remainder, that is 
substantially unchanged from the Forum post.

Please check it out and either change it, or let me know what needs to be 
fixed. Thanks.

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


RE: OpenWrt 21.02 status

2021-07-18 Thread Adrian Schmutzler
> The last time I tried it was very confusing. When I first read about "new 
> fresh
> installation", I thought: "install without keeping settings".
> However, OpenWrt returned an image check failure, even when I did not
> keep the settings (sysupgrade -n). It was the same type of error (image
> validation failed) that would happen if I selected the wrong firmware (but
> maybe with a different content). The only way to install it was forcing the
> operation, which might also allow an incompatible image to be installed
> (bricking the device). Please reconsider some form of upgrade path that
> validates the image and allows the user to upgrade without a force or going
> back to factory before reinstalling OpenWrt with DSA. Something like
> "update package foo to version n.m.z or upgrade to 19.07.9 before installing
> 21.02 for proper image validation". Most users will not be confident to apply
> a forced installation.

That would be nice, but unfortunately it's not so easy. The problem is that the 
upgrade mechanism is baked into the _old_ image.
Any upgrade can only do what the old firmware supported. Thus, I was really 
glad that I was able to hack this message into the device detection mechanism 
at all. Otherwise, we would not have any message at all for old installations.

> 
> From wiki upgrading to 21.02 page:
> 
> "Don't worry - If you try to upgrade with the wrong target, sysupgrade will
> refuse to proceed with an error message like this:
> Image version mismatch. image 1.1 device 1.0 Please wipe config during
> upgrade (force required) or reinstall. Config cannot be migrated from
> swconfig to DSA Image check failed"
> 
> My experience and the message content indicates that it will show for all
> migrations from "swconfig" to "DSA" and not only for "wrong target".

Yes. For the old sysupgrade, we simply match two strings (the board name from 
the device against SUPPORTED_DEVICES from the image). Either it's successful, 
or it's not. If it's not, the message displays the name of the 
SUPPORTED_DEVICES. That's what we got. So I have to hack all of the message 
into the SUPPORTED_DEVICES string.

> 
> I tried to start a discussion about it in an email "Usability issues for DSA
> upgrade" (jun/28) but I got no answer.

We can discuss this for the future, i.e. for updates starting at 21.xx, and we 
can discuss the exact wording of the message.

> 
> It would also be great if we could detect a config from a pre-dsa system and
> restore everything but skipping or renaming DSA relevant files (nework,
> wifi?) DSA) with a suffix like '.pre-dsa'.

We had a very long delay due to DSA and nobody was even slightly interested in 
creating a migration script.
For partial migration, I suspect that implementing something here that is 
general will be much more complicated than just having the user select what he 
wants/needs.

Best

Adrian

> 
> DSA is missing a lot of docs. For example: is there a simple, secure way to
> detect a system is using DSA for a specific switch (or device)?
> Is it possible to exist a device with two switches and only one of them uses
> DSA?
> 
> Regards,
> 
> ___
> openwrt-devel mailing list
> openwrt-devel@lists.openwrt.org
> https://lists.openwrt.org/mailman/listinfo/openwrt-devel


openpgp-digital-signature.asc
Description: PGP signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: 6in4 tunnel creation sometimes goes into infinite loop on kernel 5.10

2021-07-18 Thread Ansuel Smith
>
> For details see FS#3690, created months ago but no progress has been made.
> I hope it can be fixed ASAP.
>
> Regards,
> Qingfang
>

Can confirm the bug... I also asked for support on the forum, didn't know
it was present also on other users.

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


6in4 tunnel creation sometimes goes into infinite loop on kernel 5.10

2021-07-18 Thread DENG Qingfang
For details see FS#3690, created months ago but no progress has been made.
I hope it can be fixed ASAP.

Regards,
Qingfang

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


Re: OpenWrt 21.02 status

2021-07-18 Thread Rich Brown

>> 1) I created a new "Upgrading to OpenWrt 21.02.0" page at:   
>> https://openwrt.org/playground/richb/to2102 I distilled the announcement 
>> page (https://openwrt.org/releases/21.02/notes-21.02.0) to make this 
>> checklist for people that won't read that entire page.
>> Did I get the new page right? Please feel free to edit and make it correct.
> 
> Yes looks good, we should probably integrate this somehow in the release 
> notes, so that people do not have to read everything.

Thanks. I hasten to point out that I was just guessing / making stuff up in 
places. Please check every word, VERY CAREFULLY. (Remember, some readers will 
study it line by line. If it's not totally correct, they're going to do the 
wrong thing...)

https://openwrt.org/playground/richb/to2102 

>> 2) I was pretty fuzzy about what people should do if their target did 
>> migrate to DSA. Do we have a guide to help those people through the 
>> transition?
> 
> We do not support a migration and people have to start with a new fresh 
> installation. Doing a backup and restoring some settings manually works.

Then I think this is a big deal for people with interesting network 
configurations (maybe for everyone except those with a vanilla bridged LAN?) If 
they just install, I suspect they're going to be off the air, and we'll receive 
continuing "21.02 broke my router" complaints. Is this something we can detect 
automatically? 

In any event, we need to have good documentation about:
- Whether or not you need to worry - either by examining LuCi or by 
examining /etc/config/network
- How you make the transition from swconfig to DSA
- How you recover if you made the switch and now want to get back to 
the same configuration

>> 3) Is there any OpenWrt document that describes how DSA affects the files in 
>> /etc/config and how it affects LuCI? Do we need to worry that a bunch of 
>> people will glibly upgrade, then be knocked off the air?
> 
> Rafał created this forum post:
> https://forum.openwrt.org/t/mini-tutorial-for-dsa-network-config/96998
> 
> It would be nice if someone could create a wiki page based on this.

Maybe something like this? 
https://openwrt.org/playground/richb/dsa-mini-tutorial

It would be really great if Rafał (and others) could review the words on this 
page ASAP to make sure that a) I copy/pasted it correctly, and b) that the text 
is still correct.

Thanks.

Rich



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