Messages in this thread | | | Date | Thu, 9 Jul 2015 07:45:40 -0700 | From | Greg Kroah-Hartman <> | Subject | Re: Linux 4.2-rc1 |
| |
On Thu, Jul 09, 2015 at 07:44:04AM -0600, Shuah Khan wrote: > On 07/09/2015 07:10 AM, Shuah Khan wrote: > > On 07/08/2015 09:17 PM, Linus Torvalds wrote: > >> On Wed, Jul 8, 2015 at 5:58 PM, Ming Lei <ming.lei@canonical.com> wrote: > >>> On Thu, Jul 9, 2015 at 1:29 AM, Linus Torvalds > >>> <torvalds@linux-foundation.org> wrote: > >>>> Also, it looks like you need to hold the "fw_lock" to even look at > >>>> that pointer, since the buffer can get reallocated etc. > >>> > >>> Yes, the above code with holding 'fw_lock' is right fix for the issue since > >>> sysfs read can happen anytime, and there is one race between firmware > >>> request abort and reading uevent of sysfs. > >> > >> So if fw_priv->buf is NULL, what should we do? > >> > >> Should we skip the TIMEOUT= and ASYNC= fields too? > >> > >> Something like the attached, perhaps? > >> > >> Shuah, how reproducible is this? Does this (completely untested) patch > >> make any difference? > >> > > > > Happened both times I booted 4.2-rc1 up, so I would say 100% so far. > > I will test with your patch and report results. > > > > Yes. This patch fixed the problem.
That's great, but what changed recently to cause this problem to happen? Any chance you can bisect to the problem commit?
thanks,
greg k-h
| |