b.a.t.m.a.n.lists.open-mesh.org archive mirror
 help / color / mirror / Atom feed
From: Antonio Quartulli <ordex@autistici.org>
To: davem@davemloft.net
Cc: netdev@vger.kernel.org, b.a.t.m.a.n@lists.open-mesh.org
Subject: [B.A.T.M.A.N.] pull request: batman-adv 2012-11-07
Date: Wed,  7 Nov 2012 20:11:30 +0100	[thread overview]
Message-ID: <1352315502-20324-1-git-send-email-ordex@autistici.org> (raw)

Hello David,

first of all thank you for having made us aware of the packet format problem in
batman-adv! The impact of __packed on performances was not entirely known to me,
in particular for what concerns the RISC arch.

We have to change a number of packet formats before we can remove __packed
everywhere which will obviously break compatibility.

However we already scheduled a compatibility break because we want to
heavily improve our packet formats and to provide a more flexible framework that
would allow us to add new types and features while reducing the probability of
breaking compatibility again and again as happened in the past (we are
implementing TypeLengthValue (TLV) containers among other things).

To avoid breaking compatibility (at least) twice we decided to fix now (in this
patchset) what is fixable with no consequences to compatibility while we would
ilike to defer the remaining changes for the scheduled compatibility break.

In this patchset you have the two new features intended for net-next/linux-3.8:
1) the new UNICAST_4ADDR packet type
2) the Distributed ARP Table (DAT) component

The new packet type has been reviewed to entirely address the alignment issue.
At the same time we also reviewed the other packet types but as I told you
before, we will send these changes later.

Other than that you have patch 02/12 that removes the __packed attribute from
the structures where it was not really needed.

Please, let me know if there is any problem.

Thank you very much,
		Antonio



The following changes since commit 6f0a0986e328dd61610d898a09c9f4aa960ae64a:

  usbnet: runtime wake up device before calling usbnet_{read|write}_cmd (2012-11-07 03:53:38 -0500)

are available in the git repository at:

  git://git.open-mesh.org/linux-merge.git tags/batman-adv-for-davem

for you to fetch changes up to 9affec6be810d1d529cb9dc95126119451696ba6:

  batman-adv: enable fast client detection using unicast_4addr packets (2012-11-07 20:00:24 +0100)

----------------------------------------------------------------
Included changes:
- minimal fixes to the packet layout to avoid the __packed attribute when not
  needed
- new packet type called UNICAST_4ADDR: in this packet it is possible to find
  both source and destination node (in the classic UNICAST header only the
  destination field exists).
- a new feature: Distributed ARP Table (D.A.T.). It aims to reduce ARP lookups
  latency by means of a simil-DHT approach.

----------------------------------------------------------------
Antonio Quartulli (9):
      batman-adv: add UNICAST_4ADDR packet type
      batman-adv: Distributed ARP Table - add a new debug log level
      batman-adv: Distributed ARP Table - create DHT helper functions
      batman-adv: Distributed ARP Table - implement local storage
      batman-adv: Distributed ARP Table - add ARP parsing functions
      batman-adv: Distributed ARP Table - add snooping functions for ARP messages
      batman-adv: Distributed ARP Table - add compile option
      batman-adv: Distributed ARP Table - add runtime switch
      batman-adv: enable fast client detection using unicast_4addr packets

Martin Hundebøll (1):
      batman-adv: Add get_ethtool_stats() support for DAT

