nodewatcher: Fix leftover use of batman-adv DEBUGFS

Submitted by Adrian Schmutzler on July 28, 2019, 7:59 p.m.

Details

Message ID 20190728195955.62582-1-freifunk@adrianschmutzler.de
State Accepted
Headers show

Commit Message

Adrian Schmutzler July 28, 2019, 7:59 p.m.
In d9ec8edb15941 ("batman-adv: Move from DEBUGFS to batctl") we
switched from deprecated DEBUGFS to batctl.

This patch fixes a reference to iface_status which has been
overlooked.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
---
 src/packages/fff/fff-nodewatcher/Makefile                | 2 +-
 .../fff/fff-nodewatcher/files/usr/sbin/nodewatcher       | 9 ++++-----
 2 files changed, 5 insertions(+), 6 deletions(-)

Patch hide | download patch | download mbox

diff --git a/src/packages/fff/fff-nodewatcher/Makefile b/src/packages/fff/fff-nodewatcher/Makefile
index a5551e04..be5f267a 100644
--- a/src/packages/fff/fff-nodewatcher/Makefile
+++ b/src/packages/fff/fff-nodewatcher/Makefile
@@ -1,7 +1,7 @@ 
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=fff-nodewatcher
-PKG_RELEASE:=53
+PKG_RELEASE:=54
 
 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)
 
diff --git a/src/packages/fff/fff-nodewatcher/files/usr/sbin/nodewatcher b/src/packages/fff/fff-nodewatcher/files/usr/sbin/nodewatcher
index 90509ba1..09f6843d 100755
--- a/src/packages/fff/fff-nodewatcher/files/usr/sbin/nodewatcher
+++ b/src/packages/fff/fff-nodewatcher/files/usr/sbin/nodewatcher
@@ -12,7 +12,7 @@  if ! lock -n "$lockfile"; then
 fi
 trap "lock -u \"$lockfile\"" INT TERM EXIT
 
-SCRIPT_VERSION="53"
+SCRIPT_VERSION="54"
 
 #Get the configuration from the uci configuration file
 #If it does not exists, then get it from a normal bash file with variables.
