Adam Nielsen wrote: >>> I also noticed one another thing: you don't increase the refcount while >>> xt_led_mutex is held. That means it is theoretically possible that you >>> do a lookup, then a destructor runs and frees the object, leading to >>> ++ledinternal->refcnt dereference an illegal ledinternal. > > Thanks both for your comments and explanations. I've attached an updated > patch, I hope this one addresses these issues. > >> Indeed, I also noticed this. Basically, you need to make sure that >> >> - the lookup and refcnt increase is atomic, >> - the refcnt decrease and list deletion is atomic >> - the lookup and list insertion is atomic (in case no trigger exists) > > I've moved the mutex around so that hopefully all these operations are now atomic. > >> The remaining parts look fine to me, thanks. > > Great, I hope you're happy with this one! Looks good to me, thanks. Jan, any further issues from your side? Otherwise I'll apply it. -- To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html