public inbox for b.a.t.m.a.n@lists.open-mesh.org
 help / color / mirror / Atom feed
From: Marek Lindner <lindner_marek@yahoo.de>
To: b.a.t.m.a.n@lists.open-mesh.org, gregkh@suse.de
Cc: Greg KH <greg@kroah.com>, b.a.t.m.a.n@lists.open-mesh.net
Subject: Re: [B.A.T.M.A.N.] [PATCH 13/26] staging:batman-adv: convert multiple /proc files to use sysfs
Date: Thu, 13 May 2010 01:19:38 +0800	[thread overview]
Message-ID: <201005130119.39204.lindner_marek@yahoo.de> (raw)
In-Reply-To: <20100506204133.GA19717@kroah.com>

[-- Attachment #1: Type: Text/Plain, Size: 1702 bytes --]


Hi Greg,

> Please document all sysfs files with a Documentation/ABI/ entry.  You
> can put it in the drivers/staging/batman-adv/ directory for now.
> 
> Also note, binary sysfs files are for things that are "pass-through",
> not for things that you try to intrepret like I think you are doing
> here.  What's wrong with configfs for something like this?

I drafted the ABI documentation which you will find attached to this mail. 
Since this is my very first attempt I'd appreciate feedback from your side 
before we submit it. I looked at various existing ABI docs in the linux kernel 
tree to get an idea how it should look like. Bear with me if it is not perfect 
yet.  ;-)

Regarding the question which kernel configuration interface to use, we would be 
more than happy to receive some guidance. At this point we are rather unsure 
which of the many (procfs/sysfs/configfs/etc) filesystems are we supposed to go 
forward with. To better judge our case I recommend reading this page
http://www.open-mesh.org/wiki/tweaking-batman-adv
as it explains the purpose of the various sysfs files.

Right now, I would say that configfs does not belong to my favorite solutions, 
simply because it seems to be a rather new/uncommon choice. Batman's main 
deployment field are embedded devices (mostly low cost routers) that have quite 
some contraints regarding cpu power and available disk space. Typically, those 
systems try to deactivate all "unnecessary" functionality in the kernel to 
have a few more bytes available for other stuff. For example OpenWRT: They 
deactivated configfs on all platforms (except one). I fear we create more 
problems than we solve if we go down this path.

Cheers,
Marek


