On Mittwoch, 25. Januar 2017 03:18:10 CET jens wrote:
On 24.01.2017 14:39, Sven Eckelmann wrote:
There is no artificial limit added by batman-adv. But transmitting a lot of broadcasts over 255 virtual links sharing the same physical link might get interesting (independent of batman-adv).
this made me curious , and i modified your script a bit - turns out after the 127. IF you add to batman-adv you get an Error - all 510 gretap links was succesfully build ... # ifconfig |grep gre| wc -l 515 # batctl if|sort|wc -l 127 the error is mainly *Error - can't write to file '/sys/class/net/gre128/batman_adv/mesh_iface': Cannot allocate memory
[113990.684947] [<ffffffff8107c16e>] ? __warn+0xbe/0xe0 [113990.684955] [<ffffffffc017a804>] ? batadv_orig_hash_add_if+0x94/0x140 [batman_adv] [113990.684961] [<ffffffff811a7b10>] ? kmalloc_slab+0x90/0xa0 [113990.684966] [<ffffffff811e08c5>] ? __kmalloc+0x25/0x580 [113990.684971] [<ffffffff815ef9d7>] ? _raw_spin_lock_irqsave+0x17/0x39 [113990.684977] [<ffffffff81432c11>] ? _crng_backtrack_protect+0x31/0x70 [113990.684981] [<ffffffff811e0ebc>] ? kmem_cache_alloc_trace+0x9c/0x540 [113990.684986] [<ffffffff814340b7>] ? get_random_bytes+0xe7/0x1c0 [113990.684991] [<ffffffffc017a804>] ?
I would guess that your system mostly fails becauseit cannot handle the allocation of the "large" arrays which store:
* @bcast_own: set of bitfields (one per hard-interface) where each one counts * the number of our OGMs this orig_node rebroadcasted "back" to us (relative * to last_real_seqno). Every bitfield is BATADV_TQ_LOCAL_WINDOW_SIZE bits long. * @bcast_own_sum: sum of bcast_own
Kind regards, Sven