[linux-merge]linux integration; annotated tag, v4.9-rc7, created. v4.9-rc7
by postmaster@open-mesh.org
The annotated tag, v4.9-rc7 has been created
at 512983f23bc1346e6dbaf0b899257332659d9f5d (tag)
tagging e5517c2a5a49ed5e99047008629f1cd60246ea0e (commit)
replaces v4.9-rc6
tagged by Linus Torvalds
on Sun Nov 27 13:08:48 2016 -0800
- Shortlog ------------------------------------------------------------
Linux 4.9-rc7
-----BEGIN PGP SIGNATURE-----
iQEcBAABAgAGBQJYO0tgAAoJEHm+PkMAQRiGw90IAJyB6BFo6wz/DUsIqXfkeiJk
ifXJ70X9x0cRS6OudiIlu3plxf3w4xcMsFQiSuaAFIXOtAsK/5UtXkzoC6KcG4sE
gxZQ5gfSKhrWOEztXezCOfkKJG1n7i7iskULcK/rrbXBzDRHwaku3r9l1lPq3TbC
sM46Alxrq98f3Y764h6tObVKqg0jOBhxT2GduwbcOMW7mGmUC+a3Lk5N5yIm/Sp5
PCch8wCuglUEU0zudyecXHcVk5b81RHWZXokUYu3L369mVK77A196OZNDgXrxOpZ
enjZyP6IzIZkssEtAMfuKpdypYIYitEzKy95DQcXywNPHWv++dd1+kfH2TtZXoc=
=N2SV
-----END PGP SIGNATURE-----
Sven Eckelmann (2):
batman-adv: Revert "fix splat on disabling an interface"
batman-adv: Detect missing primaryif during tp_send as error
-----------------------------------------------------------------------
--
linux integration
6 years, 2 months
[linux-merge]linux integration; annotated tag, batadv-next-for-davem-20161119, deleted. v4.8-14873-g9b4aec6
by postmaster@open-mesh.org
The annotated tag, batadv-next-for-davem-20161119 has been deleted
was 9ba27522f3b2a2c55cdbdda9aceed7f438746505
-----------------------------------------------------------------------
tag batadv-next-for-davem-20161119
This feature patchset includes the following changes:
- 6 patches adding functionality to detect a WiFi interface under
other virtual interfaces, like VLANs. They introduce a cache for
the detected the WiFi configuration to avoid RTNL locking in
critical sections. Patches have been prepared by Marek Lindner
and Sven Eckelmann
- Enable automatic module loading for genl requests, by Sven Eckelmann
- Fix a potential race condition on interface removal. This is not
happening very often in practice, but requires bigger changes to fix,
so we are sending this to net-next. By Linus Luessing
-----BEGIN PGP SIGNATURE-----
iQJKBAABCgA0FiEE1ilQI7G+y+fdhnrfoSvjmEKSnqEFAlgwVFYWHHN3QHNpbW9u
d3VuZGVybGljaC5kZQAKCRChK+OYQpKeoZRaD/9YkdTsT8N629/C2yCrfvt2Zjav
xj9+sGtmIq5xtSLkJaiQilz+ua8dCt99TbuzB8c48xXn9O41kejtv6kPE/YzYWVN
dkLSO7cpJpT20hAAKD54iRv8m+Ed9ozgTPZd+Lu28fjwDc+FAzdmM1gAKx21Wtk6
SLmRWguA/ezN+FWWLv4HYtThWuOCVOpkhx8Zk7wuzT2PQbryXOIqQ5JOgaKqm1PE
iHFhsleaHJ74qnr6UReIZ/g3h27+RPGvhXtAtfo+HEupW4FTZowGr7C6Sm9BCpmU
yMQ1DGckNbg51hz+irJH7nGT+9y6UP/mKNduMOW37JcOF2YKyDvXr+A7C+3Nmv/0
F+AoFrDKp6vRBTgyKYvuL8zMvDn5mwCh/436/jIbqRvrCVGJQUY1IsS1yK+kPldy
b/XamVCKAzxzVTumIDz5UCOAxMqaJmhLbasSoMqLZum4fuEU/CAZblKc/2lz/2h2
o4Jpka3aGwGSIB+vZC0cat1a3RYKesxKuUmEIU7ZTnySOpP8FoiEZuz2qQhhlfNm
fdGnL0YydBO4yOBBmSoSmS64hfvfdwZv9yuXt2NABXJDSD6lfJKNT3MGDlB9phLM
OVzO5tQqP9AWel2iFSXafqtuxdqGvv+eFv7PqLGNRqHEr691AIFw10qugx9g4Bul
dqlpQ7CoVC16LrOaQw==
=Pdlv
-----END PGP SIGNATURE-----
9b4aec647a92a2464337db10507348aecf0f0fd7 batman-adv: fix rare race conditions on interface removal
-----------------------------------------------------------------------
--
linux integration
6 years, 2 months
[linux-merge]linux integration; annotated tag, batadv-net-for-davem-20161119, deleted. v4.8-14609-ge13258f
by postmaster@open-mesh.org
The annotated tag, batadv-net-for-davem-20161119 has been deleted
was e144ec38244212be7e60007224c8eba3acab500e
-----------------------------------------------------------------------
tag batadv-net-for-davem-20161119
Here are two batman-adv bugfix patches:
- Revert a splat on disabling interface which created another problem,
by Sven Eckelmann
- Fix error handling when the primary interface disappears during a
throughput meter test, by Sven Eckelmann
-----BEGIN PGP SIGNATURE-----
iQJKBAABCgA0FiEE1ilQI7G+y+fdhnrfoSvjmEKSnqEFAlgwL/AWHHN3QHNpbW9u
d3VuZGVybGljaC5kZQAKCRChK+OYQpKeoaS5D/9kfo4tKbtdC5t9uQ/GhfE9eNCR
aLpdoeUl73d/IgGXquAGtFphKsYlaORVa3E/1EnAqN+v9E0q0MZ7GtmFQdOhFKu9
SOOuo5U+Qz9lmVv9PQlXEk1mTfdA5EukKdbTyycs6rhTEqjt+Ji1JhhdAVTcGb5o
O2qOXu9312Q7LFFBw828plThkDgATSA0KxvqCVJ9PO5Ewje0Nk1HuUxaSZqRDM6P
e6i/V5Qh8PDnw/9J3QATo6SrHgM4kmhQwvJNHsLf84kQXhPvOxBvRTABEdl1FKZs
rkoKOakkrzG/6udV+UGjQK0dpKUZYIjKyjVIFfRkGCwZixkThE4xVo5uYA84anPh
72wOOeYkBY39XOEECaMCMvV5ECZ9ItphwoW/PkLdQOXIpVO8wHGQNLVkG0cpvOXO
3FwQOTLr1szvHD3+iwuOXUUXbi9ku/3zytL18xOgFY0wYMyIN+wh0Y8RjtnnQ9dS
T/qM3cazPU4joI12SAOahw7MFRVm52wOuuVIynXgjHFjIioOpQq/SYZ8lgBW/cQv
UPu4kApTg976iULmhUjfSCkYrK2/KJqhvV/XOhiLOlQX8ghYJptScGmIsBKUYCId
PZ0If3IHMXtkRoCSmB8lv+HQi/fvjDJpnZVWLyr1RZzdoNo/JtG4Fb0juXaU7Awr
hDUHatWOj4N3KQftnQ==
=DdJj
-----END PGP SIGNATURE-----
e13258f38e927b61cdb5f4ad25309450d3b127d1 batman-adv: Detect missing primaryif during tp_send as error
-----------------------------------------------------------------------
--
linux integration
6 years, 2 months
[linux-merge]linux integration; annotated tag, v4.9-rc6, created. v4.9-rc6
by postmaster@open-mesh.org
The annotated tag, v4.9-rc6 has been created
at edc31677f4f97b582fbc53659337dddb210a22fa (tag)
tagging 9c763584b7c8911106bb77af7e648bef09af9d80 (commit)
replaces v4.9-rc5
tagged by Linus Torvalds
on Sun Nov 20 13:52:31 2016 -0800
- Shortlog ------------------------------------------------------------
Linux 4.9-rc6
-----BEGIN PGP SIGNATURE-----
iQEcBAABAgAGBQJYMhsfAAoJEHm+PkMAQRiGbZMH/AnSgpvWgJQGr/NsovAJsDM9
aJZPNQnjVD+6dBZLudCJOeKoZ8hd0vI/FNPxDrAJxt0L4PCX6Hxnmt+qsLAhodiU
uGOpLK7dwgE5OH3xEKzbEHJBitEZ5nmKBG1oEZNurL9kTFxyL78j7YnlMz/DpjsH
RwDfV4tD5vyVv8vcmHzo6OBWja+78Njo6+OVaMq/fw8+LqS2uq1ajsLWlkUMGo4b
3CDziy6lMLjHy5LlrWkxYvIK2ldB8o+3EDnp/KOwrQ/L9qNaBillUxwDI8qodqHV
NTUjBi51oqG06YwplJa7Qr9SVFD28SlNjVIv/PRgHm6kPfzNUvlp97WnWUn8R/8=
=SoWG
-----END PGP SIGNATURE-----
-----------------------------------------------------------------------
--
linux integration
6 years, 2 months
[linux-merge]linux integration; annotated tag, batadv-next-for-davem-20161119, created. batadv-next-for-davem-20161119
by postmaster@open-mesh.org
The annotated tag, batadv-next-for-davem-20161119 has been created
at 9ba27522f3b2a2c55cdbdda9aceed7f438746505 (tag)
tagging 9b4aec647a92a2464337db10507348aecf0f0fd7 (commit)
replaces v4.8
tagged by Simon Wunderlich
on Sat Nov 19 14:31:20 2016 +0100
- Shortlog ------------------------------------------------------------
This feature patchset includes the following changes:
- 6 patches adding functionality to detect a WiFi interface under
other virtual interfaces, like VLANs. They introduce a cache for
the detected the WiFi configuration to avoid RTNL locking in
critical sections. Patches have been prepared by Marek Lindner
and Sven Eckelmann
- Enable automatic module loading for genl requests, by Sven Eckelmann
- Fix a potential race condition on interface removal. This is not
happening very often in practice, but requires bigger changes to fix,
so we are sending this to net-next. By Linus Luessing
-----BEGIN PGP SIGNATURE-----
iQJKBAABCgA0FiEE1ilQI7G+y+fdhnrfoSvjmEKSnqEFAlgwVFYWHHN3QHNpbW9u
d3VuZGVybGljaC5kZQAKCRChK+OYQpKeoZRaD/9YkdTsT8N629/C2yCrfvt2Zjav
xj9+sGtmIq5xtSLkJaiQilz+ua8dCt99TbuzB8c48xXn9O41kejtv6kPE/YzYWVN
dkLSO7cpJpT20hAAKD54iRv8m+Ed9ozgTPZd+Lu28fjwDc+FAzdmM1gAKx21Wtk6
SLmRWguA/ezN+FWWLv4HYtThWuOCVOpkhx8Zk7wuzT2PQbryXOIqQ5JOgaKqm1PE
iHFhsleaHJ74qnr6UReIZ/g3h27+RPGvhXtAtfo+HEupW4FTZowGr7C6Sm9BCpmU
yMQ1DGckNbg51hz+irJH7nGT+9y6UP/mKNduMOW37JcOF2YKyDvXr+A7C+3Nmv/0
F+AoFrDKp6vRBTgyKYvuL8zMvDn5mwCh/436/jIbqRvrCVGJQUY1IsS1yK+kPldy
b/XamVCKAzxzVTumIDz5UCOAxMqaJmhLbasSoMqLZum4fuEU/CAZblKc/2lz/2h2
o4Jpka3aGwGSIB+vZC0cat1a3RYKesxKuUmEIU7ZTnySOpP8FoiEZuz2qQhhlfNm
fdGnL0YydBO4yOBBmSoSmS64hfvfdwZv9yuXt2NABXJDSD6lfJKNT3MGDlB9phLM
OVzO5tQqP9AWel2iFSXafqtuxdqGvv+eFv7PqLGNRqHEr691AIFw10qugx9g4Bul
dqlpQ7CoVC16LrOaQw==
=Pdlv
-----END PGP SIGNATURE-----
Andrew Lunn (5):
batman-adv: Handle parent interfaces in a different netns
batman-adv: Suppress debugfs entries for netns's
batman-adv: add B.A.T.M.A.N. IV bat_gw_dump implementations
batman-adv: add B.A.T.M.A.N. Dump BLA claims via netlink
batman-adv: Indicate netlink socket can be used with netns.
Antonio Quartulli (5):
batman-adv: make the GW selection class algorithm specific
batman-adv: make GW election code protocol specific
batman-adv: B.A.T.M.A.N. V - implement GW selection logic
batman-adv: disable sysfs knobs when GW-mode is not implemented
batman-adv: remove unsed argument from batadv_dbg_arp() function
David S. Miller (2):
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Merge tag 'batadv-next-for-davem-20161027' of git://git.open-mesh.org/linux-merge
Jarod Wilson (1):
net: use core MTU range checking in misc drivers
Johannes Berg (3):
genetlink: no longer support using static family IDs
genetlink: statically initialize families
genetlink: mark families as __ro_after_init
Linus Lüssing (11):
batman-adv: Remove unused primary_if and bat_priv variables
batman-adv: Introduce forward packet creation helper
batman-adv: Use bitwise instead of arithmetic operator for flags
batman-adv: fix batadv_forw_packet kerneldoc for list attribute
batman-adv: Allow selecting BATMAN V if CFG80211 is not built
batman-adv: Add wrapper for ARP reply creation
batman-adv: Remove unnecessary lockdep in batadv_mcast_mla_list_free
batman-adv: Remove unused skb_reset_mac_header()
batman-adv: Use own timer for multicast TT and TVLV updates
batman-adv: Simple (re)broadcast avoidance
batman-adv: fix rare race conditions on interface removal
Marek Lindner (3):
batman-adv: refactor wifi interface detection
batman-adv: additional checks for virtual interfaces on top of WiFi
batman-adv: retrieve B.A.T.M.A.N. V WiFi neighbor stats from real interface
Markus Elfring (1):
batman-adv: Less function calls in batadv_is_ap_isolated() after error detection
Markus Pargmann (1):
batman-adv: iv_ogm, Reduce code duplication
Masahiro Yamada (1):
treewide: remove redundant #include <linux/kconfig.h>
Matthias Schiffer (6):
batman-adv: netlink: add routing_algo query
batman-adv: netlink: hardif query
batman-adv: netlink: add translation table query
batman-adv: netlink: add originator and neighbor table queries
batman-adv: add B.A.T.M.A.N. IV bat_{orig, neigh}_dump implementations
batman-adv: add B.A.T.M.A.N. V bat_{orig, neigh}_dump implementations
Simon Wunderlich (3):
batman-adv: Start new development cycle
batman-adv: add backbone table netlink support
batman-adv: Start new development cycle
Sven Eckelmann (57):
batman-adv: Document optional batadv_algo_ops
batman-adv: Define module rtnl link name
batman-adv: Modify mesh_iface outside sysfs context
batman-adv: Revert "postpone sysfs removal when unregistering"
batman-adv: Avoid sysfs name collision for netns moves
batman-adv: use kmem_cache for translation table
batman-adv: Remove orig_node reference handling from send_skb_unicast
batman-adv: Fix consistency of update route messages
batman-adv: Provide TTVN in the mesh_info netlink msg
batman-adv: netlink: add gateway table queries
batman-adv: add B.A.T.M.A.N. V bat_gw_dump implementations
batman-adv: Provide bla group in the mesh_info netlink msg
batman-adv: Place kref_get for orig_node_vlan near use
batman-adv: Place kref_get for orig_ifinfo near use
batman-adv: Place kref_get for tt_orig_list_entry near use
batman-adv: Place kref_get for neigh_ifinfo near use
batman-adv: Place kref_get for neigh_node near use
batman-adv: Place kref_get for orig_node near use
batman-adv: Place kref_get for tt_local_entry near use
batman-adv: Place kref_get for tt_common near use
batman-adv: Place kref_get for bla_claim near use
batman-adv: Place kref_get for bla_backbone_gw near use
batman-adv: Place kref_get for dat_entry near use
batman-adv: Place kref_get for gw_node near use
batman-adv: Place kref_get for hard_iface near use
batman-adv: Place kref_get for softif_vlan near use
batman-adv: Place kref_get for nc_node near use
batman-adv: Place kref_get for nc_path near use
batman-adv: Place kref_get for tvlv_container near use
batman-adv: Place kref_get for tvlv_handler near use
batman-adv: Keep batadv netdev when hardif disappears
batman-adv: Allow to disable debugfs support
batman-adv: Remove unused function batadv_hash_delete
batman-adv: Move batadv_sum_counter to soft-interface.c
batman-adv: Remove unused batadv_icmp_user_cmd_type
batman-adv: Remove needless init of variables on stack
batman-adv: Use proper name for fragments list head
batman-adv: Use proper name for gateway list head
batman-adv: Use octal permissions instead of macros
batman-adv: Avoid precedence issues in macros
batman-adv: Revert "use core MTU range checking in misc drivers"
batman-adv: Introduce missing headers for genetlink restructure
batman-adv: Mark batadv_netlink_ops as const
batman-adv: Close two alignment holes in batadv_hard_iface
batman-adv: use consume_skb for non-dropped packets
batman-adv: Count all non-success TX packets as dropped
batman-adv: Consume skb in batadv_frag_send_packet
batman-adv: Consume skb in batadv_send_skb_to_orig
batman-adv: Consume skb in receive handlers
batman-adv: Remove dev_queue_xmit return code exception
batman-adv: Disallow mcast src address for data frames
batman-adv: Disallow zero and mcast src address for mgmt frames
batman-adv: Reject unicast packet with zero/mcast dst address
batman-adv: Return non-const ptr in batadv_getlink_net
batman-adv: Cache the type of wifi device for each hardif
batman-adv: Update wifi flags on upper link change
batman-adv: Add module alias for batadv netlink family
kbuild test robot (1):
batman-adv: fix boolreturn.cocci warnings
stephen hemminger (1):
batman: make netlink attributes const
-----------------------------------------------------------------------
--
linux integration
6 years, 2 months
[linux-merge]linux integration; annotated tag, batadv-net-for-davem-20161119, created. batadv-net-for-davem-20161119
by postmaster@open-mesh.org
The annotated tag, batadv-net-for-davem-20161119 has been created
at e144ec38244212be7e60007224c8eba3acab500e (tag)
tagging e13258f38e927b61cdb5f4ad25309450d3b127d1 (commit)
replaces v4.8
tagged by Simon Wunderlich
on Sat Nov 19 11:56:30 2016 +0100
- Shortlog ------------------------------------------------------------
Here are two batman-adv bugfix patches:
- Revert a splat on disabling interface which created another problem,
by Sven Eckelmann
- Fix error handling when the primary interface disappears during a
throughput meter test, by Sven Eckelmann
-----BEGIN PGP SIGNATURE-----
iQJKBAABCgA0FiEE1ilQI7G+y+fdhnrfoSvjmEKSnqEFAlgwL/AWHHN3QHNpbW9u
d3VuZGVybGljaC5kZQAKCRChK+OYQpKeoaS5D/9kfo4tKbtdC5t9uQ/GhfE9eNCR
aLpdoeUl73d/IgGXquAGtFphKsYlaORVa3E/1EnAqN+v9E0q0MZ7GtmFQdOhFKu9
SOOuo5U+Qz9lmVv9PQlXEk1mTfdA5EukKdbTyycs6rhTEqjt+Ji1JhhdAVTcGb5o
O2qOXu9312Q7LFFBw828plThkDgATSA0KxvqCVJ9PO5Ewje0Nk1HuUxaSZqRDM6P
e6i/V5Qh8PDnw/9J3QATo6SrHgM4kmhQwvJNHsLf84kQXhPvOxBvRTABEdl1FKZs
rkoKOakkrzG/6udV+UGjQK0dpKUZYIjKyjVIFfRkGCwZixkThE4xVo5uYA84anPh
72wOOeYkBY39XOEECaMCMvV5ECZ9ItphwoW/PkLdQOXIpVO8wHGQNLVkG0cpvOXO
3FwQOTLr1szvHD3+iwuOXUUXbi9ku/3zytL18xOgFY0wYMyIN+wh0Y8RjtnnQ9dS
T/qM3cazPU4joI12SAOahw7MFRVm52wOuuVIynXgjHFjIioOpQq/SYZ8lgBW/cQv
UPu4kApTg976iULmhUjfSCkYrK2/KJqhvV/XOhiLOlQX8ghYJptScGmIsBKUYCId
PZ0If3IHMXtkRoCSmB8lv+HQi/fvjDJpnZVWLyr1RZzdoNo/JtG4Fb0juXaU7Awr
hDUHatWOj4N3KQftnQ==
=DdJj
-----END PGP SIGNATURE-----
Andrew Lunn (5):
batman-adv: Handle parent interfaces in a different netns
batman-adv: Suppress debugfs entries for netns's
batman-adv: add B.A.T.M.A.N. IV bat_gw_dump implementations
batman-adv: add B.A.T.M.A.N. Dump BLA claims via netlink
batman-adv: Indicate netlink socket can be used with netns.
Antonio Quartulli (4):
batman-adv: make the GW selection class algorithm specific
batman-adv: make GW election code protocol specific
batman-adv: B.A.T.M.A.N. V - implement GW selection logic
batman-adv: disable sysfs knobs when GW-mode is not implemented
David S. Miller (1):
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Linus Lüssing (4):
batman-adv: Remove unused primary_if and bat_priv variables
batman-adv: Introduce forward packet creation helper
batman-adv: Use bitwise instead of arithmetic operator for flags
batman-adv: fix splat on disabling an interface
Markus Pargmann (1):
batman-adv: iv_ogm, Reduce code duplication
Masahiro Yamada (1):
treewide: remove redundant #include <linux/kconfig.h>
Matthias Schiffer (6):
batman-adv: netlink: add routing_algo query
batman-adv: netlink: hardif query
batman-adv: netlink: add translation table query
batman-adv: netlink: add originator and neighbor table queries
batman-adv: add B.A.T.M.A.N. IV bat_{orig, neigh}_dump implementations
batman-adv: add B.A.T.M.A.N. V bat_{orig, neigh}_dump implementations
Simon Wunderlich (2):
batman-adv: Start new development cycle
batman-adv: add backbone table netlink support
Sven Eckelmann (36):
batman-adv: Document optional batadv_algo_ops
batman-adv: Define module rtnl link name
batman-adv: Modify mesh_iface outside sysfs context
batman-adv: Revert "postpone sysfs removal when unregistering"
batman-adv: Avoid sysfs name collision for netns moves
batman-adv: use kmem_cache for translation table
batman-adv: Remove orig_node reference handling from send_skb_unicast
batman-adv: Fix consistency of update route messages
batman-adv: Provide TTVN in the mesh_info netlink msg
batman-adv: netlink: add gateway table queries
batman-adv: add B.A.T.M.A.N. V bat_gw_dump implementations
batman-adv: Provide bla group in the mesh_info netlink msg
batman-adv: Place kref_get for orig_node_vlan near use
batman-adv: Place kref_get for orig_ifinfo near use
batman-adv: Place kref_get for tt_orig_list_entry near use
batman-adv: Place kref_get for neigh_ifinfo near use
batman-adv: Place kref_get for neigh_node near use
batman-adv: Place kref_get for orig_node near use
batman-adv: Place kref_get for tt_local_entry near use
batman-adv: Place kref_get for tt_common near use
batman-adv: Place kref_get for bla_claim near use
batman-adv: Place kref_get for bla_backbone_gw near use
batman-adv: Place kref_get for dat_entry near use
batman-adv: Place kref_get for gw_node near use
batman-adv: Place kref_get for hard_iface near use
batman-adv: Place kref_get for softif_vlan near use
batman-adv: Place kref_get for nc_node near use
batman-adv: Place kref_get for nc_path near use
batman-adv: Place kref_get for tvlv_container near use
batman-adv: Place kref_get for tvlv_handler near use
batman-adv: Keep batadv netdev when hardif disappears
batman-adv: Allow to disable debugfs support
batman-adv: Modify neigh_list only with rcu-list functions
batman-adv: Add BATADV_DBG_TP_METER to BATADV_DBG_ALL
batman-adv: Revert "fix splat on disabling an interface"
batman-adv: Detect missing primaryif during tp_send as error
kbuild test robot (1):
batman-adv: fix boolreturn.cocci warnings
stephen hemminger (1):
batman: make netlink attributes const
-----------------------------------------------------------------------
--
linux integration
6 years, 2 months
[alfred] master: alfred: Allow TXEND to start new transaction (12a478c)
by postmaster@open-mesh.org
Repository : ssh://git@open-mesh.org/alfred
On branch : master
>---------------------------------------------------------------
commit 12a478c09c4c6811e5a056ab80996dde024c956a
Author: Sven Eckelmann <sven(a)narfation.org>
Date: Sat Nov 12 10:25:24 2016 +0100
alfred: Allow TXEND to start new transaction
A TXEND which comes before all other PUSH_DATA packets also has to create
its own transaction. Otherwise it cannot store the number of expected
packets for this transaction.
The PUSH_DATA packets can then trigger the finish of the transaction. Or
the transaction will timeout automatically.
Signed-off-by: Sven Eckelmann <sven(a)narfation.org>
Signed-off-by: Simon Wunderlich <sw(a)simonwunderlich.de>
>---------------------------------------------------------------
12a478c09c4c6811e5a056ab80996dde024c956a
recv.c | 19 +++++++++++++++++--
1 file changed, 17 insertions(+), 2 deletions(-)
diff --git a/recv.c b/recv.c
index 9fabfa4..bd208fd 100644
--- a/recv.c
+++ b/recv.c
@@ -359,13 +359,28 @@ static int process_alfred_status_txend(struct globals *globals,
search.id = ntohs(request->tx.id);
head = hash_find(globals->transaction_hash, &search);
- if (!head)
- return -1;
+ if (!head) {
+ /* slave must create the transactions to be able to correctly
+ * wait for it */
+ if (globals->opmode != OPMODE_MASTER)
+ goto err;
+
+ /* 0-packet txend for unknown transaction */
+ if (ntohs(request->tx.seqno) == 0)
+ goto err;
+
+ head = transaction_add(globals, mac, ntohs(request->tx.id));
+ if (!head)
+ goto err;
+ }
+ clock_gettime(CLOCK_MONOTONIC, &head->last_rx_time);
head->txend_packets = ntohs(request->tx.seqno);
finish_alfred_transaction(globals, head, mac);
return 0;
+err:
+ return -1;
}
int recv_alfred_packet(struct globals *globals, struct interface *interface,
6 years, 2 months
[alfred] master: alfred: Don't force cleanup of transaction on TXEND (8167c3c)
by postmaster@open-mesh.org
Repository : ssh://git@open-mesh.org/alfred
On branch : master
>---------------------------------------------------------------
commit 8167c3cc7acbb67f999bb6aadc22a06ded710fa7
Author: Sven Eckelmann <sven(a)narfation.org>
Date: Sat Nov 12 10:25:21 2016 +0100
alfred: Don't force cleanup of transaction on TXEND
A committed transaction has always to be cleaned up/removed when the TXEND
was received. But TXEND packets which are out-of-order may still be waiting
for PUSH_DATA packets which will be receive later. Thus TXEND packets which
don't trigger a commit of the PUSH_DATA should not automatically drop the
transaction.
A transaction which doesn't get all PUSH_DATA packets will be timeout
automatically and no extra handling is necessary.
Signed-off-by: Sven Eckelmann <sven(a)narfation.org>
Signed-off-by: Simon Wunderlich <sw(a)simonwunderlich.de>
>---------------------------------------------------------------
8167c3cc7acbb67f999bb6aadc22a06ded710fa7
alfred.h | 2 +-
recv.c | 13 +++++--------
2 files changed, 6 insertions(+), 9 deletions(-)
diff --git a/alfred.h b/alfred.h
index 7e7811b..9d0f6a6 100644
--- a/alfred.h
+++ b/alfred.h
@@ -71,7 +71,7 @@ struct transaction_head {
struct ether_addr server_addr;
uint16_t id;
uint8_t requested_type;
- int finished;
+ uint16_t finished;
int num_packet;
int client_socket;
struct timespec last_rx_time;
diff --git a/recv.c b/recv.c
index 21ea539..dd0b021 100644
--- a/recv.c
+++ b/recv.c
@@ -167,17 +167,14 @@ static int finish_alfred_transaction(struct globals *globals,
{
struct transaction_packet *transaction_packet, *safe;
- /* missing packets -> cleanup everything */
- if (head->num_packet == num_packets)
- head->finished = -1;
- else
- head->finished = 1;
+ /* finish when all packets received */
+ if (head->num_packet != num_packets)
+ return 0;
+ head->finished = 1;
list_for_each_entry_safe(transaction_packet, safe, &head->packet_list,
list) {
- if (head->finished == 1)
- finish_alfred_push_data(globals, mac,
- transaction_packet->push);
+ finish_alfred_push_data(globals, mac, transaction_packet->push);
list_del(&transaction_packet->list);
free(transaction_packet->push);
6 years, 2 months
[alfred] master: alfred: Use expected packet count to finished transactions (7bdbe49)
by postmaster@open-mesh.org
Repository : ssh://git@open-mesh.org/alfred
On branch : master
>---------------------------------------------------------------
commit 7bdbe49f371d612a206832d39927048053fd021e
Author: Sven Eckelmann <sven(a)narfation.org>
Date: Sat Nov 12 10:25:22 2016 +0100
alfred: Use expected packet count to finished transactions
The TXEND packet will specify the number of PUSH_DATA packets are required
to finish a transaction. This number has therefore to be stored when a
TXEND packet is receiver to later be able to decide whether the
transaction can be finished or not.
Signed-off-by: Sven Eckelmann <sven(a)narfation.org>
Signed-off-by: Simon Wunderlich <sw(a)simonwunderlich.de>
>---------------------------------------------------------------
7bdbe49f371d612a206832d39927048053fd021e
alfred.h | 8 +++++++-
recv.c | 11 +++++------
unix_sock.c | 2 +-
3 files changed, 13 insertions(+), 8 deletions(-)
diff --git a/alfred.h b/alfred.h
index 9d0f6a6..eb8200c 100644
--- a/alfred.h
+++ b/alfred.h
@@ -71,7 +71,7 @@ struct transaction_head {
struct ether_addr server_addr;
uint16_t id;
uint8_t requested_type;
- uint16_t finished;
+ uint16_t txend_packets;
int num_packet;
int client_socket;
struct timespec last_rx_time;
@@ -161,6 +161,12 @@ struct transaction_head *
transaction_add(struct globals *globals, struct ether_addr mac, uint16_t id);
struct transaction_head *transaction_clean(struct globals *globals,
struct transaction_head *head);
+
+static inline bool transaction_finished(struct transaction_head *head)
+{
+ return head->txend_packets == head->num_packet;
+}
+
/* send.c */
int push_data(struct globals *globals, struct interface *interface,
struct in6_addr *destination, enum data_source max_source_level,
diff --git a/recv.c b/recv.c
index dd0b021..1f56016 100644
--- a/recv.c
+++ b/recv.c
@@ -131,7 +131,7 @@ transaction_add(struct globals *globals, struct ether_addr mac, uint16_t id)
head->server_addr = mac;
head->id = id;
head->requested_type = 0;
- head->finished = 0;
+ head->txend_packets = 0;
head->num_packet = 0;
head->client_socket = -1;
clock_gettime(CLOCK_MONOTONIC, &head->last_rx_time);
@@ -162,16 +162,14 @@ struct transaction_head *transaction_clean(struct globals *globals,
static int finish_alfred_transaction(struct globals *globals,
struct transaction_head *head,
- struct ether_addr mac,
- uint16_t num_packets)
+ struct ether_addr mac)
{
struct transaction_packet *transaction_packet, *safe;
/* finish when all packets received */
- if (head->num_packet != num_packets)
+ if (!transaction_finished(head))
return 0;
- head->finished = 1;
list_for_each_entry_safe(transaction_packet, safe, &head->packet_list,
list) {
finish_alfred_push_data(globals, mac, transaction_packet->push);
@@ -362,7 +360,8 @@ static int process_alfred_status_txend(struct globals *globals,
if (!head)
return -1;
- finish_alfred_transaction(globals, head, mac, ntohs(request->tx.seqno));
+ head->txend_packets = ntohs(request->tx.seqno);
+ finish_alfred_transaction(globals, head, mac);
return 0;
}
diff --git a/unix_sock.c b/unix_sock.c
index 150ad32..edc7e0b 100644
--- a/unix_sock.c
+++ b/unix_sock.c
@@ -276,7 +276,7 @@ int unix_sock_req_data_finish(struct globals *globals,
requested_type = head->requested_type;
id = head->id;
client_sock = head->client_socket;
- if (head->finished != 1)
+ if (!transaction_finished(head))
send_data = 0;
free(head);
6 years, 2 months
[alfred] master: alfred: Allow PUSH_DATA to finish transactions (4ee7d22)
by postmaster@open-mesh.org
Repository : ssh://git@open-mesh.org/alfred
On branch : master
>---------------------------------------------------------------
commit 4ee7d22c01478e291cb9a7bc4fea85db51ec3f9c
Author: Sven Eckelmann <sven(a)narfation.org>
Date: Sat Nov 12 10:25:23 2016 +0100
alfred: Allow PUSH_DATA to finish transactions
A TXEND packet which is received in the middle of a transaction cannot
finish this transaction. This can only be done by a PUSH_DATA when the rest
of the packets were received.
Signed-off-by: Sven Eckelmann <sven(a)narfation.org>
Signed-off-by: Simon Wunderlich <sw(a)simonwunderlich.de>
>---------------------------------------------------------------
4ee7d22c01478e291cb9a7bc4fea85db51ec3f9c
recv.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/recv.c b/recv.c
index 1f56016..9fabfa4 100644
--- a/recv.c
+++ b/recv.c
@@ -250,6 +250,8 @@ static int process_alfred_push_data(struct globals *globals,
list_add_tail(&transaction_packet->list, &head->packet_list);
head->num_packet++;
+ finish_alfred_transaction(globals, head, mac);
+
return 0;
err:
return -1;
6 years, 2 months