Hello David,
On Tue, Jun 11, 2013 at 08:34:58AM +0200, Antonio Quartulli wrote:
[...]
Please pull or let me know if there is any problem!
After having applied this patchset the merge of net into net-next will generate a conflict. Here you have the needed information to properly solve it.
Regards,
conflict in net/batman-adv/bat_iv_ogm.c:
++<<<<<<< HEAD + * batadv_ring_buffer_set - update the ring buffer with the given value + * @lq_recv: pointer to the ring buffer + * @lq_index: index to store the value at + * @value: value to store in the ring buffer + */ +static void batadv_ring_buffer_set(uint8_t lq_recv[], uint8_t *lq_index, + uint8_t value) +{ + lq_recv[*lq_index] = value; + *lq_index = (*lq_index + 1) % BATADV_TQ_GLOBAL_WINDOW_SIZE; +} + +/** + * batadv_ring_buffer_set - compute the average of all non-zero values stored + * in the given ring buffer + * @lq_recv: pointer to the ring buffer + * + * Returns computed average value. + */ +static uint8_t batadv_ring_buffer_avg(const uint8_t lq_recv[]) +{ + const uint8_t *ptr; + uint16_t count = 0, i = 0, sum = 0; + + ptr = lq_recv; + + while (i < BATADV_TQ_GLOBAL_WINDOW_SIZE) { + if (*ptr != 0) { + count++; + sum += *ptr; + } + + i++; + ptr++; + } + + if (count == 0) + return 0; + + return (uint8_t)(sum / count); +} ++======= + * batadv_dup_status - duplicate status + * @BATADV_NO_DUP: the packet is a duplicate + * @BATADV_ORIG_DUP: OGM is a duplicate in the originator (but not for the + * neighbor) + * @BATADV_NEIGH_DUP: OGM is a duplicate for the neighbor + * @BATADV_PROTECTED: originator is currently protected (after reboot) + */ + enum batadv_dup_status { + BATADV_NO_DUP = 0, + BATADV_ORIG_DUP, + BATADV_NEIGH_DUP, + BATADV_PROTECTED, + }; + ++>>>>>>> 7c24bbb... batman-adv: forward late OGMs from best next hop
is solved as follows (add /** at the top of the batadv_dup_status kerneldoc and keep everything):
<<<<<<<<<<<< * batadv_ring_buffer_set - update the ring buffer with the given value * @lq_recv: pointer to the ring buffer * @lq_index: index to store the value at * @value: value to store in the ring buffer */ static void batadv_ring_buffer_set(uint8_t lq_recv[], uint8_t *lq_index, uint8_t value) { lq_recv[*lq_index] = value; *lq_index = (*lq_index + 1) % BATADV_TQ_GLOBAL_WINDOW_SIZE; }
/** * batadv_ring_buffer_set - compute the average of all non-zero values stored * in the given ring buffer * @lq_recv: pointer to the ring buffer * * Returns computed average value. */ static uint8_t batadv_ring_buffer_avg(const uint8_t lq_recv[]) { const uint8_t *ptr; uint16_t count = 0, i = 0, sum = 0;
ptr = lq_recv;
while (i < BATADV_TQ_GLOBAL_WINDOW_SIZE) { if (*ptr != 0) { count++; sum += *ptr; }
i++; ptr++; }
if (count == 0) return 0;
return (uint8_t)(sum / count); }
/** * batadv_dup_status - duplicate status * @BATADV_NO_DUP: the packet is a duplicate * @BATADV_ORIG_DUP: OGM is a duplicate in the originator (but not for the * neighbor) * @BATADV_NEIGH_DUP: OGM is a duplicate for the neighbor * @BATADV_PROTECTED: originator is currently protected (after reboot) */ enum batadv_dup_status { BATADV_NO_DUP = 0, BATADV_ORIG_DUP, BATADV_NEIGH_DUP, BATADV_PROTECTED, };
>>>>>>>>