[PATCH 2/2] ltq-vdsl-vr11-app: exit more quickly if orderly shutdown fails

Jan Hoffmann jan at 3e8.eu
Thu Jan 30 02:19:30 PST 2025


On exit, the app tries to do an orderly shutdown of the DSL connection
before it is stopped forcibly. Since the driver does 3 attempts with a
timeout of 2 seconds each, this might take about 6 seconds in the worst
case.

This is problematic on sysupgrade, because any process that doesn't exit
within 4 seconds is killed. This means that the DSL connection might not
be stopped at all before the actual system upgrade begins.

To avoid this, use the newly added option in the driver to not retry the
L3 request on failure.

Signed-off-by: Jan Hoffmann <jan at 3e8.eu>
---
 package/network/config/ltq-vdsl-vr11-app/Makefile               | 2 +-
 .../config/ltq-vdsl-vr11-app/patches/201-orderly-shutdown.patch | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/network/config/ltq-vdsl-vr11-app/Makefile b/package/network/config/ltq-vdsl-vr11-app/Makefile
index f1782db285c0..2aacbbd78510 100644
--- a/package/network/config/ltq-vdsl-vr11-app/Makefile
+++ b/package/network/config/ltq-vdsl-vr11-app/Makefile
@@ -9,7 +9,7 @@ include $(INCLUDE_DIR)/kernel.mk
 
 PKG_NAME:=ltq-vdsl-vr11-app
 PKG_VERSION:=4.23.1
-PKG_RELEASE:=5
+PKG_RELEASE:=6
 PKG_BASE_NAME:=dsl_cpe_control
 
 UGW_VERSION=8.5.2.10
diff --git a/package/network/config/ltq-vdsl-vr11-app/patches/201-orderly-shutdown.patch b/package/network/config/ltq-vdsl-vr11-app/patches/201-orderly-shutdown.patch
index eabeaaedcb9a..201b963fa0a1 100644
--- a/package/network/config/ltq-vdsl-vr11-app/patches/201-orderly-shutdown.patch
+++ b/package/network/config/ltq-vdsl-vr11-app/patches/201-orderly-shutdown.patch
@@ -45,7 +45,7 @@ is stopped on exit.
     {
 +      memset(&sPowerManagementStateForcedTrigger, 0x0,
 +         sizeof(DSL_G997_PowerManagementStateForcedTrigger_t));
-+      sPowerManagementStateForcedTrigger.data.nPowerManagementState = DSL_G997_PMSF_LX_TO_L3;
++      sPowerManagementStateForcedTrigger.data.nPowerManagementState = DSL_G997_PMSF_LX_TO_L3_NO_RETRY;
 +
 +      nRet = (DSL_Error_t)DSL_CPE_Ioctl(
 +         DSL_CPE_GetGlobalContext()->fd[nDevice],
-- 
2.48.1




More information about the openwrt-devel mailing list