Commit 5e87fdc3 authored by Jakub Kicinski's avatar Jakub Kicinski
Browse files

Merge tag 'batadv-next-pullrequest-20250916' of https://git.open-mesh.org/linux-merge

Simon Wunderlich says:

====================
This cleanup patchset includes the following patches:

 - bump version strings, by Simon Wunderlich

 - Remove network coding support, by Sven Eckelmann (2 patches)

 - remove includes for extern declarations, by Sven Eckelmann

* tag 'batadv-next-pullrequest-20250916' of https://git.open-mesh.org/linux-merge:
  batman-adv: remove includes for extern declarations
  batman-adv: keep skb crc32 helper local in BLA
  batman-adv: remove network coding support
  batman-adv: Start new development cycle
====================

Link: https://patch.msgid.link/20250916122441.89246-1-sw@simonwunderlich.de


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parents 739d911c 629a2b18
Loading
Loading
Loading
Loading
+0 −13
Original line number Diff line number Diff line
@@ -53,19 +53,6 @@ config BATMAN_ADV_DAT
	  mesh networks. If you think that your network does not need
	  this option you can safely remove it and save some space.

config BATMAN_ADV_NC
	bool "Network Coding"
	depends on BATMAN_ADV
	help
	  This option enables network coding, a mechanism that aims to
	  increase the overall network throughput by fusing multiple
	  packets in one transmission.
	  Note that interfaces controlled by batman-adv must be manually
	  configured to have promiscuous mode enabled in order to make
	  network coding work.
	  If you think that your network does not need this feature you
	  can safely disable it and save some space.

config BATMAN_ADV_MCAST
	bool "Multicast optimisation"
	depends on BATMAN_ADV && INET && !(BRIDGE=m && BATMAN_ADV=y)
+0 −1
Original line number Diff line number Diff line
@@ -23,7 +23,6 @@ batman-adv-y += mesh-interface.o
batman-adv-$(CONFIG_BATMAN_ADV_MCAST) += multicast.o
batman-adv-$(CONFIG_BATMAN_ADV_MCAST) += multicast_forw.o
batman-adv-y += netlink.o
batman-adv-$(CONFIG_BATMAN_ADV_NC) += network-coding.o
batman-adv-y += originator.o
batman-adv-y += routing.o
batman-adv-y += send.o
+0 −5
Original line number Diff line number Diff line
@@ -52,7 +52,6 @@
#include "hash.h"
#include "log.h"
#include "netlink.h"
#include "network-coding.h"
#include "originator.h"
#include "routing.h"
#include "send.h"
@@ -1406,10 +1405,6 @@ batadv_iv_ogm_process_per_outif(const struct sk_buff *skb, int ogm_offset,
	if (!orig_neigh_node)
		goto out;

	/* Update nc_nodes of the originator */
	batadv_nc_update_nc_node(bat_priv, orig_node, orig_neigh_node,
				 ogm_packet, is_single_hop_neigh);

	orig_neigh_router = batadv_orig_router_get(orig_neigh_node,
						   if_outgoing);

+34 −0
Original line number Diff line number Diff line
@@ -12,6 +12,7 @@
#include <linux/compiler.h>
#include <linux/container_of.h>
#include <linux/crc16.h>
#include <linux/crc32.h>
#include <linux/err.h>
#include <linux/errno.h>
#include <linux/etherdevice.h>
@@ -1584,6 +1585,39 @@ int batadv_bla_init(struct batadv_priv *bat_priv)
	return 0;
}

/**
 * batadv_skb_crc32() - calculate CRC32 of the whole packet and skip bytes in
 *  the header
 * @skb: skb pointing to fragmented socket buffers
 * @payload_ptr: Pointer to position inside the head buffer of the skb
 *  marking the start of the data to be CRC'ed
 *
 * payload_ptr must always point to an address in the skb head buffer and not to
 * a fragment.
 *
 * Return: big endian crc32c of the checksummed data
 */
static __be32 batadv_skb_crc32(struct sk_buff *skb, u8 *payload_ptr)
{
	unsigned int to = skb->len;
	unsigned int consumed = 0;
	struct skb_seq_state st;
	unsigned int from;
	unsigned int len;
	const u8 *data;
	u32 crc = 0;

	from = (unsigned int)(payload_ptr - skb->data);

	skb_prepare_seq_read(skb, from, to, &st);
	while ((len = skb_seq_read(consumed, &data, &st)) != 0) {
		crc = crc32c(crc, data, len);
		consumed += len;
	}

	return htonl(crc);
}

/**
 * batadv_bla_check_duplist() - Check if a frame is in the broadcast dup.
 * @bat_priv: the bat priv with all the mesh interface information
+1 −0
Original line number Diff line number Diff line
@@ -22,6 +22,7 @@
#include <linux/minmax.h>
#include <linux/mutex.h>
#include <linux/netdevice.h>
#include <linux/notifier.h>
#include <linux/printk.h>
#include <linux/rculist.h>
#include <linux/rtnetlink.h>
Loading