Em Wed, 16 Mar 2016 09:53:12 -0300 Javier Martinez Canillas <[email protected]> escreveu:
> Hello Mauro, > > On Wed, Mar 16, 2016 at 9:04 AM, Mauro Carvalho Chehab > <[email protected]> wrote: > > Right now, the lock schema for media_device struct is messy, > > since sometimes, it is protected via a spin lock, while, for > > media graph traversal, it is protected by a mutex. > > > > Solve this conflict by always using a mutex. > > > > As a side effect, this prevents a bug where the media notifiers > > were called at atomic context. > > > > Signed-off-by: Mauro Carvalho Chehab <[email protected]> Btw, I'm running a stress test here, doing bind/unbind on au0828, while calling mc_nextgen_test: Running one instance of this loop: $ i=0; while :; do i=$((i+1)); echo "loop $i"; sudo su -c "echo 1-3.1.2:1.0 > /sys/bus/usb/drivers/au0828/bind"; sudo su -c "echo 1-3.1.2:1.0 > /sys/bus/usb/drivers/au0828/unbind"; done and 3 instances of this loop: $ while :; do clear; mc_nextgen_test; done My test machine has 4 CPUs, so this should be enough to check if the mutexes at ioctl and at the register/unregister functions are ok. Right now, the loop ran 160 times. Not a single trouble. Ok, it is not doing any graph traversal ops, but the code seems to be pretty much reliable with mutexes. I'll keep it running for more time to be sure, but it seems that the current media core works fine for dynamic entity/interface/link addition/removal. Regards, Mauro > > --- > > I agree with the patch. > > Reviewed-by: Javier Martinez Canillas <[email protected]> > > Best regards, > Javier > -- > To unsubscribe from this list: send the line "unsubscribe linux-media" in > the body of a message to [email protected] > More majordomo info at http://vger.kernel.org/majordomo-info.html -- Thanks, Mauro -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