@@ -219,10 +219,9 @@  crawl() {
     err "$(date): Collecting information from batman advanced and its interfaces"
     #B.A.T.M.A.N. advanced
     if [ -f /sys/module/batman_adv/version ]; then
-        for iface in $(grep active /sys/class/net/*/batman_adv/iface_status); do
-            status=${iface#*:}
-            iface=${iface%/batman_adv/iface_status:active}
-            iface=${iface#/sys/class/net/}
+        for iface in $(batctl if | sed 's/ //'); do
+            status=${iface##*:}
+            iface=${iface%%:*}
             BATMAN_ADV_INTERFACES=$BATMAN_ADV_INTERFACES"<$iface><name>$iface</name><status>$status</status></$iface>"
         done
 

Comments

Robert Langhammer July 29, 2019, 7:40 a.m.
Hallo Adrian,

das kommt nicht aus debugfs sondern sysfs und bleibt uns erhalten.

batman debugfs: /sys/kernel/debug/batman_adv/

Grüße Robert


Am 28.07.19 um 21:59 schrieb Adrian Schmutzler:
> In d9ec8edb15941 ("batman-adv: Move from DEBUGFS to batctl") we
> switched from deprecated DEBUGFS to batctl.
>
> This patch fixes a reference to iface_status which has been
> overlooked.
>
> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
> ---
>  src/packages/fff/fff-nodewatcher/Makefile                | 2 +-
>  .../fff/fff-nodewatcher/files/usr/sbin/nodewatcher       | 9 ++++-----
>  2 files changed, 5 insertions(+), 6 deletions(-)
>
> diff --git a/src/packages/fff/fff-nodewatcher/Makefile b/src/packages/fff/fff-nodewatcher/Makefile
> index a5551e04..be5f267a 100644
> --- a/src/packages/fff/fff-nodewatcher/Makefile
> +++ b/src/packages/fff/fff-nodewatcher/Makefile
> @@ -1,7 +1,7 @@
>  include $(TOPDIR)/rules.mk
>  
>  PKG_NAME:=fff-nodewatcher
> -PKG_RELEASE:=53
> +PKG_RELEASE:=54
>  
>  PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)
>  
> diff --git a/src/packages/fff/fff-nodewatcher/files/usr/sbin/nodewatcher b/src/packages/fff/fff-nodewatcher/files/usr/sbin/nodewatcher
> index 90509ba1..09f6843d 100755
> --- a/src/packages/fff/fff-nodewatcher/files/usr/sbin/nodewatcher
> +++ b/src/packages/fff/fff-nodewatcher/files/usr/sbin/nodewatcher
> @@ -12,7 +12,7 @@ if ! lock -n "$lockfile"; then
>  fi
>  trap "lock -u \"$lockfile\"" INT TERM EXIT
>  
> -SCRIPT_VERSION="53"
> +SCRIPT_VERSION="54"
>  
>  #Get the configuration from the uci configuration file
>  #If it does not exists, then get it from a normal bash file with variables.
> @@ -219,10 +219,9 @@ crawl() {
>      err "$(date): Collecting information from batman advanced and its interfaces"
>      #B.A.T.M.A.N. advanced
>      if [ -f /sys/module/batman_adv/version ]; then
> -        for iface in $(grep active /sys/class/net/*/batman_adv/iface_status); do
> -            status=${iface#*:}
> -            iface=${iface%/batman_adv/iface_status:active}
> -            iface=${iface#/sys/class/net/}
> +        for iface in $(batctl if | sed 's/ //'); do
> +            status=${iface##*:}
> +            iface=${iface%%:*}
>              BATMAN_ADV_INTERFACES=$BATMAN_ADV_INTERFACES"<$iface><name>$iface</name><status>$status</status></$iface>"
>          done
>
Adrian Schmutzler July 29, 2019, 12:10 p.m.
Hallo Robert,

du hast zwar Recht, scheinbar ist aber auch das sysfs deprecated:

Fri Jul 26 22:05:03 2019 kern.warn kernel: [ 1044.625039] batman_adv: [Deprecated]: grep (pid 4371) Use of sysfs file "iface_status".
Fri Jul 26 22:05:03 2019 kern.warn kernel: [ 1044.625039] Use batadv genl family instead
Fri Jul 26 22:05:10 2019 kern.warn kernel: [ 1044.638822] batman_adv: [Deprecated]: grep (pid 4371) Use of sysfs file "iface_status".
Fri Jul 26 22:05:10 2019 kern.warn kernel: [ 1044.638822] Use batadv genl family instead

(Kommt bei Firmware mit openwrt-19.07).

So gesehen ist nur die Commit Message falsch ;-)

Grüße

Adrian

> -----Original Message-----
> From: franken-dev [mailto:franken-dev-bounces@freifunk.net] On Behalf Of
> robert
> Sent: Montag, 29. Juli 2019 09:40
> To: franken-dev@freifunk.net
> Subject: Re: [PATCH] nodewatcher: Fix leftover use of batman-adv DEBUGFS
> 
> Hallo Adrian,
> 
> das kommt nicht aus debugfs sondern sysfs und bleibt uns erhalten.
> 
> batman debugfs: /sys/kernel/debug/batman_adv/
> 
> Grüße Robert
> 
> 
> Am 28.07.19 um 21:59 schrieb Adrian Schmutzler:
> > In d9ec8edb15941 ("batman-adv: Move from DEBUGFS to batctl") we
> > switched from deprecated DEBUGFS to batctl.
> >
> > This patch fixes a reference to iface_status which has been
> > overlooked.
> >
> > Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
> > ---
> >  src/packages/fff/fff-nodewatcher/Makefile                | 2 +-
> >  .../fff/fff-nodewatcher/files/usr/sbin/nodewatcher       | 9 ++++-----
> >  2 files changed, 5 insertions(+), 6 deletions(-)
> >
> > diff --git a/src/packages/fff/fff-nodewatcher/Makefile b/src/packages/fff/fff-
> nodewatcher/Makefile
> > index a5551e04..be5f267a 100644
> > --- a/src/packages/fff/fff-nodewatcher/Makefile
> > +++ b/src/packages/fff/fff-nodewatcher/Makefile
> > @@ -1,7 +1,7 @@
> >  include $(TOPDIR)/rules.mk
> >
> >  PKG_NAME:=fff-nodewatcher
> > -PKG_RELEASE:=53
> > +PKG_RELEASE:=54
> >
> >  PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)
> >
> > diff --git a/src/packages/fff/fff-nodewatcher/files/usr/sbin/nodewatcher
> b/src/packages/fff/fff-nodewatcher/files/usr/sbin/nodewatcher
> > index 90509ba1..09f6843d 100755
> > --- a/src/packages/fff/fff-nodewatcher/files/usr/sbin/nodewatcher
> > +++ b/src/packages/fff/fff-nodewatcher/files/usr/sbin/nodewatcher
> > @@ -12,7 +12,7 @@ if ! lock -n "$lockfile"; then
> >  fi
> >  trap "lock -u \"$lockfile\"" INT TERM EXIT
> >
> > -SCRIPT_VERSION="53"
> > +SCRIPT_VERSION="54"
> >
> >  #Get the configuration from the uci configuration file
> >  #If it does not exists, then get it from a normal bash file with variables.
> > @@ -219,10 +219,9 @@ crawl() {
> >      err "$(date): Collecting information from batman advanced and its
> interfaces"
> >      #B.A.T.M.A.N. advanced
> >      if [ -f /sys/module/batman_adv/version ]; then
> > -        for iface in $(grep active /sys/class/net/*/batman_adv/iface_status); do
> > -            status=${iface#*:}
> > -            iface=${iface%/batman_adv/iface_status:active}
> > -            iface=${iface#/sys/class/net/}
> > +        for iface in $(batctl if | sed 's/ //'); do
> > +            status=${iface##*:}
> > +            iface=${iface%%:*}
> >
> BATMAN_ADV_INTERFACES=$BATMAN_ADV_INTERFACES"<$iface><name>$if
> ace</name><status>$status</status></$iface>"
> >          done
> >
Robert Langhammer July 30, 2019, 6:59 a.m.
Hallo Adrian,

tatsächlich, sysfs ist jetzt optional. https://www.open-mesh.org/news/90

Reviewed-by: Robert Langhammer <rlanghammer@web.de>

Grüße

Robert

Am 29.07.19 um 14:10 schrieb Adrian Schmutzler:
> Hallo Robert,
>
> du hast zwar Recht, scheinbar ist aber auch das sysfs deprecated:
>
> Fri Jul 26 22:05:03 2019 kern.warn kernel: [ 1044.625039] batman_adv: [Deprecated]: grep (pid 4371) Use of sysfs file "iface_status".
> Fri Jul 26 22:05:03 2019 kern.warn kernel: [ 1044.625039] Use batadv genl family instead
> Fri Jul 26 22:05:10 2019 kern.warn kernel: [ 1044.638822] batman_adv: [Deprecated]: grep (pid 4371) Use of sysfs file "iface_status".
> Fri Jul 26 22:05:10 2019 kern.warn kernel: [ 1044.638822] Use batadv genl family instead
>
> (Kommt bei Firmware mit openwrt-19.07).
>
> So gesehen ist nur die Commit Message falsch ;-)
>
> Grüße
>
> Adrian
>
>> -----Original Message-----
>> From: franken-dev [mailto:franken-dev-bounces@freifunk.net] On Behalf Of
>> robert
>> Sent: Montag, 29. Juli 2019 09:40
>> To: franken-dev@freifunk.net
>> Subject: Re: [PATCH] nodewatcher: Fix leftover use of batman-adv DEBUGFS
>>
>> Hallo Adrian,
>>
>> das kommt nicht aus debugfs sondern sysfs und bleibt uns erhalten.
>>
>> batman debugfs: /sys/kernel/debug/batman_adv/
>>
>> Grüße Robert
>>
>>
>> Am 28.07.19 um 21:59 schrieb Adrian Schmutzler:
>>> In d9ec8edb15941 ("batman-adv: Move from DEBUGFS to batctl") we
>>> switched from deprecated DEBUGFS to batctl.
>>>
>>> This patch fixes a reference to iface_status which has been
>>> overlooked.
>>>
>>> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
>>> ---
>>>  src/packages/fff/fff-nodewatcher/Makefile                | 2 +-
>>>  .../fff/fff-nodewatcher/files/usr/sbin/nodewatcher       | 9 ++++-----
>>>  2 files changed, 5 insertions(+), 6 deletions(-)
>>>
>>> diff --git a/src/packages/fff/fff-nodewatcher/Makefile b/src/packages/fff/fff-
>> nodewatcher/Makefile
>>> index a5551e04..be5f267a 100644
>>> --- a/src/packages/fff/fff-nodewatcher/Makefile
>>> +++ b/src/packages/fff/fff-nodewatcher/Makefile
>>> @@ -1,7 +1,7 @@
>>>  include $(TOPDIR)/rules.mk
>>>
>>>  PKG_NAME:=fff-nodewatcher
>>> -PKG_RELEASE:=53
>>> +PKG_RELEASE:=54
>>>
>>>  PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)
>>>
>>> diff --git a/src/packages/fff/fff-nodewatcher/files/usr/sbin/nodewatcher
>> b/src/packages/fff/fff-nodewatcher/files/usr/sbin/nodewatcher
>>> index 90509ba1..09f6843d 100755
>>> --- a/src/packages/fff/fff-nodewatcher/files/usr/sbin/nodewatcher
>>> +++ b/src/packages/fff/fff-nodewatcher/files/usr/sbin/nodewatcher
>>> @@ -12,7 +12,7 @@ if ! lock -n "$lockfile"; then
>>>  fi
>>>  trap "lock -u \"$lockfile\"" INT TERM EXIT
>>>
>>> -SCRIPT_VERSION="53"
>>> +SCRIPT_VERSION="54"
>>>
>>>  #Get the configuration from the uci configuration file
>>>  #If it does not exists, then get it from a normal bash file with variables.
>>> @@ -219,10 +219,9 @@ crawl() {
>>>      err "$(date): Collecting information from batman advanced and its
>> interfaces"
>>>      #B.A.T.M.A.N. advanced
>>>      if [ -f /sys/module/batman_adv/version ]; then
>>> -        for iface in $(grep active /sys/class/net/*/batman_adv/iface_status); do
>>> -            status=${iface#*:}
>>> -            iface=${iface%/batman_adv/iface_status:active}
>>> -            iface=${iface#/sys/class/net/}
>>> +        for iface in $(batctl if | sed 's/ //'); do
>>> +            status=${iface##*:}
>>> +            iface=${iface%%:*}
>>>
>> BATMAN_ADV_INTERFACES=$BATMAN_ADV_INTERFACES"<$iface><name>$if
>> ace</name><status>$status</status></$iface>"
>>>          done
>>>
Adrian Schmutzler Aug. 21, 2019, 4:22 p.m.
Mit aktualisierter Commit message applied.