From 30911865b2791c1eb516559cfb414b17e2be5f64 Mon Sep 17 00:00:00 2001 From: Florian Eckert Date: Fri, 21 Jul 2023 12:56:34 +0200 Subject: [PATCH 1/2] modemmanager: do not set proto_notify_error on teardown If on teardown the 'proto_notify_error' is set to 'MM_TEARDOWN_IN_PROGRESS', then an error which is set on 'setup' is not visible in the ubus network.interface. status output. { "up": false, "pending": false, "available": true, "autostart": false, "dynamic": false, "proto": "modemmanager", "data": { }, "errors": [ { "subsystem": "dualsim", "code": "MM_TEARDOWN_IN_PROGRESS" } ] } It alway shows the code 'MM_TEARDWON_IN_PROGRESS'! By removing the line 'proto_notify_error "${interface}" MM_TEARDOWN_IN_PROGRESS' in teardown, the last error is show in the proto stack from setup. Signed-off-by: Florian Eckert --- net/modemmanager/Makefile | 2 +- net/modemmanager/files/modemmanager.proto | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/net/modemmanager/Makefile b/net/modemmanager/Makefile index aa141ad73..df2e1e71b 100644 --- a/net/modemmanager/Makefile +++ b/net/modemmanager/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=modemmanager PKG_SOURCE_VERSION:=1.20.6 -PKG_RELEASE:=4 +PKG_RELEASE:=5 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://gitlab.freedesktop.org/mobile-broadband/ModemManager.git diff --git a/net/modemmanager/files/modemmanager.proto b/net/modemmanager/files/modemmanager.proto index 239148798..d2483207f 100755 --- a/net/modemmanager/files/modemmanager.proto +++ b/net/modemmanager/files/modemmanager.proto @@ -505,7 +505,6 @@ proto_modemmanager_teardown() { json_get_vars device lowpower iptype echo "stopping network" - proto_notify_error "${interface}" MM_TEARDOWN_IN_PROGRESS # load connected bearer information, just the first one should be ok modemstatus=$(mmcli --modem="${device}" --output-keyvalue) From 2f00e4b8d7bde7dfeec970a5945ffd39a6f692c8 Mon Sep 17 00:00:00 2001 From: Florian Eckert Date: Fri, 21 Jul 2023 13:09:48 +0200 Subject: [PATCH 2/2] modemmanger: add missing proto_init_update in teardown Inform netifd with missing 'proto_update', that the interface is not up anymore. Signed-off-by: Florian Eckert --- net/modemmanager/Makefile | 2 +- net/modemmanager/files/modemmanager.proto | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/net/modemmanager/Makefile b/net/modemmanager/Makefile index df2e1e71b..0e69b1ccd 100644 --- a/net/modemmanager/Makefile +++ b/net/modemmanager/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=modemmanager PKG_SOURCE_VERSION:=1.20.6 -PKG_RELEASE:=5 +PKG_RELEASE:=6 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://gitlab.freedesktop.org/mobile-broadband/ModemManager.git diff --git a/net/modemmanager/files/modemmanager.proto b/net/modemmanager/files/modemmanager.proto index d2483207f..a3b7785de 100755 --- a/net/modemmanager/files/modemmanager.proto +++ b/net/modemmanager/files/modemmanager.proto @@ -539,6 +539,9 @@ proto_modemmanager_teardown() { # low power, only if requested [ "${lowpower:-0}" -lt 1 ] || mmcli --modem="${device}" --set-power-state-low + + proto_init_update "*" 0 + proto_send_update "$interface" } [ -n "$INCLUDE_ONLY" ] || {