Larry Finger <Larry.Finger@xxxxxxxxxxxx> writes: > There has been a coding error in rtl8821ae since it was first introduced, > namely that an 8-bit register was read using a 16-bit read in > _rtl8821ae_dbi_read(). This error was fixed with commit 40b368af4b75 > ("rtlwifi: Fix alignment issues"); however, this change led to > instability in the connection. To restore stability, this change > was reverted in commit b8b8b16352cd ("rtlwifi: rtl8821ae: Fix connection > lost problem"). > > Unfortunately, the unaligned access causes machine checks in ARM > architecture, and we were finally forced to find the actual cause of the > problem on x86 platforms. Following a suggestion from Pkshih > <pkshih@xxxxxxxxxxx>, it was found that increasing the ASPM L1 > latency from 0 to 7 fixed the instability. This parameter was varied to > see if a smaller value would work; however, it appears that 7 is the > safest value. A new symbol is defined for this quantity, thus it can be > easily changed if necessary. > > Fixes: b8b8b16352cd ("rtlwifi: rtl8821ae: Fix connection lost problem") > Cc: Stable <stable@xxxxxxxxxxxxxxx> # 4.14+ > Fix-suggested-by: Pkshih <pkshih@xxxxxxxxxxx> > Signed-off-by: Larry Finger <Larry.Finger@xxxxxxxxxxxx> > --- > > Kalle, > > This patch should be submitted to 4.16. Ok, I'll queue this to 4.16. -- Kalle Valo