mirror of
https://gitea.osmocom.org/cellular-infrastructure/osmo-trx.git
synced 2025-11-03 05:33:16 +00:00
After discussion in [1] and further look at the code, it became obvios
rx_underrun events are not happening in general for any SDR (don't
exist), so let's drop that counter. Instead, add Tx Dropped Packet counters,
which were not accounted prior to this commit.
[1] bde55afd29
Change-Id: Iff1535c219a4695a511d383d7c4b06ef6eff959d
58 lines
1.7 KiB
C
58 lines
1.7 KiB
C
/* Generic signalling/notification infrastructure */
|
|
/* (C) 2018 by sysmocom s.f.m.c. GmbH <info@sysmocom.de>
|
|
*
|
|
* Author: Pau Espin Pedrol <pespin@sysmocom.de>
|
|
*
|
|
* All Rights Reserved
|
|
*
|
|
* SPDX-License-Identifier: AGPL-3.0+
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU Affero General Public License as published by
|
|
* the Free Software Foundation; either version 3 of the License, or
|
|
* (at your option) any later version.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU Affero General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU Affero General Public License
|
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
*
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include <osmocom/core/signal.h>
|
|
|
|
/* Signalling subsystems */
|
|
enum signal_subsystems {
|
|
SS_MAIN,
|
|
SS_DEVICE,
|
|
};
|
|
|
|
/* SS_MAIN signals */
|
|
enum SS_MAIN {
|
|
S_MAIN_STOP_REQUIRED, /* TRX fatal error, it should be stopped */
|
|
};
|
|
|
|
/* SS_DEVICE signals */
|
|
enum SS_DEVICE {
|
|
/* Device internal counters changed. Counters are provided as cb data
|
|
(struct device_counters). Must be sent with PTHREAD_CANCEL_DISABLE
|
|
to avoid deadlocks in case osmo-trx process is asked to exit. */
|
|
S_DEVICE_COUNTER_CHANGE,
|
|
};
|
|
|
|
/* signal cb for signal <SS_DEVICE,S_DEVICE_COUNTER_CHANGE> */
|
|
struct device_counters {
|
|
size_t chan;
|
|
unsigned int rx_overruns;
|
|
unsigned int tx_underruns;
|
|
unsigned int rx_dropped_events;
|
|
unsigned int rx_dropped_samples;
|
|
unsigned int tx_dropped_events;
|
|
unsigned int tx_dropped_samples;
|
|
};
|