[-- Attachment #2: sysfs-class-net-batman-adv --]
[-- Type: text/plain, Size: 565 bytes --]


What:           /sys/class/net/<iface>/batman-adv/mesh_iface
Date:           May 2010
Contact:        Marek Lindner <lindner_marek@yahoo.de>
Description:
                The /sys/class/net/<iface>/batman-adv/mesh_iface file
                displays the batman mesh interface this <iface>
                currently is associated with.

What:           /sys/class/net/<iface>/batman-adv/iface_status
Date:           May 2010
Contact:        Marek Lindner <lindner_marek@yahoo.de>
Description:
                Indicates the status of <iface> as it is seen by batman.

[-- Attachment #3: sysfs-class-net-mesh --]
[-- Type: text/plain, Size: 3671 bytes --]


What:           /sys/class/net/<mesh_iface>/mesh/aggregate_ogm
Date:           May 2010
Contact:        Marek Lindner <lindner_marek@yahoo.de>
Description:
                Indicates whether the batman protocol messages of the
                mesh <mesh_iface> shall be aggregated or not.

What:           /sys/class/net/<mesh_iface>/mesh/orig_interval
Date:           May 2010
Contact:        Marek Lindner <lindner_marek@yahoo.de>
Description:
                Defines the interval in milliseconds in which batman
                sends its protocol messages.

What:           /sys/class/net/<mesh_iface>/mesh/originators
Date:           May 2010
Contact:        Marek Lindner <lindner_marek@yahoo.de>
Description:
                Displays the table of all batman nodes (in range) and
                the link quality towards them. Each line contains the
                following values:
                  1 - originator
                  2 - TQ (transmit quality) value of originator
                  3 - best next hop towards originator
                  4 - outgoing iface to reach best next hop
                  5 - list of alternative best next hops

What:           /sys/class/net/<mesh_iface>/mesh/transtable_global
Date:           May 2010
Contact:        Marek Lindner <lindner_marek@yahoo.de>
Description:
                Displays the table of mesh-wide announced mac
                addresses. Each line contains the following values:
                  1 - announced mac address
                  2 - originator announcing the mac address

What:           /sys/class/net/<mesh_iface>/mesh/transtable_local
Date:           May 2010
Contact:        Marek Lindner <lindner_marek@yahoo.de>
Description:
                Displays the table of mac addresses announced to the
                mesh network by this node. Each line contains the
                following values:
                  1 - announced mac address

What:           /sys/class/net/<mesh_iface>/mesh/vis_mode
Date:           May 2010
Contact:        Marek Lindner <lindner_marek@yahoo.de>
Description:
                Each batman node only maintains information about its
                own local neighborhood, therefore generating graphs
                showing the topology of the entire mesh is not easily
                feasible without having a central instance to collect
                the local topologies from all nodes. This file allows
                to activate the collecting (server) mode. Once
                activated the topology can be retrieved by reading
                the vis_data file.

What:           /sys/class/net/<mesh_iface>/mesh/vis_data
Date:           May 2010
Contact:        Marek Lindner <lindner_marek@yahoo.de>
Description:
                This file outputs the collected entire mesh topology
                information (if available) in a neutral (raw) format.
                Each line contains a set of identifiers. Values may
                or may not follow depending on their respective
                meanings:
                 * "mac" - mac address of an originator's source
                           interface (each line begins with it)
                 * "TQ mac  value" - src mac's link quality towards
                                     mac address of a neighbor
                                     originator's interface which is
                                     being used for routing
                 * "HNA mac" - HNA announced by source mac
                 * "PRIMARY" - this  is a primary interface
                 * "SEC mac" - secondary mac address of source
                               (requires preceding PRIMARY)

  reply	other threads:[~2010-05-12 17:19 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-05-06 20:18 [B.A.T.M.A.N.] [PATCH 00/26] staging:batman-adv Andrew Lunn
2010-05-06 20:18 ` [B.A.T.M.A.N.] [PATCH 01/26] staging:batman-adv: only modify hna-table on active module Andrew Lunn
2010-05-06 20:18 ` [B.A.T.M.A.N.] [PATCH 02/26] staging:batman-adv: Clone shared bat packets before modifying them Andrew Lunn
2010-05-06 20:18 ` [B.A.T.M.A.N.] [PATCH 03/26] staging:batman-adv: fix aggregation timing bug Andrew Lunn
2010-05-06 20:18 ` [B.A.T.M.A.N.] [PATCH 04/26] staging:batman-adv: Fix aggregation direct-link bug Andrew Lunn
2010-05-06 20:18 ` [B.A.T.M.A.N.] [PATCH 05/26] staging:batman-adv: Update copyright years Andrew Lunn
2010-05-06 20:18 ` [B.A.T.M.A.N.] [PATCH 06/26] staging:batman-adv: remove the beta from main.h for release Andrew Lunn
2010-05-06 20:18 ` [B.A.T.M.A.N.] [PATCH 07/26] staging:batman-adv: Remove dead max addr and obsolete VIS_FORMAT strings Andrew Lunn
2010-05-06 20:18 ` [B.A.T.M.A.N.] [PATCH 08/26] staging:batman-adv: Add 0.2.1 changes to the CHANGELOG Andrew Lunn
2010-05-06 20:18 ` [B.A.T.M.A.N.] [PATCH 09/26] staging:batman-adv: Update README about vis raw output Andrew Lunn
2010-05-06 20:18 ` [B.A.T.M.A.N.] [PATCH 10/26] staging:batman-adv: Changing version to 0.2.2-beta Andrew Lunn
2010-05-06 20:18 ` [B.A.T.M.A.N.] [PATCH 11/26] staging:batman-adv: cleanup: change test for end of array Andrew Lunn
2010-05-06 20:18 ` [B.A.T.M.A.N.] [PATCH 12/26] staging:batman-adv: fix whitespace style issues Andrew Lunn
2010-05-06 20:18 ` [B.A.T.M.A.N.] [PATCH 13/26] staging:batman-adv: convert multiple /proc files to use sysfs Andrew Lunn
2010-05-06 20:41   ` Greg KH
2010-05-12 17:19     ` Marek Lindner [this message]
2010-05-12 17:38       ` Greg KH
2010-05-12 18:55         ` Sven Eckelmann
2010-05-12 19:17           ` Greg KH
2010-05-12 23:51             ` Marek Lindner
2010-05-14 16:10               ` Greg KH
2010-05-13 11:45           ` Andrew Lunn
2010-05-16 13:18             ` Simon Wunderlich
2010-05-12 23:25         ` Marek Lindner
2010-05-12 19:43       ` Andrew Lunn
2010-05-12 19:47         ` Sven Eckelmann
2010-05-06 20:18 ` [B.A.T.M.A.N.] [PATCH 14/26] staging:batman-adv: convert more files from /proc to /sys Andrew Lunn
2010-05-06 20:18 ` [B.A.T.M.A.N.] [PATCH 15/26] staging:batman-adv: move originator interval setting " Andrew Lunn
2010-05-06 20:18 ` [B.A.T.M.A.N.] [PATCH 16/26] staging:batman-adv: remove redundant pointer to originator interface Andrew Lunn
2010-05-06 20:18 ` [B.A.T.M.A.N.] [PATCH 17/26] staging:batman-adv: move /proc interface handling to /sys Andrew Lunn
2010-05-06 20:18 ` [B.A.T.M.A.N.] [PATCH 18/26] staging:batman-adv: fix whitespace style issues Andrew Lunn
2010-05-06 20:18 ` [B.A.T.M.A.N.] [PATCH 19/26] staging:batman-adv: Reorganize sequence number handling Andrew Lunn
2010-05-06 20:18 ` [B.A.T.M.A.N.] [PATCH 20/26] staging:batman-adv: Limit queue lengths for batman and broadcast packets Andrew Lunn
2010-05-06 20:18 ` [B.A.T.M.A.N.] [PATCH 21/26] staging:batman-adv: kfree_skb() in interface_tx() in error case Andrew Lunn
2010-05-06 20:18 ` [B.A.T.M.A.N.] [PATCH 22/26] staging:batman-adv: Update pointer to ethhdr after skb_copy Andrew Lunn
2010-05-06 20:18 ` [B.A.T.M.A.N.] [PATCH 23/26] staging:batman-adv: Update TODO file to reflect current state Andrew Lunn
2010-05-06 20:18 ` [B.A.T.M.A.N.] [PATCH 24/26] staging:batman-adv: Fix whitespace problems criticized by checkpatch.pl Andrew Lunn
2010-05-06 20:18 ` [B.A.T.M.A.N.] [PATCH 25/26] staging:batman-adv: Reduce max characters on a line to 80 Andrew Lunn
2010-05-06 20:18 ` [B.A.T.M.A.N.] [PATCH 26/26] staging:batman-adv: updating README Andrew Lunn
2010-05-06 21:44 ` [B.A.T.M.A.N.] [PATCH 00/26] staging:batman-adv Sven Eckelmann
2010-05-07  3:14   ` Marek Lindner
2010-05-07 10:48     ` Sven Eckelmann
2010-05-07  5:25   ` Andrew Lunn
  -- strict thread matches above, loose matches on Subject: below --
2010-05-07 19:47 [B.A.T.M.A.N.] [PATCH 00/26] Staging: batman-adv: linux-next Andrew Lunn
2010-05-07 19:47 ` [B.A.T.M.A.N.] [PATCH 13/26] Staging: batman-adv: convert multiple /proc files to use sysfs Andrew Lunn

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=201005130119.39204.lindner_marek@yahoo.de \
    --to=lindner_marek@yahoo.de \
    --cc=b.a.t.m.a.n@lists.open-mesh.net \
    --cc=b.a.t.m.a.n@lists.open-mesh.org \
    --cc=greg@kroah.com \
    --cc=gregkh@suse.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox