Hi, > -----Original Message----- > From: openwrt-devel [mailto:openwrt-devel-boun...@lists.openwrt.org] > On Behalf Of Andre Heider > Sent: Freitag, 4. Dezember 2020 08:44 > To: openwrt-devel@lists.openwrt.org > Subject: [PATCH] ltq-dsl-base: only lock the dsl pipe once for all stats > > Instead of locking/unlocking it for every command.
please bump PKG_RELEASE. Best Adrian > > Reduces the runtime for the dslstat/lucistat commands to ~66%. > > Before: > real 0m 2.66s > user 0m 0.90s > sys 0m 1.76s > > After: > real 0m 1.76s > user 0m 0.63s > sys 0m 1.13s > > Signed-off-by: Andre Heider <a.hei...@gmail.com> > --- > .../files/lib/functions/lantiq_dsl.sh | 21 +++++++++++++------ > 1 file changed, 15 insertions(+), 6 deletions(-) > > diff --git a/package/network/utils/ltq-dsl- > base/files/lib/functions/lantiq_dsl.sh b/package/network/utils/ltq-dsl- > base/files/lib/functions/lantiq_dsl.sh > index 39011f134f..89dc5c25c9 100755 > --- a/package/network/utils/ltq-dsl-base/files/lib/functions/lantiq_dsl.sh > +++ b/package/network/utils/ltq-dsl-base/files/lib/functions/lantiq_dsl. > +++ sh > @@ -7,16 +7,24 @@ else > XDSL_CTRL=dsl_cpe_control > fi > > +DSL_PIPE_LOCKED=0 > + > # > # Basic functions to send CLI commands to the vdsl_cpe_control daemon # > +dsl_init() { > + killall -q -0 ${XDSL_CTRL} && lock /var/lock/dsl_pipe && > DSL_PIPE_LOCKED=1 > + trap dsl_deinit EXIT INT KILL TERM > +} > +dsl_deinit() { > + test $DSL_PIPE_LOCKED -gt 0 && lock -u /var/lock/dsl_pipe && > DSL_PIPE_LOCKED=0 > + exit > +} > dsl_cmd() { > - killall -q -0 ${XDSL_CTRL} && ( > - lock /var/lock/dsl_pipe > - echo "$@" > /tmp/pipe/dsl_cpe0_cmd > - cat /tmp/pipe/dsl_cpe0_ack > - lock -u /var/lock/dsl_pipe > - ) > + test $DSL_PIPE_LOCKED -eq 0 && return > + > + echo "$@" > /tmp/pipe/dsl_cpe0_cmd > + cat /tmp/pipe/dsl_cpe0_ack > } > dsl_val() { > expr "$1" : '.*'$2'=\([-\.[:alnum:]]*\).*' > @@ -783,6 +791,7 @@ line_features() { > } > > dslstat() { > + dsl_init > vendor > chipset > xtse > -- > 2.29.2 > > > _______________________________________________ > openwrt-devel mailing list > openwrt-devel@lists.openwrt.org > https://lists.openwrt.org/mailman/listinfo/openwrt-devel
openpgp-digital-signature.asc
Description: PGP signature
_______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel