Hi Alexander,

On 18/10/13(Fri) 12:45, Alexander Bluhm wrote:
> Hi,
> 
> Ethernet drivers connected via USB might sleep when their multicast
> group filter is modified.  Unfortunately this happens from softclock
> or softnet interrupt when IPv6 decides to unconfigure its addresses
> automatically.
> 
> An obvious solution is to use a work queue.  I have put the workq
> storage into struct in6_multi_mship.  That requires to include
> sys/workq.h before compiling this struct.

One problem with a work queue is that you cannot guarantee the interface
will still be here when the task will be scheduled, so passing a pointer
might not be a good idea.

That is why I wanted to change the if_get() API to use unique index for
each interface...

But maybe there's another solution at this problem than using a workq...

Martin

Reply via email to