ltq-vdsl-app: add error vector counters to the ubus metrics
These are useful stats to debug vector related line deteriorations, see [0]. Example output: "erb": { "sent": 169925, "discarded": 0 } [0] https://forum.openwrt.org/t/vectoring-on-lantiq-vrx200-vr9-missing-callback-for-sending-error-samples/104046 Signed-off-by: Andre Heider <a.heider@gmail.com>
This commit is contained in:
parent
276c80bdc0
commit
70729d3454
|
@ -502,6 +502,18 @@ static void get_vector_status(int fd, vector_t *status) {
|
|||
#endif
|
||||
}
|
||||
|
||||
static void vector_erb(int fd) {
|
||||
#ifdef INCLUDE_DSL_CPE_API_VRX
|
||||
if (fd < 0)
|
||||
return;
|
||||
|
||||
IOCTL(IOCTL_MEI_dsmStatistics_t, FIO_MEI_DSM_STATISTICS_GET);
|
||||
|
||||
m_u32("sent", out.n_processed);
|
||||
m_u32("discarded", out.n_fw_dropped_size + out.n_mei_dropped_size + out.n_mei_dropped_no_pp_cb + out.n_pp_dropped);
|
||||
#endif
|
||||
}
|
||||
|
||||
static void band_plan_status(int fd, profile_t *profile) {
|
||||
#if (INCLUDE_DSL_CPE_API_VDSL_SUPPORT == 1)
|
||||
IOCTL(DSL_BandPlanStatus_t, DSL_FIO_BAND_PLAN_STATUS_GET)
|
||||
|
@ -803,6 +815,17 @@ static int metrics(struct ubus_context *ctx, struct ubus_object *obj,
|
|||
blobmsg_close_table(&b, c2);
|
||||
blobmsg_close_table(&b, c);
|
||||
|
||||
switch (vector) {
|
||||
case VECTOR_ON_DS:
|
||||
case VECTOR_ON_DS_US:
|
||||
c = blobmsg_open_table(&b, "erb");
|
||||
vector_erb(fd_mei);
|
||||
blobmsg_close_table(&b, c);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
};
|
||||
|
||||
ubus_send_reply(ctx, req, b.head);
|
||||
|
||||
if (fd_mei >= 0)
|
||||
|
|
Loading…
Reference in New Issue