[openwrt/openwrt] ltq-vdsl-vr9-app: skip invalid line status values

LEDE Commits lede-commits at lists.infradead.org
Sun Oct 30 16:36:23 PDT 2022


hauke pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/5787e0c9fe0ae218f745ea5dcf30e20cc028842e

commit 5787e0c9fe0ae218f745ea5dcf30e20cc028842e
Author: Roland Barenbrug <roland at treslong.com>
AuthorDate: Wed Aug 10 20:46:02 2022 +0200

    ltq-vdsl-vr9-app: skip invalid line status values
    
    DSL_G997_LineStatusData_t defines special invalid values, skip these
    metrics.
    
    Signed-off-by: Roland Barenbrug <roland at treslong.com>
    [split patch]
    Signed-off-by: Andre Heider <a.heider at gmail.com>
---
 .../config/ltq-vdsl-vr9-app/src/src/dsl_cpe_ubus.c       | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

diff --git a/package/network/config/ltq-vdsl-vr9-app/src/src/dsl_cpe_ubus.c b/package/network/config/ltq-vdsl-vr9-app/src/src/dsl_cpe_ubus.c
index 61ac7708ba..a45cb8ea0f 100644
--- a/package/network/config/ltq-vdsl-vr9-app/src/src/dsl_cpe_ubus.c
+++ b/package/network/config/ltq-vdsl-vr9-app/src/src/dsl_cpe_ubus.c
@@ -153,8 +153,9 @@ static inline void m_str(const char *id, const char *value) {
 	blobmsg_add_string(&b, id, value);
 }
 
-static inline void m_db(const char *id, int value) {
-	m_double(id, (double)value / 10);
+static inline void m_db(const char *id, int value, int invalid) {
+	if (value != invalid)
+		m_double(id, (double)value / 10);
 }
 
 static inline void m_array(const char *id, const uint8_t *value, uint8_t len) {
@@ -595,11 +596,12 @@ static void g997_channel_status(int fd, DSL_AccessDir_t direction) {
 static void g997_line_status(int fd, DSL_AccessDir_t direction) {
 	IOCTL_DIR_DELT(DSL_G997_LineStatus_t, DSL_FIO_G997_LINE_STATUS_GET, direction, DSL_DELT_DATA_SHOWTIME);
 
-	m_db("latn", out.data.LATN);
-	m_db("satn", out.data.SATN);
-	m_db("snr", out.data.SNR);
-	m_db("actps", out.data.ACTPS);
-	m_db("actatp", out.data.ACTATP);
+	// invalid value indicators taken from drv_dsl_cpe_api_g997.h
+	m_db("latn", out.data.LATN, 1271);
+	m_db("satn", out.data.SATN, 1271);
+	m_db("snr", out.data.SNR, -641);
+	m_db("actps", out.data.ACTPS, -901);
+	m_db("actatp", out.data.ACTATP, -512);
 	m_u32("attndr", out.data.ATTNDR);
 }
 




More information about the lede-commits mailing list