Hi,
So I guess after all the discussion, you should amend the commit log a
bit, certainly at least to mention the hidden-node issue.
Regarding the patch itself, I'm not super happy with how big it is,
some additional comments below:
> +struct mesh_tx_queue {
> + struct list_head list;
> + struct sk_buff *skb;
> +};
This seems awkward, what's wrong with using an SKB list (struct
sk_buff_head, skb_queue_* etc)?
> + /* Spinlock for trasmitted MPATH frames */
> + spinlock_t mesh_tx_queue_lock;
That would also contain the extra spinlock.
> + struct mesh_tx_queue tx_queue;
This was always a bad idea, since you never need the skb pointer here -
should've just used struct list_head.
> + int tx_queue_len;
Also contained in the skb queue.
> + struct delayed_work tx_work;
I don't really see any value here for a delayed work - a pure timer
would work just as well?
Also, these fields should be in ifmsh, I think?
johannes