On Fri 2018-11-30 15:44:55, Numan Demirdöğen wrote: > Sun, 28 Oct 2018 22:06:54 +0300 tarihinde > Numan Demirdöğen <if.gnu.linux@xxxxxxxxx> yazdı: > > >Thu, 25 Oct 2018 09:49:03 +0200 tarihinde > >Pavel Machek <pavel@xxxxxx> yazdı: > > > >> Hi! > >> > >> Here's problem bisected down to: > >> > >> commit 9d659ae14b545c4296e812c70493bfdc999b5c1c > >> Author: Peter Zijlstra <peterz@xxxxxxxxxxxxx> > >> Date: Tue Aug 23 14:40:16 2016 +0200 > >> > >> locking/mutex: Add lock handoff to avoid starvation > >> > >> Implement lock handoff to avoid lock starvation. > >> > >> Numan, I assume revert of that patch on the 4.18 kernel still makes > >> it work? > >> > > > >Unfortunately, I could not revert > >9d659ae14b545c4296e812c70493bfdc999b5c1c on kernels from 4.18.16 to > >4.10-rc1 because there were too much conflicts, which I could not solve > >as an "average Joe". I tried a3ea3d9b865c2a8f7fe455c7fa26db4b6fd066e3 > >which is parent of 9d659ae14b545c4296e812c70493bfdc999b5c1c and > >succeeded to compile kernel. > > > >git checkout a3ea3d9b865c2a8f7fe455c7fa26db4b6fd066e3 > > > >Then, I compiled kernel and rebooted with it. I tried a couples of > >times suspending and resuming, all of the time keyboard worked as > >expected. > > > > With this one line patch from Takashi Iwai, keyboard is working as > expected after resuming from suspend/hibernate. > > --- a/kernel/locking/mutex.c > +++ b/kernel/locking/mutex.c > @@ -59,7 +59,7 @@ EXPORT_SYMBOL(__mutex_init); > * Bit2 indicates handoff has been done and we're waiting for pickup. > */ > #define MUTEX_FLAG_WAITERS 0x01 > -#define MUTEX_FLAG_HANDOFF 0x02 > +#define MUTEX_FLAG_HANDOFF 0x00 > #define MUTEX_FLAG_PICKUP 0x04 > > #define MUTEX_FLAGS 0x07 > > > Thanks in advance and regards, Ok. So it is a regression, and you can ask Linus to apply this .. but... that's kind of heavy solution. Peter, do you have any other ideas? Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
Attachment:
signature.asc
Description: Digital signature