Sven Eckelmann (2):
      batman-adv: Reserve extra bytes in skb for better alignment
      batman-adv: Mark correctly aligned headers not as __packed

 Documentation/networking/batman-adv.txt |    3 +-
 net/batman-adv/Kconfig                  |   10 +
 net/batman-adv/Makefile                 |    1 +
 net/batman-adv/bat_iv_ogm.c             |    8 +-
 net/batman-adv/debugfs.c                |   20 +
 net/batman-adv/distributed-arp-table.c  | 1066 +++++++++++++++++++++++++++++++
 net/batman-adv/distributed-arp-table.h  |  167 +++++
 net/batman-adv/hard-interface.c         |    3 +
 net/batman-adv/icmp_socket.c            |    4 +-
 net/batman-adv/main.c                   |    9 +
 net/batman-adv/main.h                   |   13 +-
 net/batman-adv/originator.c             |    2 +
 net/batman-adv/packet.h                 |   68 +-
 net/batman-adv/routing.c                |   51 +-
 net/batman-adv/send.c                   |    4 +
 net/batman-adv/soft-interface.c         |   28 +-
 net/batman-adv/sysfs.c                  |    7 +
 net/batman-adv/translation-table.c      |   20 +-
 net/batman-adv/types.h                  |   73 +++
 net/batman-adv/unicast.c                |  135 +++-
 net/batman-adv/unicast.h                |   36 +-
 net/batman-adv/vis.c                    |    9 +-
 22 files changed, 1682 insertions(+), 55 deletions(-)
 create mode 100644 net/batman-adv/distributed-arp-table.c
 create mode 100644 net/batman-adv/distributed-arp-table.h

             reply	other threads:[~2012-11-07 19:11 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-11-07 19:11 Antonio Quartulli [this message]
2012-11-07 19:11 ` [B.A.T.M.A.N.] [PATCH 01/12] batman-adv: Reserve extra bytes in skb for better alignment Antonio Quartulli
2012-11-07 19:11 ` [B.A.T.M.A.N.] [PATCH 02/12] batman-adv: Mark correctly aligned headers not as __packed Antonio Quartulli
2012-11-07 19:11 ` [B.A.T.M.A.N.] [PATCH 03/12] batman-adv: add UNICAST_4ADDR packet type Antonio Quartulli
2012-11-07 19:17   ` Sven Eckelmann
2012-11-07 19:25     ` Sven Eckelmann
2012-11-07 19:11 ` [B.A.T.M.A.N.] [PATCH 04/12] batman-adv: Distributed ARP Table - add a new debug log level Antonio Quartulli
2012-11-07 19:11 ` [B.A.T.M.A.N.] [PATCH 05/12] batman-adv: Distributed ARP Table - create DHT helper functions Antonio Quartulli
2012-11-07 19:11 ` [B.A.T.M.A.N.] [PATCH 06/12] batman-adv: Distributed ARP Table - implement local storage Antonio Quartulli
2012-11-07 19:11 ` [B.A.T.M.A.N.] [PATCH 07/12] batman-adv: Distributed ARP Table - add ARP parsing functions Antonio Quartulli
2012-11-07 19:11 ` [B.A.T.M.A.N.] [PATCH 08/12] batman-adv: Distributed ARP Table - add snooping functions for ARP messages Antonio Quartulli
2012-11-07 19:11 ` [B.A.T.M.A.N.] [PATCH 09/12] batman-adv: Distributed ARP Table - add compile option Antonio Quartulli
2012-11-07 19:11 ` [B.A.T.M.A.N.] [PATCH 10/12] batman-adv: Distributed ARP Table - add runtime switch Antonio Quartulli
2012-11-07 19:11 ` [B.A.T.M.A.N.] [PATCH 11/12] batman-adv: Add get_ethtool_stats() support for DAT Antonio Quartulli
2012-11-07 19:11 ` [B.A.T.M.A.N.] [PATCH 12/12] batman-adv: enable fast client detection using unicast_4addr packets Antonio Quartulli
2012-11-08  0:10 ` [B.A.T.M.A.N.] pull request: batman-adv 2012-11-07 David Miller

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=1352315502-20324-1-git-send-email-ordex@autistici.org \
    --to=ordex@autistici.org \
    --cc=b.a.t.m.a.n@lists.open-mesh.org \
    --cc=davem@davemloft.net \
    --cc=netdev@vger.kernel.org \
    /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;
as well as URLs for NNTP newsgroup(s).