Re: in6_leavegroup work queue

2013-11-05 Thread Martin Pieuchot
Alexander, I spent quite some time working on this problem and I found some interesting information, see below. On 31/10/13(Thu) 17:20, Alexander Bluhm wrote: > On Thu, Oct 31, 2013 at 09:56:11AM +0100, Martin Pieuchot wrote: > > On 30/10/13(Wed) 16:48, Alexander Bluhm wrote: > > [...] > > > > I'

Re: in6_leavegroup work queue

2013-10-31 Thread Alexander Bluhm
On Thu, Oct 31, 2013 at 09:56:11AM +0100, Martin Pieuchot wrote: > On 30/10/13(Wed) 16:48, Alexander Bluhm wrote: > > Now I use the if_index to detect that the interface is gone. > > Do you know if the memory pointed by the "imm" pointer you're passing to > your workq can be freed before the task

Re: in6_leavegroup work queue

2013-10-31 Thread Martin Pieuchot
On 30/10/13(Wed) 16:48, Alexander Bluhm wrote: > On Fri, Oct 18, 2013 at 01:00:25PM +0200, Martin Pieuchot wrote: > > On 18/10/13(Fri) 12:45, Alexander Bluhm wrote: > > > > > > Ethernet drivers connected via USB might sleep when their multicast > > > group filter is modified. Unfortunately this h

Re: in6_leavegroup work queue

2013-10-30 Thread Alexander Bluhm
On Fri, Oct 18, 2013 at 01:00:25PM +0200, Martin Pieuchot wrote: > On 18/10/13(Fri) 12:45, Alexander Bluhm wrote: > > > > Ethernet drivers connected via USB might sleep when their multicast > > group filter is modified. Unfortunately this happens from softclock > > or softnet interrupt when IPv6

Re: in6_leavegroup work queue

2013-10-18 Thread Martin Pieuchot
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.

in6_leavegroup work queue

2013-10-18 Thread Alexander Bluhm
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