On Thu, Oct 08, 2020 at 03:55:16PM +0200, Pavel Reichl wrote: > > >> Hi, > >> > >> thanks for the comments, however for some reason I cannot reproduce > >> the same memory corruption you are getting. > > > > <shrug> Do you have full preempt enabled? > > Hi, I'm not proud to admit that until now I tested w/o 'CONFIG_PREEMPT=y' :-/ > However at least now I can see the bug you hit and test that the > proposed change in version #10 fixes that. <shrug> That just means you get to hit all the stall warnings (which are fixable with cond_resched()) that I rarely see because preempt kernels can reschedule at will... :) > > > > > >> Do you think that moving the 'rwsem_release()' right before the > >> 'complete()' should fix the problem? > >> > >> Something like: > >> > >> > >> + /* > >> + * Update lockdep's lock ownership information to point to > >> + * this thread as the thread that scheduled this worker is waiting > >> + * for it's completion. > > > > Nit: "it's" is always a contraction of "it is"; "its" is correct > > (posessive) form here. > > Thanks for noticing. I know the difference...but still I did this > mistake. I must focus more next time. No worries, English is a weird language. "Inflammable means flammable? What a country!" -- Dr. Nick Riviera --D > > > > > Otherwise, this looks fine to me. > > Thanks, version #10 is on list now. > > Bye. >