Lines Matching +full:keep +full:- +full:a +full:- +full:live
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /* Copyright (C) B.A.T.M.A.N. contributors:
12 #define BATADV_DRIVER_DESC "B.A.T.M.A.N. advanced"
13 #define BATADV_DRIVER_DEVICE "batman-adv"
19 /* B.A.T.M.A.N. parameters */
25 #define BATADV_MAX_MTU (ETH_MAX_MTU - batadv_max_header_len())
27 /* Time To Live of broadcast messages */
34 * -> TODO: check influence on BATADV_TQ_LOCAL_WINDOW_SIZE
45 * (should be a multiple of our word size)
48 /* milliseconds we have to keep pending tt_req */
56 /* B.A.T.M.A.N. V */
68 /* Time in which a client can roam at most ROAMING_MAX_COUNT times in
88 #define BATADV_LOG_BUF_LEN 8192 /* has to be a power of 2 */
102 /* BATADV_TQ_SIMILARITY_THRESHOLD - TQ points that a secondary metric can differ
125 * BATADV_TP_MAX_NUM - maximum number of simultaneously active tp sessions
130 * enum batadv_mesh_state - State of a mesh interface
147 * enum batadv_uev_action - action type of uevent
160 * @BATADV_UEV_CHANGE: a different gateway was selected as based gateway
172 * enum batadv_uev_type - Type of uevent
190 /* Time to keep fragments while waiting for rest of the fragments */
200 /* Append 'batman-adv: ' before kernel messages */
220 * batadv_print_vid() - return printable version of vid information
223 * Return: -1 when no VLAN is used, VLAN id otherwise
230 return -1;
253 * batadv_compare_eth() - Compare two not u16 aligned Ethernet addresses
254 * @data1: Pointer to a six-byte array containing the Ethernet address
255 * @data2: Pointer other six-byte array containing the Ethernet address
267 * batadv_has_timed_out() - compares current time (jiffies) and timestamp +
281 * batadv_atomic_dec_not_zero() - Decrease unless the number is 0
284 * Return: non-zero if v was not 0, and zero otherwise.
286 #define batadv_atomic_dec_not_zero(v) atomic_add_unless((v), -1, 0)
289 * batadv_smallest_signed_int() - Returns the smallest signed integer in two's
295 #define batadv_smallest_signed_int(x) (1u << (7u + 8u * (sizeof(x) - 1u)))
298 * batadv_seq_before() - Checks if a sequence number x is a predecessor of y
302 * It handles overflows/underflows and can correctly check for a predecessor
304 * 2**(bitwidth(x)-1)-1.
306 * This means that for a u8 with the maximum value 255, it would think:
308 * * when adding nothing - it is neither a predecessor nor a successor
309 * * before adding more than 127 to the starting value - it is a predecessor,
310 * * when adding 128 - it is neither a predecessor nor a successor,
311 * * after adding more than 127 to the starting value - it is a successor
313 * Return: true when x is a predecessor of y, false otherwise
318 typeof(x)_dummy = (_d1 - _d2); \
324 * batadv_seq_after() - Checks if a sequence number x is a successor of y
328 * It handles overflows/underflows and can correctly check for a successor
330 * 2**(bitwidth(x)-1)-1.
332 * This means that for a u8 with the maximum value 255, it would think:
334 * * when adding nothing - it is neither a predecessor nor a successor
335 * * before adding more than 127 to the starting value - it is a predecessor,
336 * * when adding 128 - it is neither a predecessor nor a successor,
337 * * after adding more than 127 to the starting value - it is a successor
339 * Return: true when x is a successor of y, false otherwise
344 * batadv_add_counter() - Add to per cpu statistics counter of mesh interface
354 this_cpu_add(bat_priv->bat_counters[idx], count);
358 * batadv_inc_counter() - Increase per cpu statistics counter of mesh interface
365 * BATADV_SKB_CB() - Get batadv_skb_cb from skb control buffer
373 #define BATADV_SKB_CB(__skb) ((struct batadv_skb_cb *)&((__skb)->cb[0]))